国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種增強(qiáng)的多粒度特征融合語(yǔ)義匹配模型

2022-08-02 01:40:38尚福華蔣毅文曹茂俊
關(guān)鍵詞:粒度注意力語(yǔ)義

尚福華,蔣毅文,曹茂俊

(東北石油大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,黑龍江 大慶 163318)

0 引 言

文本語(yǔ)義匹配是目前自然語(yǔ)言處理領(lǐng)域中一個(gè)重要的任務(wù)分支,也是自然語(yǔ)言處理中重要的研究方向和研究熱點(diǎn),在信息檢索、問(wèn)答系統(tǒng)、機(jī)器翻譯等任務(wù)中起到了核心作用。

正因?yàn)檎Z(yǔ)義匹配的重要性,國(guó)內(nèi)外許多學(xué)者都在語(yǔ)義匹配上作了許多研究。傳統(tǒng)的匹配模型主要基于人工提取的特征以及基于統(tǒng)計(jì)機(jī)器學(xué)習(xí)的方法,如BM25模型、PLS、SMT模型、WTM模型等。這些模型主要解決文本表層的匹配問(wèn)題[1],但難以捕捉文本所表達(dá)的深層含義。隨著神經(jīng)網(wǎng)絡(luò)的火熱發(fā)展,人們發(fā)現(xiàn)基于深度學(xué)習(xí)的模型在語(yǔ)義匹配任務(wù)中取得了更好的效果。因此關(guān)于語(yǔ)義匹配的研究熱點(diǎn)已逐漸轉(zhuǎn)移到深度學(xué)習(xí)語(yǔ)義匹配模型。龐亮等人[2]將目前的基于深度學(xué)習(xí)的語(yǔ)義匹配模型分為三種,第一種是基于單語(yǔ)義文檔表達(dá)的,主要將待匹配的兩個(gè)文本通過(guò)深度學(xué)習(xí)的方式表達(dá)成兩個(gè)向量,再通過(guò)計(jì)算兩個(gè)向量之間的相似度便可得到匹配度。如ARC-I、DSSM模型。第二種是基于多語(yǔ)義文檔表達(dá)的,綜合考慮文本的局部性表達(dá)(詞粒度信息、短語(yǔ)粒度信息)和全局性表達(dá)(句粒度信息),通過(guò)這樣多層級(jí)多粒度的匹配可以很好地彌補(bǔ)基于單語(yǔ)義文檔表達(dá)的深度學(xué)習(xí)模型在壓縮整個(gè)句子過(guò)程中的信息損失,而達(dá)到更好的效果。如MultiGranCNN、MV-LSTM等。第三種則是直接建模匹配模式的。這種模型從多角度提取文本間的深層交互信息,并認(rèn)為對(duì)文本間的交互學(xué)習(xí)應(yīng)該早于文本的表示學(xué)習(xí)之前,一方面是為了避免損失信息,另一方面通過(guò)這種方式能夠得到更豐富的語(yǔ)義表示,利于后面的學(xué)習(xí)。典型模型有ARC-II、ABCNN、BiMPM、ESIM、DIIN等。Pair-CNN模型是文獻(xiàn)[3]所提出的,利用CNN完成短文本的匹配任務(wù)。ABCNN[4]則是在此基礎(chǔ)上加入注意力機(jī)制形成的。文獻(xiàn)提出雙向多視角匹配模型BIMPM[5]模型,對(duì)比了多種不同注意力機(jī)制的匹配策略。ESIM[6]模型本身是用于自然語(yǔ)言推理任務(wù),但稍加改造后就能用于文本匹配等任務(wù)。

