?

基于小樣本學習的口語理解方法綜述

2024-01-22 10:58鄭國風徐貞順林令德
鄭州大學學報(工學版) 2024年1期
關鍵詞:意圖口語建模

劉 納, 鄭國風, 徐貞順, 林令德, 李 晨, 楊 杰

(1.北方民族大學 計算機科學與工程學院,寧夏 銀川 750021;2.北方民族大學 圖像圖形智能處理國家民委重點實驗室,寧夏 銀川 750021)

近年來,對話式人工智能(dialogue artificial intelligence,DAI)在工業、醫療、金融和教育等領域受到廣泛的關注。DAI是一種能夠進行自然語言對話的人工智能技術,通過將自然語言處理(natural language processing,NLP)、語音識別(automatic speech recognition,ASR)[1]、語義理解和對話理解等技術應用到智能語音對話系統中,以實現實時有效的人機交互。根據DAI的應用場景,將其劃分為面向任務的對話系統(task-oriented dialogue,TOD)和開放域對話系統(open-domain dialogue,ODD)兩大類。其中,TOD主要解決針對某一具體領域的問題。例如,醫療行業部署智能對話系統完成病情分析、藥品信息查詢和提供診療方案等任務;教育領域利用智能對話系統實現教學體驗提升、定制學習方案和獲取學習資源等業務;金融領域則利用智能對話系統提供賬戶余額查詢、定制理財方案等服務。ODD需要實現與人類建立情感聯系,進行共情對話。與TOD相比,ODD的對話主題更為開放、覆蓋范圍更廣、實現難度更大,是對話式人工智能亟待發展的研究方向之一。

2022年11月,OpenAI公司發布了全新的對話式通用人工智能工具即ChatGPT,受到了全球各界的廣泛關注。ChatGPT產品的落地標志著大規模預訓練語言模型(pre-train language model,PLM)已經具備了通用人工智能的特征。在ChatGPT產品問世之后,OpenAI公司于2023年3月發布了最新的語言模型GPT-4,其性能與ChatGPT最初使用的GPT-3.5模型相比有了巨大的提升。在口語理解方面,模型的理解能力、回答的可靠性有了顯著提高。

中國類似于ChatGPT的研究也正在進行,例如百度公司推出了基于文心大模型的產品文心一言;復旦大學發布了中國第一個對話式大型語言模型MOSS;在教育領域網易公司將類ChatGPT技術進行落地研發等。目前,中國在通用人工智能領域的發展與外國相比還有很大的差距,但發展速度快,與國際領先水平的差距會隨著對大規模預訓練語言模型的持續研究而逐漸縮小。

目前針對口語理解任務的研究綜述較多,2020年,Louvan等[2]根據神經網絡結構特征對口語理解任務的方法進行歸納。2022年,Weld等[3]針對如何提高聯合模型的能力、如何捕獲深層次語義和如何提高模型的泛化性3大問題,對前人的工作進行總結。但以上大多數研究都采用非小樣本學習的方法,對研究者來說,獲取大量有標注的訓練樣本代價非常昂貴,并且對于新出現的意圖領域,帶標注的樣本較少,獲取十分困難。與之前的工作相比,本文主要對在小樣本場景中口語理解任務的建模方式進行介紹,具有較強的針對性。

本文首先簡要介紹了在非小樣本場景中,口語理解任務建模的經典方法;其次,重點闡述了在小樣本口語理解任務中為解決訓練樣本受限問題而提出的基于模型微調、基于數據增強和基于度量學習3類最新研究方法,并對不同方法的優缺點進行全面的比較與總結歸納;最后,對小樣本口語理解領域存在的問題與挑戰進行分析。

1 相關工作

口語理解(spoken language understanding, SLU)是對話式人工智能系統的核心任務之一。它的目標任務是提取用戶輸入的話語中所包含的意圖,即用戶的行為,并給予一定的反饋。2011年,Tur等[4]將口語理解任務劃分為意圖分類和槽位填充兩個子任務。如表1所示,在槽位填充任務中采用的是BIO標注方案,通過意圖分類識別用戶的具體行為。

表1 口語理解任務舉例Table 1 Examples of spoken language understanding tasks

