0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

結(jié)合句子間差異的無(wú)監(jiān)督句子嵌入對(duì)比學(xué)習(xí)方法-DiffCSE

深度學(xué)習(xí)自然語(yǔ)言處理 ? 來(lái)源:NLP工作站 ? 作者:劉聰NLP ? 2022-05-05 11:35 ? 次閱讀

寫在前面

今天分享給大家一篇NAACL2022論文,結(jié)合句子間差異的無(wú)監(jiān)督句子嵌入對(duì)比學(xué)習(xí)方法-DiffCSE,全名《DiffCSE: Difference-based Contrastive Learning for Sentence Embeddings》。該篇論文主要是在SimCSE上進(jìn)行優(yōu)化,通過(guò)ELECTRA模型的生成偽造樣本和RTD(Replaced Token Detection)任務(wù),來(lái)學(xué)習(xí)原始句子與偽造句子之間的差異,以提高句向量表征模型的效果。

paper:https://arxiv.org/pdf/2204.10298.pdf
github:https://github.com/voidism/DiffCSE

介紹

句向量表征技術(shù)目前已經(jīng)通過(guò)對(duì)比學(xué)習(xí)獲取了很好的效果。而對(duì)比學(xué)習(xí)的宗旨就是拉近相似數(shù)據(jù),推開(kāi)不相似數(shù)據(jù),有效地學(xué)習(xí)數(shù)據(jù)表征。SimCSE方法采用dropout技術(shù),對(duì)原始文本進(jìn)行數(shù)據(jù)增強(qiáng),構(gòu)造出正樣本,進(jìn)行后續(xù)對(duì)比學(xué)習(xí)訓(xùn)練,取得了較好的效果;并且在其實(shí)驗(yàn)中表明”dropout masks機(jī)制來(lái)構(gòu)建正樣本,比基于同義詞或掩碼語(yǔ)言模型的刪除或替換等更復(fù)雜的增強(qiáng)效果要好得多?!啊_@一現(xiàn)象也說(shuō)明,「直接增強(qiáng)(刪除或替換)往往改變句子本身語(yǔ)義」。

paper:https://aclanthology.org/2021.emnlp-main.552.pdf
github:https://github.com/princeton-nlp/SimCSE
論文解讀:https://zhuanlan.zhihu.com/p/452761704

Dangovski等人發(fā)現(xiàn),在圖像上,采用不變對(duì)比學(xué)習(xí)和可變對(duì)比學(xué)習(xí)相互結(jié)合的方法可以提高圖像表征的效果。而采用不敏感的圖像轉(zhuǎn)換(如,灰度變換)進(jìn)行數(shù)據(jù)增強(qiáng)再對(duì)比損失來(lái)改善視覺(jué)表征學(xué)習(xí),稱為「不變對(duì)比學(xué)習(xí)」。而「可變對(duì)比學(xué)習(xí)」,則是采用敏感的圖像轉(zhuǎn)換(如,旋轉(zhuǎn)變換)進(jìn)行數(shù)據(jù)增強(qiáng)的對(duì)比學(xué)習(xí)。如下圖所示,做左側(cè)為不變對(duì)比學(xué)習(xí),右側(cè)為可變對(duì)比學(xué)習(xí)。對(duì)于NLP來(lái)說(shuō),「dropout方法」進(jìn)行數(shù)據(jù)增強(qiáng)為不敏感變化,采用「詞語(yǔ)刪除或替換等」方法進(jìn)行數(shù)據(jù)增強(qiáng)為敏感變化。

0a73af38-cbbd-11ec-bce3-dac502259ad0.png

paper:https://arxiv.org/pdf/2111.00899.pdf

作者借鑒Dangovski等人在圖像上的做法,提出來(lái)「DiffCSE方法」,通過(guò)使用基于dropout masks機(jī)制的增強(qiáng)作為不敏感轉(zhuǎn)換學(xué)習(xí)對(duì)比學(xué)習(xí)損失和基于MLM語(yǔ)言模型進(jìn)行詞語(yǔ)替換的方法作為敏感轉(zhuǎn)換學(xué)習(xí)「原始句子與編輯句子」之間的差異,共同優(yōu)化句向量表征。

