將SimCLR應用於NLP預訓練模型,提升句子語義表徵效果

©PaperWeekly 原創 · 作者|張琨

學校|中國科學技術大學博士生

研究方向|自然語言處理

論文標題:

CLEAR: Contrastive Learning for Sentence Representation

論文作者:

Zhuofeng Wu / Sinong Wang / Jiatao Gu / Madian Khabsa / Fei Sun / Hao Ma

論文鏈接:

https://arxiv.org/abs/2012.15466

動機

近兩年,對比學習(Contrastive Learning)由於能夠通過數據之間的關係,以無監督的形式充分學習數據的表徵受到了大家的廣泛關注,特別是 MoCo ,SimCLR 的方法的提出。而對比學習的一個關鍵思想就是如何構建對比的數據對,更細緻的,如何構建正樣本和負樣本,更好的正樣本和負樣本能夠幫助模型更好的理解數據。

因此,可以發現對比學習在 CV 領域首先有了效果,針對對比學習,圖像可以通過旋轉,裁剪,變換顏色等方法在不改變便籤的情況下進行數據增強。但在 NLP 領域就出現困難了,文本數據如何進行增強,單純的刪除或者修改詞及詞序都會引起語義的變化。

因此,作者認爲將對比學習引入到句子語義表徵中是很有必要的,現有的預訓練模型都是通過詞級別的目標進行預訓練的,而且單純使用 [cls] 作爲最終句子的語義表徵不夠充分。我們需要爲本文中的對比學習設計更好的數據增強方法,用於提升句子語義的理解和表徵。

方法

針對 BERT 等方法只關注於詞級別的目標進行預訓練,作者提出了句子級別的對比學習目標,同時爲了更好的表徵句子的語義,作者將對比學習引入到模型訓練中,並提出了四種數據增強的方法。具體技術部分如下:

2.1 對比學習框架

首先是整個工作提出的對比學習框架圖:

這個模型圖和 SimCLR 非常的相似,作者也是借鑑了 SimCLR 的思路設計了這個結構,首先輸入句子經過數據增強之後,分別送給一個 Transformer encoder,然後得到的輸出經過一個映射函數 g 映射到同一個表示空間,最後就是一個對比學習的損失約束整個模型進行訓練。具體細節可以參見 SimCLR 這篇文章。

2.2 數據增強方法

那麼這篇文章的重點就在如何對輸入句子進行數據增強,首先,本文使用了四種數據增強的方式,如下圖:

  1. Word deletion:即隨機刪除句子中的某些詞,並將這些詞使用 [DEL] 進行替換

  2. Span deletion:從 span-level 進行選擇和刪除,並使用 [DEL] 進行替換,可以認爲這種方法是 Word deletion 的一個特例

  3. Reordering:隨機從句子中採樣出幾對詞,然後替換他們彼此的位置(已在 BART 中證實有效)

  4. Substitution:隨機從句子中選擇一些詞,然後將其替換爲這些詞的同義詞(使用了一個同義詞詞典)

直觀上理解,方法 1 和方法 2 可能會改變原有句子的意思,作者認爲,隨機刪除一部分句子內容不會對句子的原始語義造成太大的影響。當然,在一些情況下,可能會改變句子的原始語義(例如把 not 刪掉了),但這部分可以認爲是適當的噪聲,這有助於提升模型的魯棒性。

具體在應用中,作者針對每個 minibatch,隨機選擇兩種數據增強的方法。經過數據增強之後,兩個來自同一個句子的增強句子就認爲是正樣本,其他所有來自同一個 minibatch 的增強樣本就認爲是這兩個正樣本的負樣本,這樣針對正樣本的損失函數就可以構建爲:

整個對比方法的損失函數就可以認爲是所有正樣本對的損失函數之和:

通過這種方法,就能夠幫助模型識別相似語義的句子,與此同時,作者還保留了原來的 Mask Language Model(MLM)的損失函數,將兩個損失函數結合,就得到了整個方法的損失函數。

實驗

首先,作者測試了不同的數據增強方法在 GLUE 和 SentEval 上的效果,如下圖:

同時作者還進行了一些消融實驗進一步驗證模型的效果:

總結

本文非常巧妙地將應用在 CV 上的 SimCLR 框架直接應用到了 NLP 中的預訓練模型中,具體作者考慮四種不同的數據增強方法。對現階段的 NLP 領域的對比學習是一個很不錯的參考。

而且作者認爲一定程度上對本文的修改不會對語義產生太大的影響,即使改變了語義,那這部分產生的噪聲對模型的魯棒性也有幫助。如果作者針對這部分進行一些實驗驗證或展示的話就更好了。

更多閱讀

#投 稿 通 道#

 讓你的論文被更多人看到 

如何才能讓更多的優質內容以更短路徑到達讀者羣體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。

總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成爲一座橋樑,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。 

PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得技術乾貨。我們的目的只有一個,讓知識真正流動起來。

???? 來稿標準:

• 稿件確係個人原創作品,來稿需註明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向) 

• 如果文章並非首發,請在投稿時提醒並附上所有已發佈鏈接 

• PaperWeekly 默認每篇文章都是首發,均會添加“原創”標誌

???? 投稿郵箱:

• 投稿郵箱:[email protected] 

• 所有文章配圖,請單獨在附件中發送 

• 請留下即時聯繫方式(微信或手機),以便我們在編輯發佈時和作者溝通

????

現在,在「知乎」也能找到我們了

進入知乎首頁搜索「PaperWeekly」

點擊「關注」訂閱我們的專欄吧

關於PaperWeekly

PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公衆號後臺點擊「交流羣」,小助手將把你帶入 PaperWeekly 的交流羣裏。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章