根據兩個子任務之間的關聯程度將非小樣本場景下的口語理解相關研究劃分為4類:①無關聯建模,意圖分類與槽位填充任務分別單獨建模;②隱式關聯建模,意圖分類與槽位填充聯合建模,獲取兩個子任務之間的全部共享信息;③顯式關聯建模,意圖分類與槽位填充聯合建模,獲取兩個子任務之間有用的共享信息;④基于預訓練范式建模,以上下文感知為核心,捕獲更深層次的語義信息。

1.1 無關聯建模

無關聯的建模方式將口語理解任務劃分為意圖分類和槽位填充兩個子任務單獨建模,模塊化設計讓每個模型結構簡單、靈活,并且可以在不修改其他模塊的情況下對特定的任務進行調整。

2013年,Bhargava等[5]對口語理解任務單獨建模進行了早期嘗試。利用支持向量機(support vector machine, SVM)對意圖分類任務建模,利用條件隨機場(conditional random field, CRF)對槽位填充任務建模。同時結合上下文信息,將前一個話語中的知識合并到當前話語中,顯著提高了意圖分類與槽位填充任務的性能,這是口語理解任務無關聯建模的開端。

隨著深度學習的發展,循環神經網絡(recurrent neural networks, RNN)表現出強大的語言建模能力。2015年,Mesnil等[6]采用RNN對槽位填充任務進行了深入研究,比較了RNN的幾種變體,其中包括Elman-type網絡和Jordan-type網絡。在ATIS數據集上,兩種網絡結構的性能都優于CRF模型。2017年,Lin等[7]認為基于RNN的遞歸模型在所有的時間步中攜帶樣本的語義信息非常困難,并且會造成災難性遺忘的問題,因此對傳統的句子編碼方式進行改進,設計雙向LSTM結構,使用自注意力機制替換傳統的最大池化或平均池化,從而有效減少了RNN的長期記憶負擔。

卷積神經網絡(convolutional neural network, CNN)最初應用在圖像領域中,后來研究者將CNN應用在語義融合、句子建模等NLP任務中,同樣取得了非常出色的效果。2014年,Kim[8]在word2Vec基礎上添加了卷積神經網絡結構,使用詞向量嵌入與CNN相結合的方式進行文本分類任務。CNN利用不同大小的卷積核來提取句子中的關鍵信息,更好地建立局部語義相關性。但其存在的缺陷是難以提取對于距離大于卷積核窗口長度的特征,同時使用最大池化僅保留提取特征向量的最大值,導致部分重要的位置編碼信息丟失。針對上述CNN的缺陷,2018年,Zhao等[9]開啟了使用動態路由的膠囊網絡進行文本分類任務的早期探索。膠囊網絡利用神經元向量替代傳統神經網絡的單個神經元節點,顯著改善了CNN空間不敏感的問題。利用動態路由算法調整子膠囊與父膠囊之間的權重,解決了使用最大池化算法丟失位置編碼信息的問題。

無關聯的建模方式存在的缺陷是需要對每個任務進行單獨建模,模型結構整體較為龐大。各任務的模型之間沒有數據或功能共享,易產生數據碎片。在實際的應用場景中,某些意圖和槽位信息會在多個領域之間共享,無關聯的建模方式無法利用兩個任務之間的共享知識,導致用戶在與系統交互過程中達不到滿意的效果。為解決上述問題,后續工作提出了聯合建模的方法。

1.2 隱式關聯建模

聯合建模思想的提出,極大地促進了口語理解領域的研究。但在早期的工作中,大多數采用隱式聯合建模的方式。僅通過共享編碼器(shared encoder)捕獲意圖分類和槽位填充兩個子任務之間的共享特征,之間沒有進行任何的顯式交互。

2016年,Zhang等[10]首次提出將意圖分類與槽位填充任務進行聯合建模,并首次將RNN結構引入到意圖分類任務中。由于RNN對于捕獲長期依賴關系十分困難,同時會帶來梯度消失和梯度爆炸等問題,因此選擇基于RNNs改進的門控循環神經網絡GRU[11]作為模型的基礎架構。該聯合模型的缺陷在于需要等待輸入序列全部輸入到模型之后才能開始后續的意圖分類任務,實時性差。在實際的SLU應用中,用戶對系統的實時性要求通常較高。為解決上述問題,Liu等[12]提出基于LSTM的聯合SLU實時模型。由于LSTM具有較強的捕獲詞序列中長期依賴關系的能力,因此使用LSTM作為基本的RNN單元。通過對整個序列上的RNN單元輸出取平均值作為樣本的表示向量,利用最后一個RNN單元輸出預測的意圖類別。對當前時間步以及之前時間步的隱藏狀態建模槽位標簽之間的依賴關系,每個時間步以單個詞語作為輸入,輸出對應的槽位標簽。Liu等[13]借鑒注意力機制在機器翻譯領域的成功經驗,首次提出將基于注意力機制的循環神經網絡模型應用在聯合意圖分類和槽位填充任務中。與機器翻譯不同的是,在槽位填充任務中,輸入的文本與輸出的標簽之間具有一一對應的關系,因此采用Seq2Seq結構,如圖1所示。編碼層使用雙向LSTM,可更好地捕獲長期依賴關系。解碼層使用LSTM并添加注意力機制預測槽位標簽,在最后的隱藏層上通過前饋神經網絡輸出意圖類別。