目前這些模型表現(xiàn)優(yōu)異,但仍存在一定的不足。首先,這些模型大多是以詞作為語(yǔ)義單元并基于靜態(tài)詞向量(Word2Vec、GloVe等)來(lái)獲取句子表示,對(duì)于英語(yǔ)來(lái)說(shuō),它的最小語(yǔ)義單元是單詞,因此適用于這樣的方法。而中文語(yǔ)言顯然更加復(fù)雜,中文分詞、語(yǔ)義信息等要素直接影響了語(yǔ)義匹配的效果,而漢語(yǔ)中單個(gè)字也承載著一定的語(yǔ)義[7],因此只考慮詞作為語(yǔ)義單元不一定能取得更好的效果,需要考慮多種語(yǔ)義單元在句子建模中的作用。此外靜態(tài)詞向量一旦訓(xùn)練完成,相同的詞的向量表示是不會(huì)再隨語(yǔ)境變化而變化的,因此這一類(lèi)詞向量難以解決一詞多義問(wèn)題[8],且不能表征詞性等語(yǔ)法特征。因此如何獲得更準(zhǔn)確的句子嵌入表示仍是現(xiàn)在的研究重點(diǎn)。其次,模型在交互時(shí)往往都是在詞級(jí)別上進(jìn)行交互,如ESIM模型在提取文本的交互特征時(shí)只是基于詞進(jìn)行注意力交互,未能挖掘文本更深層的交互信息。而句子是具有一定的層級(jí)關(guān)系的,如果忽略了語(yǔ)言顆粒度對(duì)句子建模的影響,那么得到的交互信息也是不充分的。最后,一些模型通過(guò)使用多種注意力機(jī)制來(lái)提升模型效果,如BIMPM采用了四種注意力匹配策略來(lái)提取更多的信息,但是對(duì)于多種交互結(jié)果往往只是采用簡(jiǎn)單的concat方式。對(duì)于如何正確組合優(yōu)化多種注意力信息考慮甚少。

針對(duì)以上問(wèn)題,該文提出一種增強(qiáng)的多粒度特征融合語(yǔ)義匹配模型EMGFM。主要工作如下:

(1)為避免由于中文詞邊界模糊而帶來(lái)的影響,同時(shí)考慮中文中單個(gè)字所包含的語(yǔ)義信息,該文將字向量與詞向量進(jìn)行混合使用,在字向量的獲得上,利用BERT模型強(qiáng)大的語(yǔ)義表達(dá)能力獲取中文字符向量,從而更好地表征字符的多義性,而詞向量選用Word2Vec進(jìn)行獲取。最后將兩種向量進(jìn)行拼接得到增強(qiáng)的字符向量。(2)為解決只考慮詞交互帶來(lái)的交互特征單一問(wèn)題,對(duì)文本的不同的粒度(字、詞、句)進(jìn)行注意力交互特征提取,因?yàn)椴煌6鹊男畔⑻崛£P(guān)注重點(diǎn)各有不同,為了綜合利用多種方法,最大程度上完全提取信息,設(shè)計(jì)了一種融合多種交互信息的方法。該方法利用注意力思想衡量每種交互信息的重要性,而且不會(huì)因?yàn)橹苯舆B接導(dǎo)致向量維度過(guò)高,可以有效減少模型計(jì)算的復(fù)雜性。并通過(guò)原始信息與融合后的信息進(jìn)行點(diǎn)乘相減等操作來(lái)構(gòu)造差異性,以達(dá)到語(yǔ)義增強(qiáng)的效果。(3)針對(duì)語(yǔ)義匹配提出了增強(qiáng)的多粒度特征融合語(yǔ)義匹配模型,實(shí)驗(yàn)結(jié)果表明,提出的方法能有效提升問(wèn)句語(yǔ)義匹配的準(zhǔn)確性。

1 增強(qiáng)的多粒度特征融合語(yǔ)義匹配模型

1.1 問(wèn)題定義與分析

給定待匹配樣本Sample={H,T,similarity},其中H、T為待匹配的兩個(gè)短文本,similarity為兩個(gè)文本之間的相似度,一般為0或者1。當(dāng)similarity=1時(shí)表示兩個(gè)文本語(yǔ)義相似,similarity=0則反之。該文的目標(biāo)就是訓(xùn)練一個(gè)語(yǔ)義匹配模型M,使得對(duì)任意的兩個(gè)句子,M能夠合理給出其相似度的評(píng)判。

1.2 模型結(jié)構(gòu)

整個(gè)模型結(jié)構(gòu)如圖1所示,模型主要包含編碼層、交互層、語(yǔ)義組合層、輸出層4個(gè)主要部分。

圖1 模型結(jié)構(gòu)