模型

模型如下圖所示,

0a944d06-cbbd-11ec-bce3-dac502259ad0.png

左側(cè)為一個(gè)標(biāo)準(zhǔn)的SimCSE模型,右側(cè)為一個(gè)帶條件的句子差異預(yù)測(cè)模型。給定一個(gè)句子,SimCSE模型通過(guò)dropout機(jī)制構(gòu)造一個(gè)正例,使用BERT編碼器f,獲取句向量,SimCSE模型的訓(xùn)練目標(biāo)為:

其中,為訓(xùn)練輸入batch大小,為余弦相似度,為溫度參數(shù).

右側(cè)實(shí)際上是ELECTRA模型,包含生成器和判別器。給定一個(gè)長(zhǎng)度為T的句子,,生成一個(gè)隨機(jī)掩碼序列,其中。使用MLM預(yù)訓(xùn)練語(yǔ)言模型作為生成器G,通過(guò)掩碼序列來(lái)生成句子中被掩掉的token,獲取生成序列。然后使用判別器D進(jìn)行替換token檢測(cè),也就是預(yù)測(cè)哪些token是被替換的。其訓(xùn)練目標(biāo)為:

針對(duì)一個(gè)batch的訓(xùn)練目標(biāo)為。

最終將兩個(gè)loss通過(guò)動(dòng)態(tài)權(quán)重將其結(jié)合,

為了使判別器D的損失可以傳播的編碼器f中,將句向量拼接到判別器D的輸入中,輔助進(jìn)行RTD任務(wù),這樣做可以鼓勵(lì)編碼器f使信息量足夠大,從而使判別器D能夠區(qū)分和之間的微小差別。

當(dāng)訓(xùn)練DiffCSE模型時(shí),固定生成器G參數(shù),只有句子編碼器f和鑒別器D得到優(yōu)化。訓(xùn)練結(jié)束后,丟棄鑒別器D,只使用句子編碼器f提取句子嵌入對(duì)下游任務(wù)進(jìn)行評(píng)價(jià)。

結(jié)果&分析

在句子相似度任務(wù)以及分類任務(wù)上的效果,如下表1和表2所示,相比與SimCSE模型均有提高,

0aa24fdc-cbbd-11ec-bce3-dac502259ad0.png

0ac4e8e4-cbbd-11ec-bce3-dac502259ad0.png

為了驗(yàn)證DiffCSE模型具體是哪個(gè)部分有效,進(jìn)行以下消融實(shí)驗(yàn)。

Removing Contrastive Loss

如表3所示,當(dāng)去除對(duì)比學(xué)習(xí)損失,僅采用RTD損失時(shí),在句子相似度任務(wù)上,下降30%,在分類任務(wù)上下降2%。

0af3bdd6-cbbd-11ec-bce3-dac502259ad0.png

Next Sentence vs. Same Sentence

如表3所示,當(dāng)將同句話預(yù)測(cè)任務(wù),變成預(yù)測(cè)下句話任務(wù)時(shí),在句子相似度任務(wù)和分類任務(wù)上,具有不同程度的下降。

Other Conditional Pretraining Tasks

DiffCSE模型采用MLM模型和LM模型分別作為生成器時(shí),效果如表3所示,在句子相似度任務(wù)和分類任務(wù)上,具有不同程度的下降。句子相似度任務(wù)上下降的較為明顯。

Augmentation Methods: Insert/Delete/Replace

將MLM模型生成偽造句換成隨機(jī)插入、隨機(jī)刪除或隨機(jī)替換的效果,如表示所4,MLM模型的效果綜合來(lái)說(shuō)較為優(yōu)秀。

0b2021e6-cbbd-11ec-bce3-dac502259ad0.png

Pooler Choice