圖1 Seq2Seq建??谡Z理解任務結構圖Figure 1 Seq2Seq modeling spoken language understanding task structure diagram

上述隱式聯合建模的方式在一定程度上利用了意圖分類和槽位填充兩個任務之間的共享信息,極大地提高了口語理解的準確性。但缺陷在于隱式聯合建模缺乏噪聲過濾機制,兩個子任務的噪聲會在聯合模型中進行傳播,導致模型性能受限。為解決上述問題,后續工作提出了顯式關聯建模的方法。

1.3 顯式關聯建模

為解決隱式關聯建模中的噪聲傳播問題,一些工作利用顯式聯合建模的方法,通過添加類似于門控機制的方式,選擇性地獲取意圖分類和槽位填充任務之間的共享信息。

圖2 SGM-SLU結構圖Figure 2 Structural diagram of the SGM-SLU

2019年,Qin等[15]認為Goo等[14]提出的僅依靠門控機制獲取意圖信息是有風險的,并且意圖信息引導槽位填充任務具體過程的可解釋性很差。因此,提出以堆棧作為數據結構的傳播模型,將意圖信息直接作為槽位填充任務的輸入,提高了模型的可解釋性。Chen等[16]提出了一種具有條件隨機場和先驗掩碼的多頭自注意力聯合模型。該模型使用多頭局部自注意力機制來提取共享特征,使用掩碼門控機制來建立意圖分類和槽位填充兩項任務輸出的相關性,并使用CRF約束槽位填充任務的輸出,充分利用了兩個任務之間的語義關系。

基于以上工作可以發現傳統基于RNN的方法只能處理一定的短期依賴,無法處理長期依賴問題。后來基于LSTM和BiLSTM的模型結構在一定程度上突破了序列模型的局限性,但固有的順序性限制了樣本的并行化訓練。顯式聯合建模的方式進一步利用了兩個任務之間的共享知識,但模型無法捕獲更深層次的語義信息。預訓練模型的發展給口語理解任務帶來了新的研究思路。

1.4 基于預訓練范式建模

自然語言處理領域中的預訓練研究思路最早可以追溯到word2Vec模型的提出。預訓練的核心在于使用大量的訓練數據,從中提取共性特征,幫助NLP下游任務簡化其訓練過程。早期的預訓練模型專注于詞向量編碼,模型的特點是上下文無關,模型只知“上文”不知“下文”,缺乏雙向交互能力,代表性的工作包括word2Vec、GloVe等。近幾年的預訓練模型以上下文感知為核心,共享知識在上下文之間進行雙向流動,代表性的工作包括ELMo、BERT、GPT等。

2019年,Chen等[18]首次將預訓練模型應用到口語理解任務中,使用BERT預訓練模型對意圖分類和槽位填充任務進行聯合建模,提出了JointBERT模型。模型結構如圖3所示,BERT預訓練模型的下游任務之一是文本分類,因此很容易就能擴展到意圖分類任務中。將[CLS]標簽的輸出替換成意圖分類器,為后續的標簽添加序列標簽器,輸出槽位最佳的標簽匹配序列。槽位標簽的預測取決于上下文單詞的預測,由于結構化預測模型可以提高槽位填充的性能,在JointBERT模型的基礎上添加CRF來對槽位標簽之間的依賴關系進行約束建模。JointBERT模型充分利用兩個子任務之間的聯系,捕獲兩個任務之間的共享知識。

圖3 JointBERT模型結構圖Figure 3 JointBERT model architecture