首先在嵌入層將待匹配的兩段文本轉(zhuǎn)換為文本向量,在交互層利用可分解注意力機(jī)制,從三種粒度(字、詞、句)分別計(jì)算兩段文本的注意力權(quán)重,從而得到兩段文本在不同粒度下的注意力加權(quán)表示。然后對(duì)不同粒度下的注意力加權(quán)表示進(jìn)行融合,并利用原始信息對(duì)其進(jìn)行信息增強(qiáng),最后經(jīng)過(guò)平均池化和最大池化處理后傳入一個(gè)多層感知機(jī)進(jìn)行輸出。

1.2.1 編碼層

(1)BERT預(yù)訓(xùn)練模型。

BERT是一個(gè)語(yǔ)言表征模型(language representation model)[9],基于多層Transform實(shí)現(xiàn),通過(guò)Transform結(jié)構(gòu)獲取到字符向量可以充分利用上下文信息,更能表達(dá)多義性。因此,選用BERT預(yù)訓(xùn)練模型來(lái)獲取文本的字向量表示。

(2)輸入表示。

圖2 BERT輸入表示

(1)

經(jīng)過(guò)上述操作,最終將輸入的句子A、B嵌入表示為:

(2)

(3)

1.2.2 交互層

大量的實(shí)驗(yàn)證明在句子特征提取完成后才進(jìn)行句子之間的交互,勢(shì)必會(huì)浪費(fèi)一些特征信息,而對(duì)待匹配的文本先進(jìn)行交互再進(jìn)行后續(xù)學(xué)習(xí)會(huì)取得更好的效果,并且更豐富的語(yǔ)義交互能為后續(xù)網(wǎng)絡(luò)學(xué)習(xí)帶來(lái)更多信息,匹配效果更好。如吳少洪等人[10]從不同的方面提取文本更深層的交互信息,取得了不錯(cuò)的效果。受這些工作的啟發(fā),增加更細(xì)粒度的文本交互,旨在獲得更豐富的語(yǔ)義交互信息。

(1)可分解注意力機(jī)制。

綜上所述,該文在將特征向量送入后續(xù)網(wǎng)絡(luò)之前,參考可分解注意力機(jī)制[11]的做法,對(duì)句子進(jìn)行不同粒度的對(duì)齊,使得句子間的關(guān)系特征得以保留。以下先介紹可分解注意力的計(jì)算過(guò)程:

Step1:首先對(duì)句子A、B中的每個(gè)詞,通過(guò)F函數(shù)計(jì)算它們的注意力權(quán)重矩陣eij,F(xiàn)函數(shù)選用的是向量的點(diǎn)積。

(4)

Step2:使用注意力權(quán)重矩陣對(duì)句子a、b中的每個(gè)詞進(jìn)行注意力加權(quán)求和。

(5)

(6)

(2)字粒度的交互。

通過(guò)1.2.1的操作即可將輸入的兩個(gè)句子A和B各自轉(zhuǎn)化為m*n的嵌入矩陣EA、EB,其中m為句子的字?jǐn)?shù),n為字向量的維度。因?yàn)锽ERT是基于字的模型,因此輸出即是每個(gè)字的字向量,因此可直接對(duì)其進(jìn)行字粒度的交互,使用上文提及的注意力交互方式可得到關(guān)于句子A和B的基于字粒度的交互矩陣CIA、CIB。

(3)短語(yǔ)粒度的交互。

大量實(shí)驗(yàn)證明長(zhǎng)短語(yǔ)級(jí)別和短語(yǔ)級(jí)別的特征對(duì)句子的建模十分關(guān)鍵,CNN因其獨(dú)特的網(wǎng)絡(luò)結(jié)構(gòu)在捕捉句子的局部特征上具有天然優(yōu)勢(shì)。參考文獻(xiàn)[12]中的做法,該文在抽取局部特征時(shí)兼顧不同數(shù)量字組成的短語(yǔ),選擇二元(two-gram)、三元(tri-gram)進(jìn)行特征提取。具體做法如下:

Step1:不同長(zhǎng)度短語(yǔ)特征提取。

