胡玉雪,吳明民,沙 灜,曾 智,張瑜琦
(1. 華中農(nóng)業(yè)大學(xué) 信息學(xué)院,湖北 武漢 430070;2. 農(nóng)業(yè)農(nóng)村部智慧養(yǎng)殖技術(shù)重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430070;3. 湖北省農(nóng)業(yè)大數(shù)據(jù)工程技術(shù)研究中心,湖北 武漢 430070;4. 農(nóng)業(yè)智能技術(shù)教育部工程研究中心,湖北 武漢 430070)
委婉語(yǔ)(Euphemism)是指通過溫和、含蓄的措辭來表達(dá)不直接、不得體的信息,是語(yǔ)言交際中的一種重要形式[1]。在內(nèi)容審核[2-3]和暗網(wǎng)交易市場(chǎng)[4-6]等領(lǐng)域中,委婉語(yǔ)被廣泛應(yīng)用以掩蓋不良信息的真實(shí)含義,如歧視、仇恨、非法交易等。這些委婉語(yǔ)看似普通,實(shí)則晦澀難懂,使得地下交易過程難以追蹤。因此,委婉語(yǔ)識(shí)別,即識(shí)別出委婉語(yǔ)具體指代的目標(biāo)詞對(duì)幫助內(nèi)容審核、打擊地下交易具有重大意義。
目前,針對(duì)委婉語(yǔ)識(shí)別的研究較少,Zhu等人[2]對(duì)訓(xùn)練集語(yǔ)句構(gòu)建詞典,使用詞袋模型提取句子級(jí)特征,最后通過多項(xiàng)邏輯回歸來識(shí)別委婉語(yǔ);Yuan等人[3]將委婉語(yǔ)識(shí)別到一個(gè)泛類別,而不是具體的目標(biāo)詞。例如,他們將“horse”識(shí)別為“drug”(毒品類)而不是直接識(shí)別為“heroin”(海洛因)。Sha等人[7]基于字詞和部首聯(lián)合訓(xùn)練詞向量,根據(jù)語(yǔ)義相似度對(duì)候選目標(biāo)詞進(jìn)行排序以實(shí)現(xiàn)委婉語(yǔ)的識(shí)別。You等人[8]融合全局范圍內(nèi)的新詞發(fā)現(xiàn)詞片段信息,根據(jù)跨文檔語(yǔ)料相似性度量對(duì)目標(biāo)詞進(jìn)行排序以獲得委婉語(yǔ)指代的具體目標(biāo)詞。
目前委婉語(yǔ)識(shí)別面臨的主要挑戰(zhàn)在于: ①缺乏委婉語(yǔ)與其目標(biāo)詞之間有準(zhǔn)確映射關(guān)系的數(shù)據(jù)集; ②委婉語(yǔ)既可用作表面含義,也可表示潛在含義,且委婉語(yǔ)潛在含義和表面含義相差甚遠(yuǎn),例如,“weed”表面含義是雜草,但在用作毒品類委婉語(yǔ)時(shí),表示“Marijuana”(大麻)。而當(dāng)前的方法主要使用詞袋模型,普遍采用靜態(tài)詞嵌入方法[9-10],這樣丟失了委婉語(yǔ)在不同上下文中的語(yǔ)境信息。
針對(duì)上述問題,本文提出了一種雙層自監(jiān)督學(xué)習(xí)方法(DSLM)。為了解決缺乏有效標(biāo)注數(shù)據(jù)集的問題,DSLM在委婉語(yǔ)語(yǔ)料庫(kù)上預(yù)訓(xùn)練委婉語(yǔ)BERT[11]模型,基于此模型構(gòu)建一個(gè)自監(jiān)督學(xué)習(xí)框架,將掩碼掉目標(biāo)詞的句子作為樣本、掩碼掉的目標(biāo)詞作為標(biāo)簽,這樣自動(dòng)構(gòu)建了一個(gè)帶標(biāo)簽數(shù)據(jù)集;為了解決委婉語(yǔ)表面含義和潛在含義不一致的問題,DSLM使用語(yǔ)境對(duì)比學(xué)習(xí)方法,采用兩階段對(duì)比學(xué)習(xí),首先疏遠(yuǎn)委婉語(yǔ)上下文和委婉語(yǔ)表面含義的語(yǔ)義距離,然后拉近委婉語(yǔ)上下文和目標(biāo)詞的語(yǔ)義距離,以加強(qiáng)委婉語(yǔ)上下文到目標(biāo)詞的映射關(guān)系。在三個(gè)委婉語(yǔ)數(shù)據(jù)集[2](Drug、Weapon、Sexuality)上進(jìn)行了實(shí)驗(yàn)驗(yàn)證,本文方法得到的結(jié)果比當(dāng)前最先進(jìn)的方法高24%~35%,且我們的模型更穩(wěn)定、收斂更快。本文的主要貢獻(xiàn)如下:
(1) 提出了基于BERT的雙層自監(jiān)督學(xué)習(xí)框架,自動(dòng)構(gòu)建帶標(biāo)注的訓(xùn)練數(shù)據(jù)集,以解決缺乏有效標(biāo)注數(shù)據(jù)集的問題。
(2) 提出了語(yǔ)境對(duì)比學(xué)習(xí)方法,該方法使用兩階段對(duì)比學(xué)習(xí),可以加強(qiáng)委婉語(yǔ)上下文到目標(biāo)詞的映射關(guān)系,有效緩解委婉語(yǔ)表面含義和潛在含義不一致的問題。
(3) 實(shí)驗(yàn)證明了我們模型的有效性,本文提出的DSLM方法在三個(gè)數(shù)據(jù)集上的性能都優(yōu)于當(dāng)前最佳方法。且隨機(jī)多批次測(cè)試結(jié)果表明,DSLM模型置信度高、收斂更快。
本文所涉及的主題主要包括委婉語(yǔ)識(shí)別、自監(jiān)督學(xué)習(xí)、對(duì)比學(xué)習(xí)。本節(jié)將分別介紹這三個(gè)方面的相關(guān)研究進(jìn)展。
在自然語(yǔ)言處理領(lǐng)域中,委婉語(yǔ)識(shí)別是一項(xiàng)具有重要應(yīng)用價(jià)值的任務(wù),它在社交媒體、內(nèi)容審核、情感分析等領(lǐng)域得到廣泛應(yīng)用。目前,現(xiàn)有的委婉語(yǔ)識(shí)別方法較少,其中最為相關(guān)的是Zhu等人[2]的工作。他們首次提出了委婉語(yǔ)識(shí)別任務(wù),開發(fā)了一種自監(jiān)督學(xué)習(xí)的算法,利用詞袋模型在句子層面分析委婉語(yǔ)的上下文以對(duì)應(yīng)目標(biāo)詞。Yuan等人[3]的工作主要是識(shí)別委婉語(yǔ)的上位詞,而不是直接識(shí)別出委婉語(yǔ)的具體含義。他們生成一組上位詞(如“毒品”是“海洛因”的上位詞),使用二元隨機(jī)森林分類器和遞歸查找方法,將給定的委婉語(yǔ)分類到特定上位詞。他們的方法將“horse”識(shí)別為一種毒品,而不是直接解釋為海洛因。這些方法使用靜態(tài)詞嵌入、詞袋模型,難以區(qū)分同一詞的不同含義,無法捕捉委婉語(yǔ)的潛在含義。
從委婉語(yǔ)的社交用途來看,變體詞是委婉語(yǔ)的一種形式,委婉語(yǔ)識(shí)別任務(wù)與變體詞解析相關(guān)[7-8]。Sha等人[7]提出基于字詞和部首聯(lián)合訓(xùn)練的詞向量的方法,根據(jù)語(yǔ)義相似度對(duì)候選目標(biāo)詞進(jìn)行排序,以獲得委婉語(yǔ)的目標(biāo)詞。You等人[8]提出了聯(lián)合詞片段信息的BiLSTM-CRF模型來實(shí)現(xiàn)委婉語(yǔ)的發(fā)現(xiàn),再使用CRF對(duì)文檔中的委婉語(yǔ)進(jìn)行標(biāo)注,最后根據(jù)跨文檔語(yǔ)料相似性度量對(duì)目標(biāo)實(shí)體進(jìn)行排序。這些方法主要針對(duì)中文特有屬性,其中的委婉語(yǔ)多數(shù)基于娛樂等目的,具有一定的時(shí)間性、事件性。
自監(jiān)督學(xué)習(xí)是一種機(jī)器學(xué)習(xí)方法,它利用無標(biāo)簽數(shù)據(jù)進(jìn)行訓(xùn)練,通過生成偽標(biāo)簽或注釋來學(xué)習(xí)模型[12]。例如,要訓(xùn)練一個(gè)文本預(yù)測(cè)模型,可以取一個(gè)文本語(yǔ)料庫(kù),掩碼句子的一部分,然后訓(xùn)練模型預(yù)測(cè)被掩碼的部分,這樣可以從未標(biāo)注的數(shù)據(jù)創(chuàng)建監(jiān)督學(xué)習(xí)任務(wù)。自監(jiān)督學(xué)習(xí)主要分為兩類: 生成模型和對(duì)比模型[13]。典型的模型有GPT[14]、BERT[11]、VQ-VAE[15]、MoCo[16]等。
自監(jiān)督學(xué)習(xí)方法在標(biāo)簽數(shù)據(jù)稀缺或獲取成本高昂的情況下非常有用。在自然語(yǔ)言處理(Nature Language Processing,NLP)領(lǐng)域,自監(jiān)督學(xué)習(xí)被廣泛應(yīng)用于上游語(yǔ)言模型,如預(yù)測(cè)中心詞和相鄰詞[9-10]、自回歸語(yǔ)言建模[14]、掩碼語(yǔ)言模型和下一句預(yù)測(cè)[11]、句子重排和文檔旋轉(zhuǎn)[17]等。進(jìn)而應(yīng)用于機(jī)器翻譯[18]、問答系統(tǒng)[19]、情感分析[20]等下游任務(wù)。
對(duì)比學(xué)習(xí)是一種有效的自監(jiān)督學(xué)習(xí)方法,通過比較不同樣本之間的相似性和差異性,學(xué)習(xí)到樣本的內(nèi)在特征,并將其應(yīng)用于下游任務(wù)。對(duì)比學(xué)習(xí)最早在計(jì)算機(jī)視覺領(lǐng)域被引入[21],主要使用孿生神經(jīng)網(wǎng)絡(luò)[22]進(jìn)行訓(xùn)練,旨在拉近同類圖像的特征之間的距離、推遠(yuǎn)不同類圖像之間的特征之間的距離,以獲得更好的特征提取模型,典型的模型有SimCLR[23]、MoCo[16]等。近年來,對(duì)比學(xué)習(xí)在NLP領(lǐng)域也受到了廣泛關(guān)注,如SimCSE[24]、SimCTC[25]等。
近年的研究表明,對(duì)比學(xué)習(xí)在NLP任務(wù)中具有廣泛的通用性和潛力。例如,Xie等人[26]提出了一種基于全局和局部特征對(duì)比學(xué)習(xí)的文本分類方法;Nguyen等人[27]提出了一種主題建模的對(duì)比學(xué)習(xí)方法;Zhou等人[28]提出了一種零樣本跨語(yǔ)言遷移的跨語(yǔ)言對(duì)比學(xué)習(xí)方法,在沒有任何并行數(shù)據(jù)的情況下將知識(shí)從源語(yǔ)言遷移到目標(biāo)語(yǔ)言。從文本分類到主題建模再到跨語(yǔ)言遷移,對(duì)比學(xué)習(xí)是一種具有發(fā)展?jié)摿Φ姆椒?可以學(xué)習(xí)文本的魯棒表示,并將其推廣到新的自然語(yǔ)言處理任務(wù)。
本文研究的問題是: 已知含有委婉語(yǔ)的句子s=[w1,…,euph,…,wi,…,wm](其中已知euph是委婉語(yǔ)),目標(biāo)詞集T={t1,…,tg,…,tj,…,tn}。我們的目標(biāo)是確定委婉語(yǔ)euph實(shí)際指代的目標(biāo)詞tg。以表1為例,我們希望能確定“pot”指的是目標(biāo)詞集中的“marijuana”。
表1 部分委婉語(yǔ)句子和目標(biāo)詞示例
本文提出了一種雙層自監(jiān)督學(xué)習(xí)方法(DSLM),架構(gòu)如圖1所示。DSLM主要由外層自監(jiān)督學(xué)習(xí)框架和內(nèi)層自監(jiān)督學(xué)習(xí)模塊組成。
訓(xùn)練時(shí),外層自監(jiān)督學(xué)習(xí)框架,基于BERT預(yù)訓(xùn)練模型,提取了所有含有目標(biāo)詞的句子,對(duì)目標(biāo)詞進(jìn)行掩碼,將掩碼后的句子作為訓(xùn)練樣本,對(duì)應(yīng)的目標(biāo)詞作為標(biāo)簽,這樣,自動(dòng)構(gòu)造了一個(gè)帶標(biāo)簽數(shù)據(jù)集。內(nèi)層自監(jiān)督學(xué)習(xí)模塊,用于學(xué)習(xí)掩碼掉目標(biāo)詞處的上下文語(yǔ)義表示,最大化其與目標(biāo)詞語(yǔ)義表示的一致性。測(cè)試時(shí),輸入掩碼掉委婉語(yǔ)的句子,經(jīng)過外層和內(nèi)層自監(jiān)督學(xué)習(xí)微調(diào)好的模型,預(yù)測(cè)掩碼掉委婉語(yǔ)處對(duì)應(yīng)的目標(biāo)詞。
訓(xùn)練過程中,DSLM模型一共分為三個(gè)階段: 預(yù)處理、語(yǔ)境對(duì)比學(xué)習(xí)、分類預(yù)測(cè)。首先,在委婉語(yǔ)語(yǔ)料[2]上進(jìn)行增量預(yù)訓(xùn)練,得到一個(gè)委婉語(yǔ)BERT模型(記為“Euph_BERT”),分別提取掩碼掉委婉語(yǔ)和目標(biāo)詞處的上下文語(yǔ)義。其次,采用語(yǔ)境對(duì)比學(xué)習(xí)模塊疏遠(yuǎn)委婉語(yǔ)上下文和委婉語(yǔ)表面含義的語(yǔ)義距離,拉近目標(biāo)詞上下文和目標(biāo)詞的語(yǔ)義距離。最后,將多個(gè)表示組合起來,通過分類模塊預(yù)測(cè)掩碼掉目標(biāo)詞處對(duì)應(yīng)的目標(biāo)詞。
為了充分利用委婉語(yǔ)上下文信息,DSLM在委婉語(yǔ)語(yǔ)料庫(kù)上繼續(xù)預(yù)訓(xùn)練得到委婉語(yǔ)BERT模型(Euph_BERT),然后基于此模型對(duì)數(shù)據(jù)集進(jìn)行處理。
首先,將掩碼掉委婉語(yǔ)的句子s(s∈S,S是掩碼掉委婉語(yǔ)的句子集)轉(zhuǎn)化為BERT模型的輸入序列seqe={[CLS],toke1,…,tokei,[MASK],…, tokep,[SEP]}。同樣地,將掩碼掉目標(biāo)詞的句子s′(s′∈S′,S′是掩碼掉目標(biāo)詞的句子集)轉(zhuǎn)化為BERT模型的輸入,得到seqt={[CLS],tokt1,…,toktj,[MASK],…,toktq,[SEP]}。tokei和toktj分別是seqe的第i個(gè)詞條、seqt的第j個(gè)詞條。[MASK]是掩碼掉委婉語(yǔ)或目標(biāo)詞處的標(biāo)記,特殊標(biāo)記[CLS]和[SEP]是用作引導(dǎo)和結(jié)束輸入通道序列的邊界標(biāo)記。經(jīng)過BERT Encoder層編碼,分別取seqe和seqt掩碼處的最后一層隱藏向量hme和hmt作為掩碼委婉語(yǔ)處上下文表示和掩碼目標(biāo)詞處上下文表示,如式(1)、式(2)所示,其中,me和mt分別是序列seqe和seqt中[MASK]處的索引值。
然后,將委婉語(yǔ)集Euph={euph1,euph2,…,euphm}和目標(biāo)詞集T={t1,t2,…,tn}分別轉(zhuǎn)換為BERT模型的輸入,經(jīng)過Euph_BERT嵌入層[式(3)、式(4)],分別得到委婉語(yǔ)表面含義表示heuphi和目標(biāo)詞表示htj(在絕大多數(shù)上下文情況下,委婉語(yǔ)體現(xiàn)的都是其表面含義,所以可以將heuphi用作委婉語(yǔ)表面含義表示)。
針對(duì)委婉語(yǔ)表面含義和潛在含義不一致的問題。DSLM使用語(yǔ)境對(duì)比學(xué)習(xí)模塊,該模塊包含兩階段對(duì)比學(xué)習(xí): 第一階段疏遠(yuǎn)委婉語(yǔ)上下文和委婉語(yǔ)表面含義的語(yǔ)義距離;第二階段拉近目標(biāo)詞上下文和對(duì)應(yīng)目標(biāo)詞的語(yǔ)義距離,疏遠(yuǎn)和其他目標(biāo)詞的語(yǔ)義距離。通過兩階段對(duì)比學(xué)習(xí)可以最大化委婉語(yǔ)上下文和其潛在含義的語(yǔ)義一致性。
第一階段正樣本對(duì)由掩碼掉委婉語(yǔ)處上下文表示hmei和其對(duì)應(yīng)的委婉語(yǔ)表面含義表示heuphi組成(euphi是掩碼掉的委婉語(yǔ)),負(fù)樣本對(duì)則可表示為{hmei,heuphj}(i≠j)。與SimCSE[24]不同的是,這里我們要疏遠(yuǎn)正樣本對(duì),以強(qiáng)化其語(yǔ)義之間的差別,而不是拉近它們,因此對(duì)第一階段對(duì)比學(xué)習(xí)損失進(jìn)行取反操作,以疏遠(yuǎn)正樣本對(duì),具體計(jì)算如式(5)、式(6)所示。
其中,N是訓(xùn)練集中正樣本對(duì)數(shù)量,b是批次內(nèi)正樣本對(duì)數(shù)量,τ是溫度超參數(shù),sim(h1,h2)是余弦相似度。
第二階段正樣本對(duì)由掩碼掉目標(biāo)詞處上下文表示hmti和其對(duì)應(yīng)的目標(biāo)詞表示hti組成(ti是掩碼掉的目標(biāo)詞),負(fù)樣本對(duì)由掩碼掉目標(biāo)詞處上下文表示和其他目標(biāo)詞表示組成。使用負(fù)數(shù)的交叉熵作為訓(xùn)練目標(biāo),第二階段對(duì)比學(xué)習(xí)損失計(jì)算如式(7)所示。
(7)
語(yǔ)境對(duì)比學(xué)習(xí)模塊聯(lián)合第一階段和第二階段對(duì)比學(xué)習(xí)代價(jià)進(jìn)行訓(xùn)練,損失為:
ls=λls1+ls2
(8)
這里,λ是超參數(shù),是為了調(diào)整兩個(gè)階段對(duì)比學(xué)習(xí)對(duì)最終委婉語(yǔ)識(shí)別任務(wù)的權(quán)重。
分類模塊用來預(yù)測(cè)掩碼處上下文對(duì)應(yīng)的目標(biāo)詞,基于上述得到的掩碼掉目標(biāo)詞處上下文表示hmt,對(duì)每一個(gè)候選目標(biāo)詞打分,計(jì)算出給定掩碼處上下文得到選擇的目標(biāo)詞的概率,如式(9)所示。
(9)
其中,s∈S訓(xùn)練句子集,w∈d、b∈是模型參數(shù),⊙是逐位相乘。訓(xùn)練的目標(biāo)是最小化預(yù)測(cè)結(jié)果和真實(shí)值的交叉熵,如式(10)所示。
(10)
其中,n是目標(biāo)詞候選集中目標(biāo)詞的所屬類別數(shù)(同一類別下的目標(biāo)詞,表示同一事物),tg是真實(shí)目標(biāo)詞的單熱向量。預(yù)測(cè)損失ls和對(duì)比學(xué)習(xí)的損失lc之和就是我們整個(gè)委婉語(yǔ)識(shí)別任務(wù)訓(xùn)練損失,最終的損失函數(shù)loss表示如式(11)所示。
loss=lc+ls
(11)
訓(xùn)練時(shí),DSLM模型通過聯(lián)合地計(jì)算對(duì)比學(xué)習(xí)損失和分類損失來微調(diào)、優(yōu)化模型參數(shù)。測(cè)試時(shí),DSLM可以動(dòng)態(tài)提取委婉語(yǔ)上下文語(yǔ)義特征,有效識(shí)別語(yǔ)料中的委婉語(yǔ)。
本節(jié)在三個(gè)基準(zhǔn)數(shù)據(jù)集[2](Drug、Weapon、Sexuality)上對(duì)我們提出的模型(DSLM)進(jìn)行了實(shí)驗(yàn)評(píng)估,并將其與一組基線模型進(jìn)行了比較。
本文在數(shù)據(jù)集Drug、Weapon、Sexuality上進(jìn)行了模型實(shí)驗(yàn),這些數(shù)據(jù)集來源于毒品市場(chǎng)帖子、Gab社交網(wǎng)絡(luò)服務(wù)平臺(tái)、在線俚語(yǔ)詞典等,包含三種類別的句子: 含有目標(biāo)詞的句子、含有委婉語(yǔ)的句子、不含委婉語(yǔ)和目標(biāo)詞的句子。各個(gè)數(shù)據(jù)集的概覽情況如表2所示,其中Drug、Weapon、Sexuality三個(gè)數(shù)據(jù)集對(duì)應(yīng)的目標(biāo)詞候選集分別有33、9、12個(gè)類別(每個(gè)類別下的目標(biāo)詞,表示同一事物)。
表2 數(shù)據(jù)集概覽
DSLM采用了自監(jiān)督學(xué)習(xí)框架以解決缺乏含委婉語(yǔ)到目標(biāo)詞映射的數(shù)據(jù)集問題。在訓(xùn)練模型時(shí),使用掩碼掉目標(biāo)詞的句子作為訓(xùn)練數(shù)據(jù),并將對(duì)應(yīng)的目標(biāo)詞作為標(biāo)簽;測(cè)試時(shí),輸入掩碼掉委婉語(yǔ)的句子,并使用已訓(xùn)練好的模型來預(yù)測(cè)委婉語(yǔ)對(duì)應(yīng)的目標(biāo)詞。因此,需要兩種輸入: ①?gòu)脑嘉谋菊Z(yǔ)料庫(kù)中提取掩碼掉目標(biāo)詞的句子(用于訓(xùn)練)、掩碼掉委婉語(yǔ)的句子(用于測(cè)試); ②目標(biāo)詞列表。為了評(píng)估DSLM測(cè)試結(jié)果的準(zhǔn)確性,需要依賴委婉語(yǔ)及其目標(biāo)詞對(duì)應(yīng)的真實(shí)列表,該列表應(yīng)包含從每個(gè)委婉語(yǔ)到其潛在含義的一對(duì)一映射。值得注意的是,該真實(shí)列表并沒有參與整個(gè)模型的訓(xùn)練過程,只用于評(píng)估模型對(duì)委婉語(yǔ)的識(shí)別準(zhǔn)確性。
為了排除其他因素對(duì)結(jié)果與基線對(duì)比的影響,同當(dāng)前最佳模型[2]一樣,本文在各個(gè)數(shù)據(jù)集上獨(dú)立進(jìn)行訓(xùn)練,并保持?jǐn)?shù)據(jù)集劃分的一致性。在訓(xùn)練過程中,將掩碼掉目標(biāo)詞的句子劃分為80%訓(xùn)練集和20%驗(yàn)證集;在測(cè)試階段,則使用全部掩碼掉委婉語(yǔ)的句子作為測(cè)試數(shù)據(jù)。
在進(jìn)行訓(xùn)練之前,使用基于bert-base-uncased(1)https://huggingface.co/bert-base-uncased模型的MLM[11]任務(wù)分別在上述三個(gè)數(shù)據(jù)集上繼續(xù)預(yù)訓(xùn)練,得到預(yù)訓(xùn)練的委婉語(yǔ)BERT模型(Euph_BERT)。然后,我們使用此模型進(jìn)行微調(diào),來訓(xùn)練委婉語(yǔ)識(shí)別任務(wù)。在預(yù)訓(xùn)練階段,我們?cè)O(shè)定輸入序列最大長(zhǎng)度為512,批量大小為64,迭代次數(shù)為3。在微調(diào)過程中,設(shè)定輸入序列最大長(zhǎng)度為128,批量大小為32,初始學(xué)習(xí)率為5e-5,溫度超參數(shù)τ設(shè)置為0.05,超參數(shù)λ設(shè)置為1e-3,預(yù)熱步驟為1 000,采用優(yōu)化器AdamW[29]基于預(yù)熱線性計(jì)劃進(jìn)行訓(xùn)練。
同當(dāng)前最佳模型[2]一樣,本文采用Acc@k作為評(píng)價(jià)指標(biāo): 對(duì)于每個(gè)檢測(cè)到的委婉語(yǔ),根據(jù)生成的目標(biāo)詞的概率對(duì)其排序,然后評(píng)估topK準(zhǔn)確率(Acc@k),即真實(shí)標(biāo)簽值落在我們生成的排序列表中前k個(gè)值的頻率。
為了進(jìn)一步評(píng)估DSLM的有效性,我們將其與其他方法進(jìn)行了比較,并在三個(gè)數(shù)據(jù)集上進(jìn)行了測(cè)試。
4.3.1 對(duì)比方法
本文分別與當(dāng)前最佳方法[2](記為“SelfEDI”)、Word2Vec方法,以及我們建立的4個(gè)基線模型進(jìn)行比較。
?Word2Vec[2]: 在數(shù)據(jù)集上訓(xùn)練Word2vec算法,通過得到所有單詞的詞嵌入(100維),來使用余弦相似度來選擇最接近它的目標(biāo)關(guān)詞。
?SelfEDI[2]: 采用詞袋模型在句子級(jí)別的語(yǔ)境中提取句子特征,通過訓(xùn)練一個(gè)多項(xiàng)邏輯回歸分類器來識(shí)別委婉語(yǔ)。
?BERT: 在數(shù)據(jù)集上預(yù)訓(xùn)練得到一個(gè)BERT預(yù)訓(xùn)練模型,提取句子的特征表示(768維),通過訓(xùn)練一個(gè)多項(xiàng)邏輯回歸分類器來識(shí)別委婉語(yǔ)。
?DSLM: 本文提出的模型,在委婉語(yǔ)數(shù)據(jù)集上預(yù)訓(xùn)練得到一個(gè)委婉語(yǔ)BERT模型,來獲取上下文表示,然后引入語(yǔ)境對(duì)比學(xué)習(xí)模塊,使用第一階段和第二階段對(duì)比學(xué)習(xí)方法來學(xué)習(xí)委婉語(yǔ)上下文表示,最終微調(diào)識(shí)別委婉語(yǔ)。
?DSLM_base:DSLM的基礎(chǔ)方法,不使用語(yǔ)境對(duì)比學(xué)習(xí)模塊,直接基于委婉語(yǔ)BERT模型微調(diào)識(shí)別委婉語(yǔ)。
?DSLM_ls1: 在DSLM_base的基礎(chǔ)上,引入第一階段對(duì)比學(xué)習(xí)方法。
?DSLM_ls2: 在DSLM_base的基礎(chǔ)上,引入第二階段對(duì)比學(xué)習(xí)方法。
4.3.2 實(shí)驗(yàn)結(jié)果和分析
為了公平地比較模型性能,參考Zhu等人[2],所有結(jié)果均來自于模型的最佳性能表現(xiàn)。表3總結(jié)了基線模型和我們模型在委婉語(yǔ)識(shí)別上的結(jié)果,其中基線模型Word2Vec和SelfEDI的結(jié)果直接取自Zhu等人[2]的研究。我們的算法在所有三個(gè)數(shù)據(jù)集上都達(dá)到了最佳性能。
表3 委婉識(shí)別結(jié)果
實(shí)驗(yàn)結(jié)果分析從表3可以看出,我們的方法DSLM比當(dāng)前最佳模型SelfEDI的Acc@1準(zhǔn)確率提升了7%~11%,所有模型結(jié)果取自Acc@1最佳的結(jié)果。Word2Vec性能表現(xiàn)較差,原因在于其無法捕捉同一詞的不同含義。相比于SelfEDI使用詞袋模型提取句子特征進(jìn)行識(shí)別,我們創(chuàng)建的DSLM_base使用BERT編碼,其來自Transformer的Encoder既保留了句子中詞的先后順序,又考慮了詞之間的語(yǔ)義聯(lián)系,提取的句子特征語(yǔ)義更為豐富。在三個(gè)數(shù)據(jù)集上,DSLM_base結(jié)果明顯優(yōu)于BERT,前者使用微調(diào)的方法,而后者基于特征方法,將BERT當(dāng)作特征提取器,顯然微調(diào)方法優(yōu)于基于特征的方法。模型不使用語(yǔ)境對(duì)比學(xué)習(xí)模塊后的Acc@1準(zhǔn)確率降低了3%~5%。經(jīng)過預(yù)訓(xùn)練后,委婉語(yǔ)上下文和其表面含義表示之間的距離會(huì)拉開,因此第一階段對(duì)比學(xué)習(xí)DSLM_ls1效果不明顯;而第二階段對(duì)比學(xué)習(xí)DSLM_ls2直接拉近掩碼處上下文表示和目標(biāo)詞語(yǔ)義表示之間的距離,顯然其效果更好,結(jié)果表明DSLM_ls2對(duì)模型貢獻(xiàn)更高,比DSLM_ls1提升了1%~2%的準(zhǔn)確率。相較于DSLM_base,DSLM_ls1和DSLM_ls2在Acc@1準(zhǔn)確率上提升最多,在Acc@2上略有提升,但在Acc@3上出現(xiàn)下降。與Acc@1不同,Acc@3指的是候選目標(biāo)詞中前三個(gè)正確的占比,這樣擴(kuò)大了結(jié)果目標(biāo)詞范圍。由于目標(biāo)詞之間的語(yǔ)義差異較小,例如“Marijuana”“Cocaine”和“Heroin”等,這樣,相似的目標(biāo)詞更容易被納入擴(kuò)大的結(jié)果目標(biāo)詞中,從而引起準(zhǔn)確率的波動(dòng)。尤其是在Sexuality數(shù)據(jù)集上,該數(shù)據(jù)集中目標(biāo)詞種類較少且分布極度不均衡(約72%的訓(xùn)練數(shù)據(jù)屬于“Sex”類別,而其他類別僅占約2.5%),因而導(dǎo)致較差的Acc@3準(zhǔn)確率。相比Acc@3,Acc@2和Acc@1結(jié)果范圍有限,僅涉及前兩個(gè)或者一個(gè)目標(biāo)詞,因此受到目標(biāo)詞語(yǔ)義相似和分布不均衡的影響較小。然而,DSLM通過聯(lián)合對(duì)比學(xué)習(xí)的第一階段和第二階段,能夠?qū)W習(xí)到更加準(zhǔn)確的委婉語(yǔ)表示,并加強(qiáng)委婉語(yǔ)與目標(biāo)詞之間的映射關(guān)系。這在一定程度上克服了準(zhǔn)確率的波動(dòng),最終展現(xiàn)出最佳的整體結(jié)果。
圖2展示了模型在三個(gè)數(shù)據(jù)集上隨機(jī)運(yùn)行100次得到的Acc@1、Acc@2、Acc@3準(zhǔn)確率箱型圖和小提琴圖。由圖2可以看出,模型DSLM的結(jié)果穩(wěn)定、方差小。相比之下,當(dāng)前最佳模型SelfEDI結(jié)果方差大,結(jié)果分布不集中,模型置信度低。值得注意的是,DSLM_ls2相比基礎(chǔ)模型DSLM_base而言,不僅提升了模型準(zhǔn)確度,還改變了結(jié)果的密度分布,使其集中在高精度區(qū)。由此可見,第二階段對(duì)比學(xué)習(xí)方法有利于模型結(jié)果和置信度的提升。
圖2 委婉語(yǔ)識(shí)別結(jié)果圖
為了進(jìn)一步驗(yàn)證模型的收斂速度,本文繪制了各方法在三個(gè)數(shù)據(jù)集上訓(xùn)練過程中的Acc@1準(zhǔn)確率隨迭代步數(shù)變化的曲線,如圖3所示。從圖中可以看出,DSLM、DSLM_ ls1和DSLM_ls2方法收斂速度最快;而DSLM_base和SelfEDI收斂較慢。這表明,使用對(duì)比學(xué)習(xí)可以有效縮小掩碼詞和目標(biāo)詞之間的語(yǔ)義距離,從而提高模型的學(xué)習(xí)效率,加快收斂速度。
圖3 各模型在三個(gè)數(shù)據(jù)集上的準(zhǔn)確率變化曲線
可視化分析為了更加直觀地呈現(xiàn)DSLM模型對(duì)于委婉語(yǔ)識(shí)別的影響,本文使用t-SNE[30]算法對(duì)模型訓(xùn)練前后的掩碼掉委婉語(yǔ)處上下文表示和目標(biāo)詞表示進(jìn)行可視化處理。如圖4所示,我們隨機(jī)選取了96個(gè)(3個(gè)批次,批次大小是32)掩碼掉委婉語(yǔ)處上下文表示和目標(biāo)詞表示(33個(gè)類別),并進(jìn)行了二維展示。從圖中可以看出,經(jīng)過模型訓(xùn)練后,掩碼處上下文表示和目標(biāo)詞表示更加接近,模型成功解決了委婉語(yǔ)上下文表示和目標(biāo)詞表示不一致問題。
圖4 DSLM模型訓(xùn)練前后掩碼詞和目標(biāo)詞的表示分布左邊是訓(xùn)練前的表示分布,右邊是訓(xùn)練后的表示分布。藍(lán)色點(diǎn)狀代表掩碼詞上下文表示,隨機(jī)取了96個(gè);橙色十字代表目標(biāo)詞表示,共計(jì)33個(gè)。
綜上所述,DSLM方法采用基于BERT的自監(jiān)督學(xué)習(xí)方法和兩階段對(duì)比學(xué)習(xí),可以有效獲取委婉語(yǔ)上下文語(yǔ)義,解決缺乏有效標(biāo)注的數(shù)據(jù)集問題和委婉語(yǔ)表面含義和潛在含義不一致的問題。該方法在三個(gè)數(shù)據(jù)集上的識(shí)別結(jié)果均超過當(dāng)前最佳模型SelfEDI,且具有更小的結(jié)果方差和更穩(wěn)定的性能表現(xiàn),模型收斂速度更快。
本文提出了一種雙層自監(jiān)督學(xué)習(xí)方法DSLM,用于委婉語(yǔ)識(shí)別。DSLM使用基于BERT的自監(jiān)督學(xué)習(xí)框架來解決缺乏有效標(biāo)注的數(shù)據(jù)集問題;使用語(yǔ)境對(duì)比學(xué)習(xí)模塊,拉大委婉語(yǔ)上下文和委婉語(yǔ)表面含義的語(yǔ)義距離,縮小委婉語(yǔ)上下文和目標(biāo)詞的語(yǔ)義距離,以使模型可以在委婉語(yǔ)上下文的語(yǔ)義特征空間學(xué)習(xí)到委婉語(yǔ)潛在含義的特征,從而緩解委婉語(yǔ)表面含義和潛在含義不一致的問題。在三個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,DSLM模型性能最佳。此外,本文使用可視化技術(shù)展示了模型訓(xùn)練前后委婉語(yǔ)上下文和目標(biāo)詞表示的分布情況,證明DSLM能夠有效緩解委婉語(yǔ)表面含義和潛在含義不一致的問題。未來,我們計(jì)劃新增其他類型的委婉語(yǔ)數(shù)據(jù)集,如暴力、歧視等,以更好地幫助監(jiān)管社交媒體言論和地下交易市場(chǎng)。