2020年,Qin等[19]認為僅識別對話中的顯式意圖并不能捕獲用戶的全部語義,對話中的隱式意圖是更為重要的語義獲取來源,因此提出一種協同交互式圖注意力網絡(Co-GAT)來聯合對話顯式意圖分類和隱式意圖分類這兩項任務。模型的核心是設計一個協同的圖交互層,可以同時獲取上下文信息和交互信息。這是首次將上下文信息和交互信息結合進行聯合顯隱式意圖識別的研究。

以上基于預訓練語言模型的建模方式極大地促進了口語理解領域的發展。但通過對這些預訓練模型性能的評估可以發現,目前基于預訓練的方法并不能從根本上解決現有模型可解釋性弱、泛化能力差、推理能力不足等問題,在深層次語義獲取與理解方面還遠遠落后于人類的認知水平。同時,如何對大規模預訓練語言模型進行壓縮、降低參數量是一個亟待解決的問題。

2 小樣本學習

早在2006年,Li等[20]首次提出了小樣本學習的概念。小樣本學習致力于解決數據受限的深度學習問題,通過對少量樣本甚至一個樣本的訓練使模型性能達到甚至超越大數據深度學習的效果。在生活中,有很多場景都屬于小樣本學習的范疇,例如兒童僅通過幾張繪圖卡片就能認識海洋生物,依靠少量的樣本完成自主推理的過程。受到人類快速學習能力的啟發,早期的研究人員將小樣本學習方法應用在圖像領域,解決訓練樣本數量受限的問題。2015年,Koch等[21]設計孿生神經網絡解決了one-shot圖像分類問題。Zhang等[22]在關系網絡的基礎上,通過數據增強的方法解決了小樣本圖像分類問題。在自然語言處理領域,小樣本學習發展較為緩慢,原因是圖像特征相比于文本特征更為客觀,在少量樣本的情況下,提取文本特征更為困難。

近年來,隨著預訓練模型的發展,小樣本學習在自然語言處理領域也有了一些突破。2018年,Chen等[23]使用對比學習框架解決小樣本文本分類中的區分表示和過擬合問題。Jian等[24]使用偽標簽克服小樣本學習固有的數據稀缺問題。以上方法在一定程度上緩解了由于數據過少無法支撐模型學習到足夠的參數,在訓練集上容易過擬合的問題。但大多數工作只專注于在已知的數據集上提高模型的學習上限,對于口語理解任務來說,注重的是模型對自然語言的理解與認知,而非學習淺層次的語義,這對模型的知識獲取能力提出了更高的要求。

諸葛玉頭疼欲裂,他又拿起了那把劍,運足了功力想要刺過去,可這個時候趙白又勾起唇角對他微微一笑,他仿佛聽到趙白在對自己說:“諸葛玉,原來你也不過如此!從此以后這天下第一劍客就是我趙白了!”

2.1 問題定義

在通常情況下,意圖分類被看作是文本分類任務,將文本分類到指定的某個或者多個類別中。從數學定義上看,定義包含m段文本的集合T={t1,t2,…,tm}和包含n個類別標簽的集合C={c1,c2,…,cn}。模型最終產生由集合T到集合C的一對一或一對多映射關系。槽位填充被看作是序列標注任務,定義輸入樣本X={x1,x2,…,xn},xi表示樣本中的某個字詞,模型輸出Y={y1,y2,…,yn},yi表示槽位標簽。在小樣本場景中,假設支持集S包含N種意圖類別,每種意圖類別由K個樣本組成,則將該任務稱為N-wayK-shot意圖分類任務。

在近些年的研究中,基于小樣本學習的口語理解方法主要分為3類:①基于模型微調的方法,將在大規模數據集上訓練的模型遷移到目標任務中進行微調;②基于數據增強的方法,通過增強樣本空間特征,提高模型的泛化能力;③基于度量學習的方法,利用度量函數計算樣本之間的相似性。

2.2 基于模型微調的小樣本口語理解

2015年,Dai等[25]首次提出了對語言模型進行微調的思想,模型需要先在大規模數據集上從0開始預訓練,其次在小樣本目標數據集上對全連接層或頂端神經網絡結構的參數進行微調。該時期的微調模型經過海量數據的預訓練才能表現出良好的性能,嚴重限制了模型的適應性。2018年,Howard等[26]提出了一種通用微調語言模型(universal language model fine-tuning,ULMFiT)。ULMFiT模型訓練主要由3個步驟組成:①在通用領域語言模型中進行預訓練;②在目標任務語言模型中進行微調;③在目標任務分類器上進行微調。與其他模型的區別在于ULMFiT通過判別微調讓模型的不同層學習不同的學習率。對于模型的同一層,隨著迭代次數變化,使用傾斜三角學習率讓參數進行自適應。判別微調與傾斜三角學習率機制讓模型在小樣本數據集上加快收斂速度,同時學習到更加符合目標任務的知識。