將1.2.1得到的句子嵌入矩陣A、B分別輸入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行卷積操作,卷積核的寬度與字嵌入維度一致。為保證卷積操作前后維度保持一致以便于后續(xù)網(wǎng)絡(luò)學(xué)習(xí),對(duì)A、B進(jìn)行零向量填充后再進(jìn)行卷積,以二元提取特征為例,卷積核的高度設(shè)置為2,得到的卷積結(jié)果可以表示為:

Two_CA=two_gram_CNN(A)

(7)

Two_CB=two_gram_CNN(B)

(8)

其中,CA∈Rla×1×K,CB∈Rlb×1×K,la、lb分別為句子A、B的長(zhǎng)度,K為卷積核的數(shù)目。

Step2:提取交互信息。

對(duì)Two_CA、Two_CB進(jìn)行注意力交互計(jì)算,分別得到文本A、B關(guān)于不同長(zhǎng)度短語(yǔ)粒度的特征提取矩陣Two_CA、Two_CB、Tri_CA、Tri_CB。

(4)句子粒度的交互。

注意力機(jī)制能突出每個(gè)句子語(yǔ)義特征最明顯的部分[13],該文應(yīng)用注意力機(jī)制來(lái)捕捉文本的上下文信息特征,最基本的注意力機(jī)制主要分為兩種,一種是由Bahdanau[14]提出的加法注意力機(jī)制,另外一種是由Luong[15]提出的乘法注意力機(jī)制。

該文對(duì)編碼層輸出采用Bahdanau提出的加法注意力機(jī)制,具體計(jì)算主要分為以下三步:

Step1:將query和每個(gè)key進(jìn)行計(jì)算得到注意力得分score,以某個(gè)時(shí)間步輸出ht為例,計(jì)算注意力得分at:

(9)

(10)

Step2:使用一個(gè)SoftMax函數(shù)對(duì)這些權(quán)重進(jìn)行歸一化,如下式所示:

(11)

Step3:將權(quán)重和相應(yīng)的鍵值value進(jìn)行加權(quán)求和得到最后的attention,如下式所示:

(12)

目前在NLP研究中,key和value常常都是同一個(gè),即key=value。在文中,key和value取值為編碼層的字向量輸出,通過(guò)上述計(jì)算得到基于注意力加權(quán)的表示SA_A、SA_B,再將SA_A、SA_B經(jīng)過(guò)注意力交互計(jì)算即可得到句子A、B關(guān)于句子粒度交互的特征矩陣sen_A、sen_B。

1.2.3 組合層

在實(shí)際模型中,經(jīng)常會(huì)將不同的特征組合起來(lái)一同使用,全面獲取信息,來(lái)達(dá)到提升模型性能的目的,然而大多數(shù)模型在組合不同的語(yǔ)義信息時(shí)都使用了簡(jiǎn)單的concat方式,使得維度過(guò)大,模型計(jì)算量變大,無(wú)法有效衡量各種語(yǔ)義信息的重要性。該文創(chuàng)新性提出一種融合注意力方法來(lái)解決這個(gè)問(wèn)題,具體內(nèi)容如下文所述:

(1)聚合交互信息。

(13)

(14)

(15)

通過(guò)上述計(jì)算,得到句子A、B的聚合交互信息表示AG_A、AG_B。

(2)交互信息加強(qiáng)。

得到聚合交互信息表示后,使用下式進(jìn)行信息增強(qiáng),目的是為了構(gòu)造與原有信息的差異性,便于網(wǎng)絡(luò)后續(xù)學(xué)習(xí)。

eh_A =[EA,AG_A,EA-AG_A,EA⊙AG_A]

(16)

eh_B =[EB,AG_B,EB-AG_B,EB⊙AG_B]

(17)

其中,EA、EB分別為句子A、B的句嵌入原始矩陣,AG_A、AG_B分別為其聚合交互信息表示,eh_A、eh_B即為AG_A、AG_B經(jīng)過(guò)信息增強(qiáng)后得到的結(jié)果。

(3)池化。

該文為最大限度保留上文提取到的特征,綜合使用平均和最大兩種方式來(lái)進(jìn)行池化,并將兩種pooling得到的向量concat起來(lái)。池化過(guò)程如下式所示:

(18)

(19)

V=[Va,ave,Va,max,Vb,ave,Vb,max]

(20)