在SimCSE模型中,采用pooler層(一個(gè)帶有tanh激活函數(shù)的全連接層)作為句子向量輸出。該論文實(shí)驗(yàn)發(fā)現(xiàn),采用帶有BN的兩層pooler效果更為突出,如表5所示;并發(fā)現(xiàn),BN在SimCSE模型上依然有效。

0b423128-cbbd-11ec-bce3-dac502259ad0.png

代碼如下:

classProjectionMLP(nn.Module):
def__init__(self,config):
super().__init__()
in_dim=config.hidden_size
hidden_dim=config.hidden_size*2
out_dim=config.hidden_size
affine=False
list_layers=[nn.Linear(in_dim,hidden_dim,bias=False),
nn.BatchNorm1d(hidden_dim),
nn.ReLU(inplace=True)]
list_layers+=[nn.Linear(hidden_dim,out_dim,bias=False),
nn.BatchNorm1d(out_dim,affine=affine)]
self.net=nn.Sequential(*list_layers)

defforward(self,x):
returnself.net(x)

Size of the Generator

在DiffCSE模型中,嘗試了不同大小的生成器G,如下表所示,DistilBERTbase模型效果最優(yōu)。并且發(fā)現(xiàn)與原始ELECTRA模型的結(jié)論不太一致。原始ELECTRA認(rèn)為生成器的大小在判別器的1/4到1/2之間效果是最好的,過(guò)強(qiáng)的生成器會(huì)增大判別器的難度。而DiffCSE模型由于融入了句向量,導(dǎo)致判別器更容易判別出token是否被替換,所以生成器的生成能力需要適當(dāng)提高。

0b4ebb78-cbbd-11ec-bce3-dac502259ad0.png

Masking Ratio

對(duì)于掩碼概率,經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),在掩碼概率為30%時(shí),模型效果最優(yōu)。

0b5df624-cbbd-11ec-bce3-dac502259ad0.png

Coefficient λ

針對(duì)兩個(gè)損失之間的權(quán)重值,經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),對(duì)比學(xué)習(xí)損失為RTD損失200倍時(shí),模型效果最優(yōu)。

0b710796-cbbd-11ec-bce3-dac502259ad0.png

總結(jié)

個(gè)人覺(jué)得這篇論文的主要思路還是通過(guò)加入其他任務(wù),來(lái)增強(qiáng)句向量表征任務(wù),整體來(lái)說(shuō)挺好的。但是該方法如何使用到監(jiān)督學(xué)習(xí)數(shù)據(jù)上,值得思考,歡迎留言討論。

審核編輯 :李倩
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    6762

    瀏覽量

    88631
  • 生成器
    +關(guān)注

    關(guān)注

    7

    文章

    313

    瀏覽量

    20924
  • 向量
    +關(guān)注

    關(guān)注

    0

    文章

    55

    瀏覽量

    11645

原文標(biāo)題:DiffCSE:結(jié)合句子間差異的無(wú)監(jiān)督句子嵌入對(duì)比學(xué)習(xí)方法