在BERT模型提出之前,傳統的雙向語言模型是將兩個單向語言模型進行組合,而BERT模型是第一個基于微調的表示模型,在大型通用語料庫中利用掩碼語言模型(masked language model,MLM)和下一句預測任務(next sentence prediction,NSP)進行預訓練。它使一系列NLP任務實現了當時最優的性能,表現出微調方法的巨大優勢。2019年,Sun等[27]在BERT模型的基礎上,研究如何通過微調BERT模型以解決長文本預處理、災難性遺忘、低資源學習等問題。類似的工作還有2020年Mohammadi等[28]比較了微調不同層結構對BERT模型性能的影響,提出了5種不同的微調結構,如圖4所示。

圖4 5種BERT模型微調結構圖Figure 4 Diagram of five fine-tuned BERT models

如表2所示,在30k-Intent(意圖分類數據集,由American Online中30 000條用戶檢索意圖文本組成)數據集上,Mohammadi等[28]經過實驗證明,BERT模型通過微調添加BiLSTM與基礎模型效果相似;在BERT模型之上添加全連接層作為分類器,可以得到最優的性能;卷積神經網絡雖然具有較為復雜的網絡結構,但該類結構不僅無法提高模型的精度,甚至會導致模型性能降低。

相比于Mohammadi等[28]的微調模型結構,2021年Zhang等[29]用少量意圖分類標注樣本微調BERT模型,提出了一種新的微調模型IntentBERT。該模型的優勢在于目標領域的樣本即使與預訓練數據差異較大,也可以直接應用在目標領域上的小樣本意圖分類任務中,無須對目標數據進一步微調。但IntentBERT具有較強的各向異性(anisotropy),語義向量之間的余弦相似度較大,不同的語義難以分離。針對各向異性的問題,2022年Zhang等[30]利用各向同性(isotropy)技術調整語義空間,通過調整目標函數的正則化項實現對模型的微調,提出了兩種正則化項:①基于對比學習的正則化;②基于相關矩陣的正則化。實驗證明,兩種正則化相結合的微調方式在BANKING77和HWU64數據集上能夠表現出更加出色的效果。

表2 5種微調模型結構對比Table 2 Comparison of five fine-tuning models

如表3所示,基于模型微調的方法思路簡單,但在真實的應用場景中,預訓練與微調之間的數據集和模型結構會產生顯著偏差,導致微調的效果和預訓練的效果會存在較大的差異性。同時,隨著預訓練語言模型的參數量呈現爆炸式增長,在下游任務上進行模型微調代價十分昂貴且耗時。為解決上述問題,后續工作提出了基于數據增強的方法和基于度量學習的方法。

表3 基于模型微調的小樣本口語理解模型對比Table 3 Comparing few-shot spoken language understanding models with model fine-tuning

2.3 基于數據增強的小樣本口語理解

數據增強是通過增加樣本的數量或空間特征,從而提高模型的泛化能力,緩解數據不足的問題?,F階段,NLP領域的數據增強方法主要有:隨機噪聲注入、詞匯替代、回譯等。

2016年,Kurata等[31]首次將數據增強的思想引入到對話口語理解任務的模型中,利用編碼器-解碼器架構對訓練樣本中的數據進行重構。在數據增強的過程中,對編碼器的輸出隱藏層添加隨機噪聲來產生不同的樣本,該方法的缺陷是增強產生的單個樣本與其他樣本之間沒有建立關系。2018年,Hou等[32]針對該缺陷提出了一種新的數據驅動架構,對訓練數據中相同語義框架的樣本之間的關系進行建模。為了讓生成的樣本具有多樣性,以Seq2Seq模型作為架構的核心,在樣本表示中添加多樣性等級隊列(diversity rank),提升了生成樣本的多樣性并過濾相似的樣本,顯著提高了語言模型在標記數據稀缺領域的性能。