其中,Va,i為增強(qiáng)信息經(jīng)過(guò)BILSTM后每個(gè)時(shí)間步的輸出。

1.2.4 輸出層

通過(guò)池化得到的向量經(jīng)過(guò)全連接層作最后分類(lèi)輸出,其計(jì)算公式如下式所示:

(21)

sim(A,B)=argmax(yi)

(22)

其中,yi是模型對(duì)應(yīng)每個(gè)分類(lèi)的輸出值,argmax則是取最大輸出值對(duì)應(yīng)的類(lèi)別值,sim(A,B)即為兩個(gè)句子最終的相似度。

2 實(shí)驗(yàn)設(shè)計(jì)

2.1 數(shù)據(jù)集構(gòu)造

實(shí)驗(yàn)數(shù)據(jù)來(lái)源于CCKS2018評(píng)測(cè)項(xiàng)目中的微眾銀行客戶(hù)問(wèn)句匹配大賽數(shù)據(jù)集,共包含182 478個(gè)句子對(duì),測(cè)試集包含10 000個(gè)句子對(duì)。若句子對(duì)語(yǔ)義信息相同,則對(duì)應(yīng)的標(biāo)簽為1,否則為0,訓(xùn)練集樣本實(shí)例如表1所示。

表1 部分訓(xùn)練數(shù)據(jù)集樣本

2.2 實(shí)驗(yàn)設(shè)置

實(shí)驗(yàn)選用的深度網(wǎng)絡(luò)框架是tensorflow2.3,字向量模型選用的是BERT模型中預(yù)訓(xùn)練好的bert_zh_L-12_H-768_A-12模型,句子最大允許長(zhǎng)度為樣本集中所有樣本的最大長(zhǎng)度,batch大小設(shè)置為20,epoch設(shè)置為15,優(yōu)化方式為Adam,損失函數(shù)選用的是多分類(lèi)常用的交叉熵?fù)p失函數(shù)。靜態(tài)詞向量模型經(jīng)由維基百科中文語(yǔ)料(1.42 G)訓(xùn)練而成,該語(yǔ)料包含342 624個(gè)詞,維度為300。實(shí)驗(yàn)選用準(zhǔn)確率來(lái)衡量模型的性能,準(zhǔn)確率的計(jì)算如下式:

2.3 模型驗(yàn)證

為了驗(yàn)證提出模型的有效性,對(duì)照實(shí)驗(yàn)?zāi)P筒捎肧iamese-LSTM、Siamese-CNN、ESIM、MatchPyramid。其中各模型最終評(píng)測(cè)結(jié)果如表2所示。

表2 各模型準(zhǔn)確率比較

各模型在各批次的損失及準(zhǔn)確率變化如圖3、圖4所示。

圖3 各模型準(zhǔn)確率對(duì)比

圖4 各模型損失值對(duì)比

2.4 實(shí)驗(yàn)結(jié)果分析

從表2可以看出,該文提出的模型相較于其他傳統(tǒng)文本匹配模型表現(xiàn)較好,取得了87%的準(zhǔn)確率,相較于對(duì)比模型中表現(xiàn)最好的ESIM模型大約有2%的提升,其中直接建模匹配的模型要比直接表示型的模型效果要好,這是因?yàn)镃NN、LSTM等僅從文本本身進(jìn)行語(yǔ)義建模,而忽略了文本之間的聯(lián)系。而基于LSTM的Siamese模型要比基于CNN的Siamese特征提取能力強(qiáng),這是因?yàn)長(zhǎng)STM在文本等序列建模問(wèn)題上有一定優(yōu)勢(shì),具有長(zhǎng)時(shí)記憶功能,能夠捕捉文本的長(zhǎng)程依賴(lài)。ESIM雖然在語(yǔ)義建模之前進(jìn)行了注意力的交互以保留一些重要的文本特征值,并在后續(xù)中進(jìn)行局部信息增強(qiáng)等操作來(lái)豐富語(yǔ)義信息,但總的來(lái)說(shuō)ESIM只對(duì)詞粒度進(jìn)行了交互,而對(duì)中文來(lái)說(shuō)考慮顯然不夠。從顆粒度特征提取來(lái)看,無(wú)論是CNN、LSTM還是ESIM都只是基于單一特征的提取,而該文提出的模型綜合了多個(gè)粒度的交互信息,因而取得了更好的效果。

