1. 程式人生 > 其它 >論文解讀-ACL-2021-ConSERT: A Contrastive Framework for Self-Supervised Sentence Representation Transfer

論文解讀-ACL-2021-ConSERT: A Contrastive Framework for Self-Supervised Sentence Representation Transfer

本篇論文美團已經給出了很詳細的解讀

  • 本文的想法思路也是一樣即對比學習,主要創新點就是試了一些資料增強如對抗攻擊、打亂詞序、裁剪、dropout等等。通過一個數據增強模組,作用於Embedding層,為同一個句子生成兩個不同的增強版本,作為正樣本,一個batch內的其他樣本作為負樣本

  • 首先,作者對Bert的“坍縮”現象進行了說明,即BERT對所有的句子都傾向於編碼到一個較小的空間區域內,這使得大多數的句子對都具有較高的相似度分數,即使是那些語義上完全無關的句子對。作者認為這種現象是由於句子中的高頻詞的影響

    ,即當通過平均詞向量的方式計算句向量時,那些高頻詞的詞向量將會主導句向量,使之難以體現其原本的語義。當計算句向量時去除若干高頻詞時,坍縮現象可以在一定程度上得到緩解。

  • 並對一些資料增強方法進行了比較得出:Token Shuffle > Token Cutoff >> Feature Cutoff ≈ Dropout >> None還對怎麼組合這些資料增強進行了實驗得到:Token Shuffle和Feature Cutoff的組合取得了最優效能。各部分具體如下:

    • 對抗攻擊(Adversarial Attack):這一方法通過梯度反傳生成對抗擾動,將該擾動加到原本的Embedding矩陣上,就能得到增強後的樣本。由於生成對抗擾動需要梯度反傳,因此這一資料增強方法僅適用於有監督訓練的場景。
    • 打亂詞序(Token Shuffling):這一方法擾亂輸入樣本的詞序。由於Transformer結構沒有“位置”的概念,模型對Token位置的感知全靠Embedding中的Position Ids得到。因此在實現上,我們只需要將Position Ids進行Shuffle即可。
    • 裁剪(Cutoff):又可以進一步分為兩種:Token Cutoff:隨機選取Token,將對應Token的Embedding整行置為零。Feature Cutoff:隨機選取Embedding的Feature,將選取的Feature維度整列置為零。
    • Dropout:Embedding中的每一個元素都以一定概率置為零,與Cutoff不同的是,該方法並沒有按行或者按列的約束。
      這四種方法均可以方便地通過對Embedding矩陣(或是BERT的Position Encoding)進行修改得到,因此相比顯式生成增強文字的方法更為高效。

本文來自部落格園,作者:xingye_z,轉載請註明原文連結:https://www.cnblogs.com/xyzhrrr/p/15669357.html