數據生成的方法在一定程度上避免了模型過擬合,生成的樣本擴充了訓練樣本的數量,但缺陷在于模型會消耗額外的內存來生成噪聲數據。2019年,Kim等[33]針對該缺陷提出了基于槽位添加噪聲的方法,將數據轉換成具有相同上下文、但不同槽位標簽的短句來擴充數據。具體而言,對輸入的訓練數據進行噪聲處理后,訓練數據轉變為包含噪聲的嵌入向量,接著使用上下文作為神經網絡的輸入。模型在每一步訓練中使用不同的噪聲數據,由于數據增強在相同的嵌入空間中執行,因此不需要花費額外的內存空間。

2019年,Zhao等[34]提出構造原子模板(atomic templates)進行數據增強。原子模板生成細粒度更好的語義樣本,每一個模板由act-slot-value三元組組成。該方法的優勢在于建立起act-slot-value三者之間的關系,而不是單獨地對槽位或行為建模。在輸入到句子生成器之前,用自然語言處理對話行為,以便生成器能夠理解,提高了句子生成器的領域自適應能力。原子模板是在句子級上進行創建,減輕了人為創建模板的工作量。

為了提高口語理解模型的可變性和準確性,2021年,Peng等[35]提出基于預訓練語言模型的數據增強方法,將在預訓練階段學習到的語法和語義融合到特定領域樣本生成的過程中,該數據增強框架對生成的樣本語義可控性更強。Qin等[36]基于預訓練模型提出一種新的數據增強框架CoSDA-ML,用于生成多語種code-switching數據微調mBERT模型。該模型的主要思想是通過融合上下文信息來將源語言和多個目標語言的表示進行對齊。為了驗證所提出的動態增強機制的有效性,與靜態增強方法進行比較。模型的優勢在于動態采樣允許模型將更多的單詞表示在多種語言中進行更緊密的對齊,同時對語言的依賴性較低,與mBERT模型相比,在各項NLP任務上的性能都有顯著提高。

2022年,Sahu等[37]提出使用預訓練語言模型生成意圖樣本,對任務進行數據增強。該方法的缺陷在于未考慮到生成樣本的質量,模型可能會在低質量的生成樣本上過擬合,同時生成的樣本需要進行人工標記,成本較大。為解決上述問題,2023年,Lin等[38]引入Pointwise V-information(PVI)作為衡量過濾意圖分類數據的指標,提出了基于PVI的上下文數據增強方法(in-context data augmentation,ICDA),該方法首先在小部分訓練數據上微調模型,接著在與已知意圖相對應的樣本上生成新的樣本。經過實驗證明,在BANKING數據集上,基于PVI的方法相比于未添加PVI過濾時意圖分類準確率提高了4.45%。

對現有基于數據增強的方法進行分析和總結如表4所示。數據增強的方法通過增加樣本的數量或空間特征,一定程度上提高了模型的泛化能力,但這些方法也會存在一些缺陷。例如:生成樣本的質量會對模型產生影響,并且增強過程中可能會丟失一些關鍵信息。為了克服上述缺陷,一些工作轉變研究思路,提出了度量學習的方法。

表4 基于數據增強的小樣本口語理解模型對比Table 4 Comparing few-shot spoken language understanding models with data augmentation

2.4 基于度量學習的小樣本口語理解

目前,基于度量學習的方法已經成為解決小樣本口語理解任務的主流方法,如圖5所示,其主要思想是利用度量函數計算兩個樣本之間的距離,從而得到它們之間的相似度。

2.4.1 原型網絡

2017年,Snell等[39]為解決小樣本分類問題提出原型網絡(prototypical networks,PN)如圖6所示。該模型的整體思想是首先通過學習一個度量空間,在該空間中用每一類樣本的平均值作為該類別的樣本中心,對于查詢集新樣本x,計算x與每一類樣本中心的歐氏距離,選擇距離最小的類作為查詢集新樣本x的最終分類。與其他的小樣本學習方法相比,該模型的分類器具有較強的泛化性,同時使用樣本中心表示類別,提高了模型的魯棒性。

圖5 基于度量學習的口語理解示意圖Figure 5 Schematic of SLU with metric learning

圖6 原型網絡示意圖Figure 6 Schematic of the prototypical network