從圖4可以看出,Siamese-CNN、Siamese-LSTM、MatchPyramid在訓(xùn)練過(guò)程中Loss下降緩慢并逐漸近于平緩,這也導(dǎo)致正確率無(wú)法得到有效提升。提出的模型在訓(xùn)練中的Loss雖然最終和ESIM趨向一致,但是模型在訓(xùn)練過(guò)程中的下降速度上表現(xiàn)出色,在更少的批次就能達(dá)到比較好的效果,這也驗(yàn)證了文中模型結(jié)構(gòu)的優(yōu)越性。

2.5 模型應(yīng)用

將提出的模型最終應(yīng)用于CIFLog大型軟件平臺(tái)開(kāi)發(fā)知識(shí)問(wèn)答中,首先建立軟件平臺(tái)開(kāi)發(fā)知識(shí)圖譜作為問(wèn)答數(shù)據(jù)支撐,同時(shí)人工構(gòu)建問(wèn)句模板庫(kù),然后通過(guò)命名實(shí)體識(shí)別等技術(shù)對(duì)用戶(hù)的問(wèn)句進(jìn)行處理后,使用文中模型找到相似度最高的模板以完成答案的檢索。整體效果如圖5、圖6所示。

圖5 用戶(hù)進(jìn)行提問(wèn)

圖6 模型應(yīng)用問(wèn)答效果

3 結(jié)束語(yǔ)

針對(duì)傳統(tǒng)模型存在的不足提出了相應(yīng)的改進(jìn)。探尋了更細(xì)的語(yǔ)言顆粒度在中文語(yǔ)義交互中的作用,較好地解決了句子交互特征不充分的缺點(diǎn)。同時(shí)在組合層中使用注意力機(jī)制和構(gòu)造差異性方法來(lái)對(duì)交互信息進(jìn)行融合增強(qiáng),在最大程度保留交互特征的同時(shí)降低了模型的參數(shù)計(jì)算量,有效地提升了模型的性能。但是,從模型對(duì)語(yǔ)言的適用性來(lái)看,實(shí)驗(yàn)是在中文數(shù)據(jù)集上進(jìn)行驗(yàn)證,因此在以后的工作中將嘗試在英文數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),以驗(yàn)證模型是否具有普適性。同時(shí),在實(shí)際的應(yīng)用場(chǎng)景如問(wèn)答中,發(fā)現(xiàn)模型的計(jì)算時(shí)間稍長(zhǎng),這不利于體驗(yàn)。因此在以后的工作中,也將進(jìn)一步優(yōu)化模型的執(zhí)行效率,同時(shí)還需研究更多情形下的細(xì)粒度特征抽取方法,以尋求更高性能的語(yǔ)義匹配模型。

猜你喜歡
粒度注意力語(yǔ)義
讓注意力“飛”回來(lái)
粉末粒度對(duì)純Re坯顯微組織與力學(xué)性能的影響
基于矩陣的多粒度粗糙集粒度約簡(jiǎn)方法
語(yǔ)言與語(yǔ)義
“揚(yáng)眼”APP:讓注意力“變現(xiàn)”
基于粒度矩陣的程度多粒度粗糙集粒度約簡(jiǎn)
A Beautiful Way Of Looking At Things
“上”與“下”語(yǔ)義的不對(duì)稱(chēng)性及其認(rèn)知闡釋
認(rèn)知范疇模糊與語(yǔ)義模糊
多粒度空間中的粗糙隸屬度與知識(shí)粒度
白河县| 溆浦县| 威宁| 麻城市| 鹰潭市| 南雄市| 花垣县| 萝北县| 大理市| 太仆寺旗| 四会市| 红河县| 寿光市| 连山| 克什克腾旗| 湘阴县| 宾川县| 彝良县| 道孚县| 弥渡县| 靖远县| 星子县| 宁安市| 蒙城县| 山阴县| 阿坝| 江油市| 土默特右旗| 元江| 昌邑市| 保定市| 南澳县| 大同县| 封开县| 澜沧| 新野县| 山西省| 蓝山县| 望谟县| 洞口县| 简阳市|