1.1 研究背景與任務(wù)定義
口語(yǔ)語(yǔ)言理解在任務(wù)型對(duì)話系統(tǒng)中扮演了一個(gè)非常重要的角色,其目的是識(shí)別出用戶的輸入文本中蘊(yùn)含的意圖和提及到的槽位,一般被分為意圖識(shí)別和槽位填充兩個(gè)子任務(wù)[1]。以句子“use netflix to play music”為例,意圖識(shí)別將整個(gè)句子的意圖分類為播放音樂(lè)(PlayMusic),槽位填充為句子中的每個(gè)單詞賦予不同的槽位標(biāo)簽(即,O, B-service,O,O,O)。從任務(wù)類型來(lái)區(qū)分,意圖識(shí)別屬于句子分類任務(wù),槽位填充可以被建模成序列標(biāo)注任務(wù)。 與英文口語(yǔ)語(yǔ)言理解相比,中文口語(yǔ)語(yǔ)言理解面臨了一個(gè)獨(dú)特的挑戰(zhàn):在完成任務(wù)之前需要進(jìn)行詞語(yǔ)切分。盡管事先做了分詞,不完美的分詞系統(tǒng)仍然會(huì)錯(cuò)誤識(shí)別槽位的邊界,隨即預(yù)測(cè)了錯(cuò)誤的槽位類別,使得模型的性能遭受來(lái)自分詞系統(tǒng)的錯(cuò)誤級(jí)聯(lián)。
圖1 中文口語(yǔ)語(yǔ)言理解示例
1.2 研究動(dòng)機(jī)
為了避免來(lái)自分詞系統(tǒng)的錯(cuò)誤級(jí)聯(lián),Liu等人[2]提出了一個(gè)基于字符的聯(lián)合模型完成中文口語(yǔ)語(yǔ)言理解,達(dá)到了當(dāng)時(shí)最好的效果。
然而,直觀上,中文詞語(yǔ)信息的引入有助于對(duì)中文文本的理解,進(jìn)而正確完成意圖識(shí)別和槽位填充任務(wù)。
以圖1為例,正確的中文分詞為"周冬雨 / 有 / 哪些 / 電影"。如果不引入這種分詞信息作為補(bǔ)充,可能會(huì)給"周"賦予Datetime_date槽位標(biāo)記,將"冬雨"看作Datetime_time。而有了類似于"周冬雨"這樣詞語(yǔ)的幫助,檢測(cè)正確的槽位標(biāo)簽Artist會(huì)變得異常容易。
除此之外,由于口語(yǔ)語(yǔ)言理解由兩個(gè)類型不同又相互關(guān)聯(lián)的任務(wù)組成,利用任務(wù)間的交互可以對(duì)在兩個(gè)任務(wù)間建模細(xì)粒度的詞語(yǔ)信息遷移起到重要的幫助。
所以,在考慮任務(wù)特性的同時(shí)引入詞語(yǔ)信息是很有必要的。
因此,接下來(lái)的問(wèn)題是:是否可以在避免分詞系統(tǒng)錯(cuò)誤級(jí)聯(lián)、考慮口語(yǔ)語(yǔ)言理解任務(wù)特性的同時(shí),引入中文詞語(yǔ)信息增強(qiáng)中文意圖識(shí)別和槽位填充。
為了解決此問(wèn)題,我們提出了簡(jiǎn)單而有效的Multi-LevelWordAdapter (MLWA)模型引入中文詞語(yǔ)信息,對(duì)意圖識(shí)別和槽位填充進(jìn)行聯(lián)合建模。其中,1) sentence-level word adapter 直接融合詞級(jí)別和字級(jí)別的句子表示實(shí)現(xiàn)對(duì)意圖的識(shí)別;2) character-level word adapter 針對(duì)輸入文本中的每個(gè)字動(dòng)態(tài)地確定不同字特征和不同詞特征之間的融合比例,進(jìn)而得出該字的槽位標(biāo)簽,以達(dá)到對(duì)詞語(yǔ)知識(shí)的細(xì)粒度組合這一目的。另外,word adapter可以作為一個(gè)依附于輸出層的插件被應(yīng)用于各種基于字符的中文口語(yǔ)語(yǔ)言理解模型,其無(wú)需改變?cè)寄P推渌至康奶匦詭?lái)了更多的應(yīng)用靈活性。
2. 模型
2.1 整體框架
模型以一個(gè)普通的基于字符的模型(圖2 (a))為基礎(chǔ),附以multi-level word adapter模塊(圖2 (b))針對(duì)意圖識(shí)別和槽位填充分別引入并捕獲句子級(jí)和字符級(jí)詞語(yǔ)信息。
圖2 Multi-Level Word Adapter 整體框架
2.2 Vanilla Character-based Model
Char-Channel Encoder
自注意力編碼器(Self-Attentive Encoder)[3]由抽取序列上下文信息的自注意力模塊[4]和捕獲序列信息的雙向LSTM[5]組成。其接收中文字輸入序列 = ,獲得BiLSTM和self-attention的輸出后,連接兩者輸出字符編碼表示序列 = 。
Intent Detection and Slot Filling
意圖識(shí)別和槽位填充均以自注意力編碼器的輸出為基礎(chǔ),進(jìn)行進(jìn)一步的編碼,即兩者共享底層表示信息。其中,意圖識(shí)別模塊利用一個(gè)MLP Attention模塊獲得整個(gè)字序列的綜合表示向量 ,進(jìn)而完成對(duì)意圖的分類(意圖標(biāo)簽集表示為 ):
槽位填充應(yīng)用一個(gè)單向LSTM作為解碼器,在每個(gè)解碼時(shí)間步 ,其接收每個(gè)字表示 ,意圖標(biāo)簽編碼 ,來(lái)自上一個(gè)時(shí)間步解碼的槽位標(biāo)簽編碼 ,輸出解碼器隱層向量 ,進(jìn)而計(jì)算得到第 個(gè)字 的槽位標(biāo)簽(槽位標(biāo)簽集表示為 ):
2.3 Multi-Level Word Adapter
Word-Channel Encoder
在我們的框架中,單詞通道編碼器獨(dú)立于字符通道編碼器,也就是說(shuō),如何編碼單詞信息,編碼何種單詞信息都是自由的,在這里以使用外部中文分詞系統(tǒng)(CWS)為例。對(duì)字序列 進(jìn)行分詞可以得到單詞序列 = 。與字符通道編碼器相同,單詞通道編碼器利用另一個(gè)自注意力編碼器生成單詞編碼表示序列 = 。
Word Adapter
word adapter 是一個(gè)簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò),可以適應(yīng)性地融合不同的字特征的詞語(yǔ)特征,圖2 (c)顯示了其內(nèi)部結(jié)構(gòu)。給定輸入字符向量 和詞語(yǔ)向量 ,word adapter可以計(jì)算兩者之間的權(quán)重比例,進(jìn)而加權(quán)求和得到融合后的特征向量:
Sentence-Level Word Adapter
給定字符序列和單詞序列的上下文表示序列 和 ,可以通過(guò)上文的MLP Attention模塊獲得兩種序列的綜合表示向量 和 。
隨后,sentence-level word adapter計(jì)算融合后的綜合向量 ,并利用它預(yù)測(cè)意圖標(biāo)簽 :
Character-Level Word Adapter
在完成槽位填充之前,我們首先采納一個(gè)雙向LSTM增強(qiáng)單詞序列的表示。在每個(gè)時(shí)間步 ,單詞通道的槽位填充編碼器輸出的隱層向量由相應(yīng)的單詞表示 和意圖標(biāo)簽的編碼 計(jì)算得到。
然后,character-level word adapter針對(duì)每個(gè)輸入字符,為字符特征和詞語(yǔ)特征的不同組合確定不同的融合比例:
最后,我們利用融合后的表示 完成第 個(gè)字符的槽位標(biāo)注:
2.4 Joint Training
我們采納聯(lián)合訓(xùn)練策略優(yōu)化模型,最終的聯(lián)合目標(biāo)函數(shù)如下, and 分別是正確的意圖和槽位標(biāo)簽:
3. 實(shí)驗(yàn)
3.1 實(shí)驗(yàn)設(shè)置
數(shù)據(jù)集
我們?cè)趦蓚€(gè)公開(kāi)的中文數(shù)據(jù)集CAIS和ECDT-NLU上進(jìn)行了實(shí)驗(yàn),我們保持了兩個(gè)數(shù)據(jù)集原分割不變。
CAIS中, 訓(xùn)練集包含7995個(gè)句子,驗(yàn)證集和測(cè)試集分別有994和1024個(gè)句子。
ECDT-NLU由2576個(gè)訓(xùn)練樣本和1033個(gè)測(cè)試樣本組成。
評(píng)價(jià)指標(biāo)
與前人相同,我們使用以下三個(gè)指標(biāo)來(lái)評(píng)價(jià)中文口語(yǔ)語(yǔ)言理解模型的性能:
F1值作為槽位填充任務(wù)的評(píng)價(jià)指標(biāo)。
準(zhǔn)確率(accuracy)作為意圖識(shí)別任務(wù)的評(píng)價(jià)指標(biāo)。
使用整體準(zhǔn)確率(overall accuracy)指標(biāo)評(píng)價(jià)句子級(jí)語(yǔ)義幀解析能力。一個(gè)整體準(zhǔn)確的預(yù)測(cè)表示預(yù)測(cè)的意圖和槽位標(biāo)簽與人工標(biāo)注完全相同。
3.2 主實(shí)驗(yàn)結(jié)果
表1 主實(shí)驗(yàn)結(jié)果
所有的baseline模型均考慮了意圖識(shí)別和槽位填充兩個(gè)任務(wù)之間的相關(guān)性,并聯(lián)合建模這兩個(gè)相關(guān)任務(wù)。從結(jié)果可以看出:
我們的實(shí)驗(yàn)結(jié)果在所有指標(biāo)上均超過(guò)了這些baseline模型,達(dá)到了當(dāng)前最好的性能,證明了我們提出的multi-level word adapter的有效性。
Slot和Intent指標(biāo)的提升表明利用multi-level word adapter融入單詞信息可以促進(jìn)模型對(duì)于中文意圖和槽位的識(shí)別和標(biāo)注。
整體準(zhǔn)確率的提升歸因于考慮了兩個(gè)任務(wù)之間的相關(guān)性,并通過(guò)聯(lián)合訓(xùn)練相互增強(qiáng)兩者。
3.3 消融實(shí)驗(yàn)結(jié)果
為了驗(yàn)證已提出的word adapters的有效性,我們對(duì)以下幾個(gè)重要分量執(zhí)行了消融實(shí)驗(yàn):
w/o Multiple Levels 設(shè)置中,我們移除了character-level word adapter,在對(duì)每個(gè)字符的槽位標(biāo)記時(shí)使用相同的單詞信息。
w/o Sentence-Level word adapter 設(shè)置中,不使用sentence-level word adapter,只使用字序列編碼信息去完成意圖識(shí)別。
w/o Character-Level word adapter 設(shè)置中,不使用character-level word adapter,只使用字序列編碼信息去完成槽位填充。
表2 消融實(shí)驗(yàn)結(jié)果
上表是消融實(shí)驗(yàn)的結(jié)果,從中可以看出:
使用多層次機(jī)制帶來(lái)了顯著的正向效果,這從側(cè)面證實(shí)了對(duì)于字符級(jí)的槽位填充任務(wù),每個(gè)字需要不同的單詞信息,即細(xì)粒度的詞信息。
不使用sentence-level word adapter時(shí),在ECDT-NLU數(shù)據(jù)集上,意圖識(shí)別準(zhǔn)確率出現(xiàn)了明顯的下降,表明sentence-level word adapter可以抽取有利的詞信息去提升中文意圖識(shí)別。
不使用character-level word adapter時(shí),兩個(gè)數(shù)據(jù)集上的槽位填充指標(biāo)出現(xiàn)了不同程度的下降,證明了詞語(yǔ)信息可以為中文槽位填充的完成提供有效的指導(dǎo)信息(例如,明確的單詞信息可以幫助模型檢測(cè)單詞邊界)。
3.4 預(yù)訓(xùn)練模型探索實(shí)驗(yàn)
我們進(jìn)一步在這兩個(gè)數(shù)據(jù)集上探索了預(yù)訓(xùn)練模型的效果。我們將char-channel encoder替換為預(yù)訓(xùn)練模型BERT,模型的其他部分保持不變,進(jìn)行fine-tuning訓(xùn)練,來(lái)觀察我們提出的multi-level word adapter的效果。
表3 BERT模型探索結(jié)果
表3是對(duì)于BERT預(yù)訓(xùn)練模型的探索結(jié)果。其中,
Joint BERT 利用預(yù)訓(xùn)練模型BERT得到輸入字序列的編碼,經(jīng)過(guò)線性分類層完成意圖識(shí)別和槽位填充,隨后應(yīng)用多任務(wù)學(xué)習(xí)方法進(jìn)行訓(xùn)練。
Our Model + BERT 是使用BERT替換掉char-channel encoder作為字序列的Encoder。具體來(lái)說(shuō),BERT的[CLS]輸出向量作為字序列的綜合向量,其他輸出向量作為各字的表示向量。
實(shí)驗(yàn)結(jié)果表明,multi-level word adapter和BERT的結(jié)合可以進(jìn)一步提升模型效果,證明了我們的貢獻(xiàn)與預(yù)訓(xùn)練模型是互補(bǔ)的。
4.結(jié)論
在這篇文章中,我們的貢獻(xiàn)如下:
我們首次利用一個(gè)簡(jiǎn)單有效的方法向中文口語(yǔ)語(yǔ)言理解中引入中文單詞信息。
我們提出了一個(gè)多層次的單詞適配器,句子級(jí)和字符級(jí)單詞適配器分別向意圖識(shí)別和槽位填充提供兩個(gè)層次的單詞信息表示,從而實(shí)現(xiàn)了不同級(jí)別任務(wù)的詞信息表示定制化。
在兩個(gè)公開(kāi)數(shù)據(jù)集上進(jìn)行的實(shí)驗(yàn)表明,我們的模型取得了顯著性的改進(jìn),并實(shí)現(xiàn)了最佳的性能。此外,我們的方法與預(yù)訓(xùn)練模型(BERT)在性能上是互補(bǔ)的。
原文標(biāo)題:【工大SCIR】首次探索中文詞信息增強(qiáng)中文口語(yǔ)語(yǔ)言理解!
文章出處:【微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
模型
+關(guān)注
關(guān)注
1文章
3352瀏覽量
49280 -
nlp
+關(guān)注
關(guān)注
1文章
489瀏覽量
22119
原文標(biāo)題:【工大SCIR】首次探索中文詞信息增強(qiáng)中文口語(yǔ)語(yǔ)言理解!
文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
【「具身智能機(jī)器人系統(tǒng)」閱讀體驗(yàn)】1.初步理解具身智能
Llama 3 語(yǔ)言模型應(yīng)用
云知聲口語(yǔ)評(píng)測(cè)技術(shù)應(yīng)用于教育領(lǐng)域
Transformer語(yǔ)言模型簡(jiǎn)介與實(shí)現(xiàn)過(guò)程
nlp自然語(yǔ)言處理的主要任務(wù)及技術(shù)方法
使用Python進(jìn)行自然語(yǔ)言處理
神經(jīng)網(wǎng)絡(luò)在自然語(yǔ)言處理中的應(yīng)用
ESP32 IDF 4.3創(chuàng)建任務(wù)使用外部PSRAM分配內(nèi)存,在任務(wù)里操作FLASH死機(jī)的原因?
大語(yǔ)言模型(LLM)快速理解
![大<b class='flag-5'>語(yǔ)言</b>模型(LLM)快速<b class='flag-5'>理解</b>](https://file.elecfans.com/web2/M00/4E/DC/poYBAGLCjeiALm_WAAAYmfR7Qec474.png)
【大語(yǔ)言模型:原理與工程實(shí)踐】大語(yǔ)言模型的評(píng)測(cè)
【大語(yǔ)言模型:原理與工程實(shí)踐】大語(yǔ)言模型的預(yù)訓(xùn)練
【大語(yǔ)言模型:原理與工程實(shí)踐】揭開(kāi)大語(yǔ)言模型的面紗
OpenHarmony語(yǔ)言基礎(chǔ)類庫(kù)【@ohos.taskpool(啟動(dòng)任務(wù)池)】
![OpenHarmony<b class='flag-5'>語(yǔ)言</b>基礎(chǔ)類庫(kù)【@ohos.taskpool(啟動(dòng)<b class='flag-5'>任務(wù)</b>池)】](https://file1.elecfans.com/web2/M00/C5/D1/wKgZomYChGOAUaiiAADe1d8SeRY102.jpg)
評(píng)論