2020年,Hou等[40]在原型網絡基礎上,設計出基于相似性度量的小樣本學習模型SepProto,以及利用Goo等[14]提出的門控機制設計出JointProto模型,實現意圖分類和槽位填充的聯合學習。利用對話意圖分類領域新的研究基準FewJoint在兩個基于原型網絡的模型上進行實驗,結果表明:JointProto模型在意圖分類和槽位填充兩個任務上都優于SepProto,前者意圖分類的準確率高于后者7.25%,證明了來自聯合學習任務的額外信息能夠提高模型的性能,與普通的小樣本學習方法相比,聯合學習在語言理解上更具有優勢。2021年,Xu等[41]提出語義傳輸原型網絡(semantic transportation prototypical network, STPN),是首個專注于單詞級判別信息的小樣本意圖分類模型。Xu等[41]認為在度量空間中,不相關的詞會導致同一類詞的全局特征表示相距較遠。2021年,Dopierre等[42]在原型網絡的基礎上進行擴展,提出了一種應用在意圖分類任務中的短文本分類元學習算法PROTAUGMENT。Dopierre等[42]認為元學習模型在小樣本訓練過程中很容易導致過擬合,通過在原型網絡框架中引入一種無監督離散釋義損失去解決該問題。將自動編碼器在Seq2Seq任務上進行預訓練的去噪過程轉化為釋義生成任務,不同的解碼方法大多使用基于Beam Search算法進行擴展,使用Diverse Beam Search(DBS)算法替代Beam Search算法,進一步提高了釋義的多樣性。2022年,Yang等[43]認為由于訓練數據有限,難以覆蓋用戶的多樣性表達,導致如今的小樣本學習方法在小樣本口語理解任務中效果較差。受到Word2Vec模型中單詞類比關系的啟發,提出了一種多樣性特征增強的原型網絡(diversity features enhanced prototypical network, DFEPN)模型,通過對已知意圖樣本的多樣性特征進行充分挖掘,并將其遷移到新的意圖樣本中,從而達到增強新的意圖樣本多樣性特征的效果。

2.4.2 歸納網絡

基于度量學習的神經網絡架構往往致力于將新的查詢集樣本與支持集中的樣本進行比較,2019年,Geng等[44]認為同一類別的不同表述有很多種,這種比較會忽視從樣本表示到類別表示的建模。因此在Yang等[43]的啟發下,將小樣本學習方法和膠囊網絡進行融合,提出了一種新穎的歸納網絡(induction networks,IN)。使用膠囊和動態路由從基于樣本的廣義類級表示中捕獲信息,動態路由方法使模型在小樣本文本分類任務中具有更好的泛化能力。模型采用了Encoder-Induction-Relation三級框架,架構如圖7所示。其中Encoder 模塊使用基于自注意力機制的BiLSTM編碼輸入的詞向量矩陣,得到每個樣本的句子級別語義表示;支持集中每個樣本被編碼為樣本向量后,Induction模塊將其視為膠囊的輸入,經過Dynamic Routing變換后,輸出膠囊歸納出支持集樣本的類別特征;Relation模塊用于度量查詢集和類別之間的語義關系,進而完成分類。

圖7 歸納網絡架構圖Figure 7 Induction networks architecture diagram

2020年,Geng等[45]在IN的基礎上進行改進,提出動態記憶歸納網絡(dynamic memory induction networks, DMIN),與文獻[44]區別在于編碼模塊采用BERT-base,并增加了預訓練監督學習階段。經過動態記憶模塊后,樣本向量得到更好的分離,動態記憶模塊能夠有效利用監督學習的經驗來編碼低級別樣本特征和高級別樣本特征之間的語義關系,從而實現小樣本文本分類。

在小樣本學習方法中,相似性度量模型除了原型網絡、歸納網絡,還有孿生網絡、匹配網絡[46]和關系網絡[47]等,但針對后三者的研究主要集中在圖像領域。如表5所示,在小樣本口語理解任務中,將基于相似性度量的方法與深度學習方法相結合,是該領域今后的研究重點。

表5 基于度量學習的小樣本口語理解模型對比Table 5 Comparing few-shot spoken language understanding models with metric learning

3 挑戰與前沿

隨著對話式人工智能的持續發展,新的口語理解任務不斷出現。在實際的應用場景中,用戶表達的語義具有多樣性,目前的預訓練語言模型并不能真正解決深度學習模型魯棒性差、可解釋性弱、推理能力缺失等問題。

3.1 零樣本口語理解