文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    嵌入學(xué)習(xí)建議

    對(duì)廣大渴望學(xué)習(xí)嵌入式系統(tǒng)的學(xué)子提出幾點(diǎn)基礎(chǔ)階段的學(xué)習(xí)建議: ①嵌入式系統(tǒng)軟件硬件密切相關(guān),一定要打好軟硬件基礎(chǔ)。其實(shí),只要找到正確的方法,
    發(fā)表于 10-22 11:41

    【《大語(yǔ)言模型應(yīng)用指南》閱讀體驗(yàn)】+ 基礎(chǔ)知識(shí)學(xué)習(xí)

    收集海量的文本數(shù)據(jù)作為訓(xùn)練材料。這些數(shù)據(jù)集不僅包括語(yǔ)法結(jié)構(gòu)的學(xué)習(xí),還包括對(duì)語(yǔ)言的深層次理解,如文化背景、語(yǔ)境含義和情感色彩等。 自監(jiān)督學(xué)習(xí):模型采用自監(jiān)督學(xué)習(xí)策略,在大量無(wú)標(biāo)簽文本數(shù)據(jù)
    發(fā)表于 08-02 11:03

    【《大語(yǔ)言模型應(yīng)用指南》閱讀體驗(yàn)】+ 基礎(chǔ)篇

    講解,包括偏置、權(quán)重、激活函數(shù);三要素包括網(wǎng)絡(luò)結(jié)構(gòu)、損失函數(shù)和優(yōu)化方法。章節(jié)最后總結(jié)了神經(jīng)網(wǎng)絡(luò)參數(shù)學(xué)習(xí)的關(guān)鍵步驟。 1.4章節(jié)描述了自然語(yǔ)言處理的相關(guān)知識(shí)點(diǎn),包括什么是自然語(yǔ)言處理、文本的向量化和自監(jiān)督學(xué)習(xí)方法
    發(fā)表于 07-25 14:33

    神經(jīng)網(wǎng)絡(luò)如何用無(wú)監(jiān)督算法訓(xùn)練

    神經(jīng)網(wǎng)絡(luò)作為深度學(xué)習(xí)的重要組成部分,其訓(xùn)練方式多樣,其中無(wú)監(jiān)督學(xué)習(xí)是一種重要的訓(xùn)練策略。無(wú)監(jiān)督學(xué)習(xí)旨在從未標(biāo)記的數(shù)據(jù)中發(fā)現(xiàn)數(shù)據(jù)內(nèi)在的結(jié)構(gòu)、模
    的頭像 發(fā)表于 07-09 18:06 ?642次閱讀

    深度學(xué)習(xí)中的無(wú)監(jiān)督學(xué)習(xí)方法綜述

    應(yīng)用中往往難以實(shí)現(xiàn)。因此,無(wú)監(jiān)督學(xué)習(xí)在深度學(xué)習(xí)中扮演著越來(lái)越重要的角色。本文旨在綜述深度學(xué)習(xí)中的無(wú)監(jiān)督學(xué)
    的頭像 發(fā)表于 07-09 10:50 ?291次閱讀

    深度學(xué)習(xí)與傳統(tǒng)機(jī)器學(xué)習(xí)對(duì)比

    在人工智能的浪潮中,機(jī)器學(xué)習(xí)和深度學(xué)習(xí)無(wú)疑是兩大核心驅(qū)動(dòng)力。它們各自以其獨(dú)特的方式推動(dòng)著技術(shù)的進(jìn)步,為眾多領(lǐng)域帶來(lái)了革命性的變化。然而,盡管它們都屬于機(jī)器學(xué)習(xí)的范疇,但深度學(xué)習(xí)和傳統(tǒng)機(jī)
    的頭像 發(fā)表于 07-01 11:40 ?968次閱讀

    谷歌提出大規(guī)模ICL方法

    谷歌DeepMind團(tuán)隊(duì)近日取得了一項(xiàng)突破性的研究成果。他們提出了強(qiáng)化和無(wú)監(jiān)督兩種新型的ICL(In-Context Learning)學(xué)習(xí)方法,這一創(chuàng)新技術(shù)能夠在多個(gè)領(lǐng)域顯著提升模型的性能。
    的頭像 發(fā)表于 05-14 14:17 ?296次閱讀

    QNX與Linux基礎(chǔ)差異對(duì)比

    對(duì)于QNX系統(tǒng)和Linux系統(tǒng)的內(nèi)核差異,我們拋開(kāi)宏內(nèi)核、微內(nèi)核之類的爭(zhēng)議不談。單純從開(kāi)發(fā)應(yīng)用的角度而言,QNX和Linux系統(tǒng)的差異到底有多大,在開(kāi)發(fā)的時(shí)候需要注意哪些細(xì)節(jié)問(wèn)題?
    發(fā)表于 04-17 10:52 ?608次閱讀

    OpenAI推出Sora:AI領(lǐng)域的革命性突破

    大模型的核心技術(shù)是自然語(yǔ)言處理(NLP)和深度學(xué)習(xí)。具體而言,它基于Transformer架構(gòu),使用了大規(guī)模無(wú)監(jiān)督學(xué)習(xí)方法,例如自回歸語(yǔ)言建模和掩碼語(yǔ)言建模,來(lái)訓(xùn)練一個(gè)龐大的神經(jīng)網(wǎng)絡(luò)模型。
    發(fā)表于 02-21 16:36 ?967次閱讀
    OpenAI推出Sora:AI領(lǐng)域的革命性突破

    Meta發(fā)布新型無(wú)監(jiān)督視頻預(yù)測(cè)模型“V-JEPA”

    Meta,這家社交媒體和科技巨頭,近日宣布推出一種新型的無(wú)監(jiān)督視頻預(yù)測(cè)模型,名為“V-JEPA”。這一模型在視頻處理領(lǐng)域引起了廣泛關(guān)注,因?yàn)樗ㄟ^(guò)抽象性預(yù)測(cè)生成視頻中缺失或模糊的部分來(lái)進(jìn)行學(xué)習(xí),提供了一種全新的視頻處理
    的頭像 發(fā)表于 02-19 11:19 ?867次閱讀

    請(qǐng)問(wèn)初學(xué)者要怎么快速掌握FPGA的學(xué)習(xí)方法?

    對(duì)于初學(xué)者 FPGA的編程語(yǔ)言是什么? FPGA芯片的基礎(chǔ)結(jié)構(gòu)也不了解. FPGA開(kāi)發(fā)工具的名稱和使用方法都不知道. 要學(xué)的很多啊,請(qǐng)問(wèn)有什么自學(xué)的學(xué)習(xí)方法么?
    發(fā)表于 01-02 23:01

    基于transformer和自監(jiān)督學(xué)習(xí)的路面異常檢測(cè)方法分享

    鋪設(shè)異常檢測(cè)可以幫助減少數(shù)據(jù)存儲(chǔ)、傳輸、標(biāo)記和處理的壓力。本論文描述了一種基于Transformer和自監(jiān)督學(xué)習(xí)的新方法,有助于定位異常區(qū)域。
    的頭像 發(fā)表于 12-06 14:57 ?1348次閱讀
    基于transformer和自<b class='flag-5'>監(jiān)督學(xué)習(xí)</b>的路面異常檢測(cè)<b class='flag-5'>方法</b>分享

    無(wú)監(jiān)督域自適應(yīng)場(chǎng)景:基于檢索增強(qiáng)的情境學(xué)習(xí)實(shí)現(xiàn)知識(shí)遷移

    本文對(duì)比了多種基線方法,包括無(wú)監(jiān)督域自適應(yīng)的傳統(tǒng)方法(如Pseudo-labeling和對(duì)抗訓(xùn)練)、基于檢索的LM
    發(fā)表于 12-05 14:14 ?502次閱讀
    <b class='flag-5'>無(wú)</b><b class='flag-5'>監(jiān)督</b>域自適應(yīng)場(chǎng)景:基于檢索增強(qiáng)的情境<b class='flag-5'>學(xué)習(xí)</b>實(shí)現(xiàn)知識(shí)遷移

    一種利用幾何信息的自監(jiān)督單目深度估計(jì)框架

    本文方法是一種自監(jiān)督的單目深度估計(jì)框架,名為GasMono,專門設(shè)計(jì)用于室內(nèi)場(chǎng)景。本方法通過(guò)應(yīng)用多視圖幾何的方式解決了室內(nèi)場(chǎng)景中幀大旋轉(zhuǎn)和低紋理導(dǎo)致自
    發(fā)表于 11-06 11:47 ?361次閱讀
    一種利用幾何信息的自<b class='flag-5'>監(jiān)督</b>單目深度估計(jì)框架

    電動(dòng)車鋰電池保養(yǎng)方法 對(duì)比鉛酸電池有什么差異?

    電動(dòng)車鋰電池保養(yǎng)方法 對(duì)比鉛酸電池有什么差異? 電動(dòng)車鋰電池保養(yǎng)方法與鉛酸電池有很多差異。在本文中,我們將詳細(xì)探討這些
    的頭像 發(fā)表于 11-06 11:19 ?1027次閱讀