零樣本口語理解的任務是使模型能夠在沒有接受樣本訓練的情況下,對用戶輸入的內容進行識別和理解。目前針對零樣本口語理解任務可以從以下3個方面進行研究:①借助外部資源,將現有意圖中的先驗知識轉移到新意圖中,從而實現對新意圖的推斷預測。但該方法需要對每一種新意圖添加額外的輔助信息,代價十分昂貴;②基于相似性學習的方法度量新意圖標簽和已知意圖樣本之間的相似性,但在不同的語境中,語義會發生動態變化,從而產生語義漂移問題;③利用槽位填充任務指導意圖分類,兩個任務聯合建模有助于提高意圖分類的準確率。但兩個任務產生的噪聲會在模型中傳播,如何有效控制噪聲、對有用知識進行增強,是未來的主要研究方向之一。

3.2 中文口語理解

目前,針對中文的口語理解研究遠不如對英文的口語理解研究,其中一方面的原因是帶有標注的中文意圖訓練數據較少,對中文文本進行標注代價十分昂貴;另一方面是中文具有比英文更為復雜的結構,表達的語義更加豐富。

2021年,Sun等[48]提出ERNIE 3.0模型在各種NLP任務中表現出比已有的中文預訓練語言模型更加出色的效果。ERNIE 3.0模型的參數量更少,在小樣本環境中可以快速進行模型微調和訓練,同時在情感分析、口語理解等任務上表現出強大的性能。但在中文意圖識別任務中,ERNIE模型的潛力還有進一步挖掘的空間,是未來該領域的工作者進一步研究的方向之一。

3.3 開放域口語理解

現階段的對話系統大多停留在封閉的知識領域內,在真實的應用場景中,更多的是需要解決開放領域的問題。2022年,Zhang等[49]構建了兩個用于開放域意圖分類的數據集CLINC-Single-Domain-OOS與BANKING77-OOS。作者在BERT模型上進行驗證后發現,經過預訓練的Transformer模型在兩個數據集上的魯棒性很差,開放域場景下的小樣本口語理解還需要進行細粒度更好的研究。

目前針對開放域意圖識別可以細分為兩個子任務:①將開放域意圖與已知域內意圖分離;②捕獲開放域意圖的細粒度類別。模型需要在確?!耙阎鈭D”準確識別的前提下,捕獲沒有先驗知識的“未知意圖”。未來的研究需要尋找合適的決策邊界,平衡對“已知意圖”和“未知意圖”的識別能力。

3.4 跨語言口語理解

目前大多數針對口語意圖識別的研究以英文為主。但對于不流行或者資源較少的語言來說,在口語理解任務中,同樣需要找到一種合適的解決方案?,F階段針對跨語言口語理解的研究主要有兩種方式。一種是選擇基準英語數據集,將其翻譯成目標語言。2020年,Bhathiya等[50]先在英語樣本中學習先驗知識,接著在西班牙語和泰語樣本上驗證模型的適應性。該方法存在的缺陷是機器翻譯時會出現數據扭曲問題,樣本質量顯著降低而無法訓練語言模型。另一種是利用遷移學習的方法。2021年,Sharma等[51]提出多語言教師-學生網絡(multi-lingual teacher-student network,MTSN),將從mBERT模型中學習到的先驗知識遷移到目標語言任務中。該方法減少了對目標語言樣本量的需求,但會受到不同語種表達方式的差異而顯著影響模型的性能。

4 結束語

在口語理解領域中,基于大數據的預訓練語言模型已經在傳統的口語理解數據集上取得了接近飽和的效果。相比研究經典數據集,在現實的應用場景中,更多面對的是訓練樣本受限的問題。近年來,隨著小樣本學習方法在圖像領域的深入研究,越來越多的NLP領域研究者開始關注該方法在口語理解任務中的應用。本文重點闡述了小樣本場景下的模型微調、數據增強和度量學習3類方法,對不同模型的可解釋性、推理能力以及泛化能力等性能進行對比。未來的研究重點是用戶在不同場景下語義多樣性的表達,以進一步提高模型在深層次語義上的理解能力。

猜你喜歡
意圖口語建模
原始意圖、對抗主義和非解釋主義
陸游詩寫意圖(國畫)
制定法解釋與立法意圖的反事實檢驗
聯想等效,拓展建?!浴皫щ娦∏蛟诘刃鲋凶鰣A周運動”為例
酒中的口語詩
基于PSS/E的風電場建模與動態分析
不對稱半橋變換器的建模與仿真
提高口語Level 讓你語出驚人
口語對對碰
燕山秋意圖
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合