王俊東,黃沛杰,林仙茂,徐禹洪,李凱茵
(華南農(nóng)業(yè)大學(xué) 數(shù)學(xué)與信息學(xué)院,廣東 廣州 510642)
?
限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)中超出領(lǐng)域話語(yǔ)的協(xié)處理方法
王俊東,黃沛杰,林仙茂,徐禹洪,李凱茵
(華南農(nóng)業(yè)大學(xué) 數(shù)學(xué)與信息學(xué)院,廣東 廣州 510642)
領(lǐng)域外話語(yǔ)的開(kāi)放性、口語(yǔ)化以及表達(dá)多樣性,使得現(xiàn)有的限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)不能很好地處理超出領(lǐng)域話語(yǔ)。該文提出了一種限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)協(xié)處理方案,基于人工智能標(biāo)記語(yǔ)言AIML,設(shè)計(jì)一套理解開(kāi)放語(yǔ)義用戶話語(yǔ)的理解模板,并對(duì)未匹配話語(yǔ)基于話語(yǔ)相似度進(jìn)行理解模板分類,進(jìn)而采用擴(kuò)展有限狀態(tài)自動(dòng)機(jī)處理模式,結(jié)合對(duì)話流程上下文的狀態(tài)及信息,實(shí)現(xiàn)理解模板到應(yīng)答模板的轉(zhuǎn)換,改變了單純模板匹配方法在對(duì)話流程控制方面的相對(duì)缺失。中文手機(jī)導(dǎo)購(gòu)領(lǐng)域的測(cè)試表明,該文所提出的協(xié)處理方法能有效地輔助口語(yǔ)對(duì)話系統(tǒng)完成限定領(lǐng)域完整對(duì)話流程,得到更好的用戶滿意度。
超出領(lǐng)域話語(yǔ);協(xié)處理;AIML;有限狀態(tài)自動(dòng)機(jī);口語(yǔ)對(duì)話系統(tǒng)
口語(yǔ)對(duì)話系統(tǒng)(spoken dialogue system)指的是通過(guò)自然語(yǔ)言和人交流的計(jì)算機(jī)系統(tǒng),主要研究如何能讓計(jì)算機(jī)理解并生成人們?nèi)粘K褂玫恼Z(yǔ)言,對(duì)人向計(jì)算機(jī)提出的問(wèn)題,通過(guò)對(duì)話的方式,用自然語(yǔ)言進(jìn)行回答。研究對(duì)話系統(tǒng)的目的是讓人同計(jì)算機(jī)的交流更方便,讓計(jì)算機(jī)具有類似人類的思維從而幫助人們完成更多的工作,從這個(gè)角度看,能勝任某一專業(yè)領(lǐng)域工作的面向任務(wù)(task-oriented)的限定領(lǐng)域(restricted domain)對(duì)話系統(tǒng)[1-8],比開(kāi)放領(lǐng)域(open domain),如面向聊天(chat-oriented)的對(duì)話系統(tǒng)[9-10]更有研究意義和應(yīng)用價(jià)值[11]。然而,當(dāng)使用自然語(yǔ)言對(duì)話時(shí),即使用戶了解某對(duì)話系統(tǒng)的限定領(lǐng)域,例如: 醫(yī)療信息咨詢、導(dǎo)航或者導(dǎo)購(gòu),用戶在對(duì)話流程中仍然不可避免會(huì)使用一些超出領(lǐng)域(out-of-domain,OOD)話語(yǔ)(utterance),如問(wèn)候、個(gè)人問(wèn)題、表態(tài)等。事實(shí)上,OOD話語(yǔ)的現(xiàn)象很常見(jiàn),如AT&T的“How may I help you”系統(tǒng)[2],以及BTaxeCT和Lucent Bell合作開(kāi)發(fā)的“OASIS call-steering”系統(tǒng)[5],大約有20%的用戶問(wèn)題是OOD的。盡管這些限定領(lǐng)域?qū)υ捪到y(tǒng)從完成任務(wù)角度上看只需要專注于自己預(yù)定義的業(yè)務(wù)功能,但是,如果能較為妥善地處理好OOD話語(yǔ),而不僅僅是提示用戶話語(yǔ)超出領(lǐng)域,將會(huì)有效地提高用戶體驗(yàn)[12]。
目前已有的限定領(lǐng)域?qū)υ捪到y(tǒng),如導(dǎo)航系統(tǒng)[4, 8]、導(dǎo)游系統(tǒng)[7]和信息查詢系統(tǒng)[1-3, 5-6]等,基于語(yǔ)義和語(yǔ)法相結(jié)合的技術(shù),并結(jié)合近年來(lái)逐漸成為熱點(diǎn)的意圖追蹤[13]和對(duì)話管理[14-16],能有效地理解和處理領(lǐng)域內(nèi)語(yǔ)義的話語(yǔ)。然而,面對(duì)OOD話語(yǔ)的開(kāi)放性、口語(yǔ)化以及表達(dá)多樣性,現(xiàn)有的限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)在處理OOD話語(yǔ)時(shí)仍然存在一定困難。不少研究人員開(kāi)始進(jìn)行關(guān)于限定領(lǐng)域?qū)υ捪到y(tǒng)OOD話語(yǔ)問(wèn)題的研究,例如,Lane等人[17]開(kāi)發(fā)的機(jī)器輔助對(duì)話系統(tǒng)和Tür等人[18]開(kāi)發(fā)的虛擬個(gè)人助理系統(tǒng)使用基于SVM(support vector machine)主題分類方法計(jì)算源話語(yǔ)在領(lǐng)域內(nèi)各子領(lǐng)域的分類置信度,再使用置信度向量訓(xùn)練一個(gè)線性判斷模型,并檢測(cè)源話語(yǔ)是否超出領(lǐng)域,若超出領(lǐng)域,系統(tǒng)可以提示用戶當(dāng)前系統(tǒng)無(wú)法處理該任務(wù)并引導(dǎo)用戶回到領(lǐng)域可處理范圍。Celikyitmaz等人[19]也提出了使用LDA(latent dirichlet allocation)主題模型對(duì)多領(lǐng)域問(wèn)題做主題聚類并檢測(cè)OOD情況。Reichel等人研究的汽車導(dǎo)航領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)[8],將在多領(lǐng)域內(nèi)切換過(guò)程中出現(xiàn)錯(cuò)誤且不能被任何子領(lǐng)域接受的話語(yǔ)歸為OOD情況,并返回給用戶做領(lǐng)域選擇。但這些工作主要集中在OOD話語(yǔ)的檢測(cè)識(shí)別,并根據(jù)檢測(cè)結(jié)果簡(jiǎn)單響應(yīng)用戶,而缺少對(duì)OOD話語(yǔ)的有效處理方法。
面向聊天的開(kāi)放領(lǐng)域?qū)υ捪到y(tǒng),如國(guó)外的ELIZA[20]、PARRY[21]和ALICE[9, 22],國(guó)內(nèi)的清華大學(xué)圖書(shū)館的“小圖”[23]、機(jī)器人小I[24]等,由于設(shè)計(jì)初衷就是開(kāi)放領(lǐng)域,在覆蓋多領(lǐng)域的語(yǔ)料庫(kù)的支持下,一定程度上滿足了話語(yǔ)開(kāi)放性、口語(yǔ)化和表達(dá)多樣性的要求。這些系統(tǒng)可以與用戶進(jìn)行基于自然語(yǔ)言話語(yǔ)的交互,并已被廣泛應(yīng)用到機(jī)器助理比如反恐支持平臺(tái)[25]、計(jì)算機(jī)輔助英語(yǔ)學(xué)習(xí)[26]和健康咨詢[27]等。然而,這些面向聊天的對(duì)話系統(tǒng)幾乎都是基于完全精確匹配或者很弱的模糊匹配的模板來(lái)搜索回答[28],并沒(méi)有真正地“理解”用戶的問(wèn)題,并且難于掌控對(duì)話流程的系統(tǒng)狀態(tài)和信息。這類對(duì)話系統(tǒng)不能單獨(dú)應(yīng)用到復(fù)雜任務(wù)的限定領(lǐng)域?qū)υ?。此外,語(yǔ)料庫(kù)的構(gòu)建是此類系統(tǒng)的瓶頸,盡管有一些關(guān)于語(yǔ)料庫(kù)自動(dòng)建設(shè)[12, 29]、超出詞匯處理[10]等的研究,如Banchs[29]和Ameixa等人[12]分別采用電影劇本和電影字幕來(lái)構(gòu)建語(yǔ)料庫(kù),但其話語(yǔ)覆蓋程度仍然遠(yuǎn)遠(yuǎn)不足以應(yīng)用于限定領(lǐng)域?qū)υ捪到y(tǒng)中OOD話語(yǔ)的處理。此外,單純模板匹配方法由于對(duì)話上下文及對(duì)話狀態(tài)方面的缺失,難以真正提高OOD話語(yǔ)回答的針對(duì)性。
本文提出一種限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)中處理OOD話語(yǔ)的協(xié)處理方案,主要貢獻(xiàn)包括:
(1) 根據(jù)基于模板匹配方法適合開(kāi)放語(yǔ)義、口語(yǔ)化話語(yǔ)以及表達(dá)多樣性的特點(diǎn),基于人工智能標(biāo)記語(yǔ)言AIML(artificial intelligence markup language)[30],設(shè)計(jì)一套用于理解OOD話語(yǔ)的理解模板,并采用基于話語(yǔ)相似度的分類方法,將未匹配話語(yǔ)分類到相應(yīng)的理解模板,從某種程度上解決了語(yǔ)料庫(kù)一次性完備構(gòu)建的困難。
(2) 采用擴(kuò)展有限狀態(tài)自動(dòng)機(jī)(extended finite-state machine,EFSM)處理模式,結(jié)合對(duì)話上下文信息及對(duì)話狀態(tài),實(shí)現(xiàn)理解模板到應(yīng)答模板的轉(zhuǎn)換,并給出不同應(yīng)答模板相應(yīng)的處理程序,改變了單純模板匹配方法在對(duì)話流程控制方面的相對(duì)缺失。
本文的方案被應(yīng)用到我們開(kāi)發(fā)的手機(jī)導(dǎo)購(gòu)對(duì)話系統(tǒng)[31],應(yīng)用測(cè)試結(jié)果表明,能有效地輔助系統(tǒng)完成限定領(lǐng)域?qū)υ捔鞒?,得到更好的用戶滿意度。本文后續(xù)部分安排如下:第二節(jié)簡(jiǎn)要介紹協(xié)處理方案的系統(tǒng)框架及處理流程;第三節(jié)詳細(xì)介紹了協(xié)處理方案;第四節(jié)給出了測(cè)試驗(yàn)證結(jié)果;最后,第五節(jié)總結(jié)了本文的工作并做了簡(jiǎn)要的展望。
圖1是我們開(kāi)發(fā)的限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)的系統(tǒng)框架,目前應(yīng)用于手機(jī)導(dǎo)購(gòu)領(lǐng)域,加粗部分是本文提出的協(xié)處理方案。
在這個(gè)框架里,“主處理器”基于自然語(yǔ)言處理技術(shù),完成攜帶領(lǐng)域語(yǔ)義信息的話語(yǔ)的處理。語(yǔ)義提取、語(yǔ)法分析等技術(shù)被應(yīng)用于口語(yǔ)語(yǔ)言理解?;钴S信息表象征著對(duì)話系統(tǒng)的“記憶”,目前保持了三種活躍信息,包括商品屬性值、對(duì)話的上下文以及已推薦商品列表。其中,商品屬性值是一般對(duì)話系統(tǒng)具有的對(duì)話語(yǔ)義框(dialogue frame)[32-33]中的槽信息(slot)。
而“協(xié)處理器”,顧名思義,就是主處理器的協(xié)處理機(jī)制,并不單獨(dú)完成導(dǎo)購(gòu)服務(wù),僅在主處理器中的OOD話語(yǔ)檢測(cè)模塊識(shí)別不到有效領(lǐng)域語(yǔ)義信息時(shí)接收主處理器傳來(lái)的用戶輸入話語(yǔ),并協(xié)助完成該對(duì)話步驟。協(xié)處理方案包括一套有三個(gè)模塊的協(xié)處理機(jī)制和三個(gè)信息庫(kù),其中,AIML語(yǔ)料庫(kù)支持對(duì)OOD話語(yǔ)到理解模板的映射,模板類別語(yǔ)料庫(kù)支持未匹配話語(yǔ)的理解模板分類,EFSM支持模式轉(zhuǎn)換?;贏IML和EFSM的協(xié)處理流程是:首先加載AIML語(yǔ)料庫(kù)到內(nèi)存并初始化需要的數(shù)據(jù),用戶話語(yǔ)進(jìn)入話語(yǔ)理解模塊后匹配上AIML中的理解模板或者在未匹配時(shí)通過(guò)模板分類算法得到理解模板;接著通過(guò)模式轉(zhuǎn)換模塊,完成系統(tǒng)模式的轉(zhuǎn)換和理解模板到應(yīng)答模板的映射,轉(zhuǎn)移條件中的上下文信息來(lái)自活躍信息表;最后是對(duì)應(yīng)答模板進(jìn)行分類處理,得到相應(yīng)的應(yīng)答并返回主處理。
圖1 限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)的系統(tǒng)框架
3.1 基于AIML的話語(yǔ)理解模板
AIML[30]是經(jīng)典聊天機(jī)器人ALICE[9, 22]所采用的一種XML的人工智能標(biāo)記語(yǔ)言,定義了一整套具有特定含義的標(biāo)簽。由包含
通過(guò)對(duì)AIML語(yǔ)料庫(kù)的回答模板()進(jìn)行合理的歸類,有效降低語(yǔ)料庫(kù)建設(shè)的難度。相比于每個(gè)話語(yǔ)都有專門(mén)的回答,雖然在一定程度上降低了系統(tǒng)對(duì)用戶話語(yǔ)的理解的“準(zhǔn)確”度,但并不會(huì)影響后續(xù)處理和應(yīng)答。同時(shí)由于理解模板及后續(xù)介紹的模式轉(zhuǎn)換抓住了多樣化用戶話語(yǔ)的共性,具有一定通用性,也易于擴(kuò)展到其他限定領(lǐng)域。目前理解模板分為四大類:閑聊、表態(tài)、導(dǎo)購(gòu)和其他,每一大類又分為若干小類,如表1所示。如“閑聊”大類的“問(wèn)候”小類對(duì)應(yīng)的理解模板為{#閑聊#問(wèn)候#直接模板},其中的“直接摸板”是可選的附加內(nèi)容,用于在后續(xù)組織應(yīng)答處理中提供更有針對(duì)性的回答。
表1 理解模板的分類與話語(yǔ)示例
值得注意的是,對(duì)于模板未覆蓋的話語(yǔ),單純的AIML機(jī)制只能將其歸類為{#其他#其他#直接模板},并采用最模糊的回答,也即是AIML機(jī)制中典型的單獨(dú)通配符“*”[30],并選用一些通用的回答作為返回內(nèi)容,例如,“沒(méi)聽(tīng)懂,請(qǐng)換一個(gè)說(shuō)法”。
3.2 基于話語(yǔ)相關(guān)度的話語(yǔ)理解模板分類
對(duì)于AIML未匹配的用戶話語(yǔ),也即“其他”大類的“其他”小類,本文提出一種基于話語(yǔ)相關(guān)度的話語(yǔ)理解模板分類模型。該模型利用統(tǒng)計(jì)方法和VSM (vector space model)模型構(gòu)造語(yǔ)料庫(kù),然后以類別語(yǔ)料庫(kù)作為話語(yǔ)分類的知識(shí)庫(kù)進(jìn)行分類。該模型增強(qiáng)了系統(tǒng)對(duì)大部分未被單純AIML機(jī)制良好處理的OOD用戶話語(yǔ)的理解。
3.2.1 類別語(yǔ)料庫(kù)的構(gòu)建
類別語(yǔ)料庫(kù)是主題、主題特征詞及其權(quán)重的元組集合。因?yàn)闃?gòu)造涵蓋各個(gè)領(lǐng)域的通用類別語(yǔ)料庫(kù)工作量巨大,尤其在網(wǎng)絡(luò)時(shí)代,新的詞匯不斷出現(xiàn),所以我們只對(duì)感興趣的領(lǐng)域類別建立類別語(yǔ)料庫(kù),類別語(yǔ)料庫(kù)的類別與理解模板的小類一致,如“表態(tài)|猶豫”等。
設(shè)感興趣的原始話語(yǔ)集為US(c),其中,c為類別數(shù),用傳統(tǒng)的詞袋表示法將話語(yǔ)U表示為VSM形式,由于分詞是整個(gè)話語(yǔ)表示的基礎(chǔ),不同的分詞結(jié)果有差異,我們采用效果比較好的中國(guó)科學(xué)院計(jì)算技術(shù)研究所的ICTCLAS*http://ictclas.nlpir.org/分詞系統(tǒng)作為分詞標(biāo)準(zhǔn)。經(jīng)過(guò)分詞處理和統(tǒng)計(jì),話語(yǔ)U表示為U={(t1, pos1), (t2,pos2), …,(ti,posi), …, (tn,posn)},其中,ti是分詞后所得的詞元(詞或短語(yǔ)),posi是ti的詞性。類別語(yǔ)料庫(kù)特征詞提取算法的偽代碼如圖2所示。
圖2 類別語(yǔ)料庫(kù)特征詞提取算法偽代碼
算法第八步中的詞元的權(quán)值采用期望交叉熵計(jì)算得到式(1)。
(1)
由式(1)可知,當(dāng)詞ti在類別語(yǔ)料庫(kù)中越分散(即出現(xiàn)的類別數(shù)越多),權(quán)值wi也會(huì)相應(yīng)降低,說(shuō)明該詞的辨識(shí)度不高;如果詞ti越集中,權(quán)值wi也會(huì)相應(yīng)升高,表明該詞的辨識(shí)度高。
3.2.2 話語(yǔ)理解模板分類
首先根據(jù)用戶話語(yǔ)特征詞的語(yǔ)料權(quán)值和頻率計(jì)算話語(yǔ)的類別相似度矩陣,進(jìn)而根據(jù)相似度矩陣來(lái)找出最高相似度的理解模板類別。話語(yǔ)相關(guān)度計(jì)算算法的偽代碼如圖3所示。
圖3 話語(yǔ)相關(guān)度計(jì)算算法偽代碼
經(jīng)測(cè)試,本節(jié)提出的方法可以解決大部分的OOD話語(yǔ)分類問(wèn)題。剩余的部分與各個(gè)類別的相似度都不高的話語(yǔ),則繼續(xù)歸類為{#其他#其他#直接模板}。
3.3 基于EFSM的模式轉(zhuǎn)換
在有效識(shí)別到相應(yīng)理解模板的基礎(chǔ)上,本文借鑒基于模式的對(duì)話模型[16]在對(duì)話狀態(tài)及信息控制上的優(yōu)點(diǎn),結(jié)合對(duì)話上下文信息及對(duì)話狀態(tài),采用EFSM處理方法得到合適的應(yīng)答策略,提高OOD話語(yǔ)的處理效果。
3.3.1 形式化模式轉(zhuǎn)換
我們采用擴(kuò)展的FSM來(lái)描述協(xié)處理模式及其轉(zhuǎn)換,擴(kuò)展包括狀態(tài)和條件兩方面。
(1) 狀態(tài)的擴(kuò)展。在對(duì)話系統(tǒng)中,系統(tǒng)狀態(tài)通常伴隨著系統(tǒng)動(dòng)作,因此,在傳統(tǒng)的FSM的狀態(tài)的基礎(chǔ)上,我們將系統(tǒng)狀態(tài)和動(dòng)作放到一起并稱之為模式P。
(2) 條件的擴(kuò)展。本文綜合了理解模板、系統(tǒng)事件和上下文信息作為模式轉(zhuǎn)換的條件。其中系統(tǒng)事件主要是系統(tǒng)內(nèi)部的一些機(jī)制,指系統(tǒng)掌控對(duì)話過(guò)程所做的必要監(jiān)聽(tīng)事件,例如對(duì)用戶相同輸入的回合數(shù)計(jì)數(shù)事件等。系統(tǒng)會(huì)不斷監(jiān)控對(duì)話處于協(xié)處理的回合數(shù),如果回合數(shù)過(guò)多,就需要及時(shí)引導(dǎo)回主處理程序。上下文包括了上一系統(tǒng)狀態(tài),以及歷史交互中的所有語(yǔ)義信息和用戶意圖追蹤的結(jié)果,還包括一些關(guān)鍵狀態(tài)信息,例如上下文中會(huì)記錄當(dāng)前正談?wù)摰氖悄目钌唐贰⒛膫€(gè)參數(shù)等。
協(xié)處理的模式轉(zhuǎn)換的形式化定義如下:
? 模式P
? 理解模板UT
? 系統(tǒng)事件E
? 上下文C
? 應(yīng)答模板AT
? 輸入集I ∈ (UT ∪ E ∪ C)
? 輸出集O ∈AT
? 轉(zhuǎn)移函數(shù)T:P × I → P' × O
圖4是一個(gè)模式轉(zhuǎn)換圖例,提供執(zhí)行模型和可理解的圖表達(dá)。目前只考慮“一跳”的模式轉(zhuǎn)移。圖4中陰影模式表示任意模式,也即是任意模式可以進(jìn)入?yún)f(xié)處理。
圖4 模式轉(zhuǎn)換圖例
3.3.2 模式
傳統(tǒng)狀態(tài)機(jī)的狀態(tài)可用于描述系統(tǒng)當(dāng)前所處階段的相關(guān)信息,本文提出的協(xié)處理模式提供了更完善的動(dòng)作信息,下面給出其定義:
? 模式狀態(tài)(PS):系統(tǒng)接到用戶動(dòng)作后所處的狀態(tài)。
? 模式動(dòng)作(PA):系統(tǒng)狀態(tài)發(fā)生改變時(shí)的動(dòng)作,本文將其定義為應(yīng)答模板的形式。
表2是分析不同理解模板在不同條件下的可能狀態(tài)及動(dòng)作得到的協(xié)處理模式。
表2 協(xié)處理模式
3.3.3 模式轉(zhuǎn)換例子
圖5給出一個(gè)在對(duì)話初始階段用戶問(wèn)候進(jìn)入?yún)f(xié)處理的例子,模式轉(zhuǎn)換條件中的上下文信息依據(jù)的是交互歷史中系統(tǒng)是否已有問(wèn)候語(yǔ)義;圖6是用戶猶豫表態(tài)后進(jìn)入?yún)f(xié)處理的例子,模式轉(zhuǎn)換條件中的上下文信息依據(jù)的是關(guān)鍵語(yǔ)義信息中有無(wú)談?wù)撌謾C(jī)以及談?wù)摰纳唐返臄?shù)量。系統(tǒng)在任何狀態(tài)下接收到圖6中所示的條件后,隨即轉(zhuǎn)換到相應(yīng)的協(xié)處理模式,在轉(zhuǎn)換到對(duì)應(yīng)的狀態(tài)的同時(shí),執(zhí)行相應(yīng)的動(dòng)作,下一次的模式轉(zhuǎn)換是未知的,可能重新進(jìn)入到協(xié)處理模式,也可能回到主處理中的模式,這需要看用戶的下一個(gè)輸入話語(yǔ)。
圖5 對(duì)話開(kāi)始階段進(jìn)入?yún)f(xié)處理的例子
圖6 用戶猶豫表態(tài)后進(jìn)入?yún)f(xié)處理的例子
3.4 應(yīng)答模板處理程序
本節(jié)以兩個(gè)代表例子簡(jiǎn)要介紹應(yīng)答模板的設(shè)計(jì)思想。
(1) “#主動(dòng)引導(dǎo)#”的處理
當(dāng)系統(tǒng)識(shí)別到應(yīng)答模板為{#主動(dòng)引導(dǎo)#應(yīng)答句式}時(shí),先在活躍信息表中根據(jù)優(yōu)先級(jí)查找先前未提及的參數(shù)作為引導(dǎo)提問(wèn)參數(shù),然后將選出來(lái)的參數(shù)名稱記錄到活躍信息表中的“當(dāng)前關(guān)聯(lián)參數(shù)”,同時(shí)將該參數(shù)填到應(yīng)答模板中應(yīng)答句式的相應(yīng)位置。
(2) “#選擇差異參數(shù)#”的處理
差異參數(shù)是指多款手機(jī)的參數(shù)值存在一定程度的差異的參數(shù)信息,例如,兩款手機(jī),一款屏幕尺寸4.0寸,另一款4.5寸,因此屏幕尺寸就是差異信息。而對(duì)于兩款手機(jī),如果某個(gè)屬性只存在細(xì)微差異,如價(jià)格分別為1990元和2000元,則不認(rèn)為價(jià)格是差異信息。
4.1 應(yīng)用例子
本文的研究已應(yīng)用到我們開(kāi)發(fā)的中文手機(jī)導(dǎo)購(gòu)系統(tǒng)。圖7是一個(gè)開(kāi)發(fā)人員測(cè)試的例子。可以看到本文提出的協(xié)處理方案能有效地輔助對(duì)話系統(tǒng)完成限定領(lǐng)域完整對(duì)話流程,包括對(duì)第(2)、(10)、(14)和(18)句用戶話語(yǔ)的處理。其他用戶話語(yǔ)由于都攜帶領(lǐng)域語(yǔ)義信息,由主處理器處理。
圖7 中文手機(jī)導(dǎo)購(gòu)系統(tǒng)的一個(gè)運(yùn)行例子
其中,第(2)句用戶話語(yǔ)對(duì)應(yīng)的理解模板為{#閑聊#問(wèn)候#直接模板},結(jié)合圖5的模式狀態(tài)轉(zhuǎn)移,轉(zhuǎn)到應(yīng)答模板{#主動(dòng)引導(dǎo)#應(yīng)答句式},進(jìn)而協(xié)處理器根據(jù)主動(dòng)引導(dǎo)處理算法,從活躍信息表中查詢當(dāng)時(shí)用戶未提及且優(yōu)先級(jí)最高的參數(shù)進(jìn)行詢問(wèn)引導(dǎo),在這個(gè)運(yùn)行實(shí)例中,該參數(shù)是“手機(jī)品牌”。對(duì)第(10)句用戶話語(yǔ)的理解模板為{#表態(tài)#猶豫#直接模板},由于上下文記錄系統(tǒng)正在談?wù)摰氖嵌嗫钍謾C(jī),根據(jù)圖6的模式轉(zhuǎn)換,轉(zhuǎn)到應(yīng)答模板{#選擇差異參數(shù)#應(yīng)答句式},選擇出差異參數(shù)“屏幕尺寸”進(jìn)行引導(dǎo)。對(duì)第(14)句的處理分別對(duì)應(yīng)的是理解模板{#表態(tài)#否定#直接模板}和應(yīng)答模板{#選擇其它手機(jī)#應(yīng)答句式}。對(duì)第(18)句的處理分別對(duì)應(yīng)的是理解模板{#閑聊#結(jié)束#直接模板}和應(yīng)答模板{#返回并結(jié)束#返回內(nèi)容}。
4.2 測(cè)試報(bào)告
我們?cè)趯?shí)現(xiàn)的中文手機(jī)導(dǎo)購(gòu)對(duì)話系統(tǒng)中進(jìn)行了測(cè)試。系統(tǒng)的測(cè)試人員是15名學(xué)生志愿者,每位測(cè)試者測(cè)試10段,共150段對(duì)話。這些測(cè)試人員只知道系統(tǒng)的功能是手機(jī)導(dǎo)購(gòu),對(duì)系統(tǒng)的實(shí)現(xiàn)細(xì)節(jié)并不知情,這樣可確保測(cè)試的真實(shí)性和自然性。為了提高測(cè)試的多樣性,在測(cè)試時(shí)規(guī)定了每人三段自由發(fā)揮,七段在給定的10個(gè)場(chǎng)景中挑選,例如,“老媽開(kāi)始眼花了,想給她買個(gè)大屏的手機(jī),5寸以上的”。
4.2.1 測(cè)試總體情況
測(cè)試的總體情況如表3所示。
表3 測(cè)試總體情況
150段對(duì)話的平均回合數(shù)為12.27,進(jìn)入?yún)f(xié)處理的平均次數(shù)為2.75,占了22.4%,表明了協(xié)處理器存在的價(jià)值。從最大和最小的協(xié)處理次數(shù)分別是11和0也可以看出測(cè)試者的差異性很大,盡管都知道系統(tǒng)的功能是手機(jī)導(dǎo)購(gòu),有的測(cè)試者還是會(huì)說(shuō)很多OOD話語(yǔ),而有的則全部都是領(lǐng)域內(nèi)話語(yǔ)。經(jīng)過(guò)分析發(fā)現(xiàn)四大類中,閑聊、表態(tài)、導(dǎo)購(gòu)、其他分別占了40.2%、30.1%、24.3%和5.4%。
4.2.2 評(píng)價(jià)標(biāo)準(zhǔn)和方案對(duì)比
超出領(lǐng)域話語(yǔ)處理不好通常帶來(lái)的是用戶體驗(yàn)的下降,因此本文以用戶滿意率為度量標(biāo)準(zhǔn)。用戶不滿意的回答主要包括:答非所問(wèn)和回答沒(méi)有針對(duì)性。主要引起不滿意的原因包括OOD話語(yǔ)檢測(cè)出錯(cuò)、理解模板分類出錯(cuò)、沒(méi)有考慮上下文對(duì)話環(huán)境、以及系統(tǒng)其它模塊出錯(cuò)導(dǎo)致的上下文不正確或缺失等。
為了驗(yàn)證本文提出的協(xié)處理方案,也即AIML、理解模板分類、EFSM三者相結(jié)合的方案。我們對(duì)比了另外兩個(gè)方案(baseline methods)。
(1) 方案1:?jiǎn)渭傾IML,采用該方案的對(duì)話系統(tǒng)只使用純AIML機(jī)制應(yīng)對(duì)OOD話語(yǔ)。
(2) 方案2:采用AIML機(jī)制,并對(duì)未匹配話語(yǔ),采用理解模板分類算法。
4.2.3 測(cè)試結(jié)果
本文提出的協(xié)處理方案以及兩個(gè)對(duì)比方案的處理滿意率如表4所示。
表4 各方案的處理滿意率對(duì)比
從表4可以看到,本文提出的協(xié)處理方案比只有理解模板(AIML+模板分類)的方案,以及面向聊天的對(duì)話系統(tǒng)常用的純AIML方案分別提高15.7%和32.2%的OOD話語(yǔ)處理滿意率。如果去除由于主處理傳遞過(guò)來(lái)的64處錯(cuò)誤(主要包括OOD話語(yǔ)檢測(cè)錯(cuò)誤、對(duì)話上下文缺失和候選屬性缺失),協(xié)處理的處理滿意度達(dá)到87%,表明了協(xié)處理器能有效地輔助對(duì)話系統(tǒng)完成限定領(lǐng)域完整對(duì)話流程。
4.2.4 不滿意OOD話語(yǔ)處理分析
用戶體驗(yàn)不滿意的109個(gè)OOD話語(yǔ)應(yīng)答的原因分類如表5所示。
表5 OOD話語(yǔ)處理不滿意分類
從表5可以看到,目前用戶不滿意的OOD話語(yǔ)處理有接近一半是由于理解模板分類錯(cuò)誤造成的,進(jìn)一步研究和完善未匹配模板分類的模板類別語(yǔ)料庫(kù),可望提高分類算法的分類正確率,降低這類的不滿意處理比例。另外的一半屬于主處理帶來(lái)的錯(cuò)誤,包括OOD話語(yǔ)檢測(cè)錯(cuò)誤、對(duì)話上下文缺失和候選屬性缺失三類。其中OOD話語(yǔ)檢測(cè)錯(cuò)誤可望在進(jìn)一步完善主處理的OOD話語(yǔ)檢測(cè)(如進(jìn)一步完善領(lǐng)域語(yǔ)義信息庫(kù))后有效降低;候選屬性缺失經(jīng)核查主要是由于部分手機(jī)的屬性值缺失造成,解決方法是進(jìn)一步完善手機(jī)商品信息抓取模塊;而對(duì)話上下文缺失的錯(cuò)誤原因相對(duì)比較復(fù)雜,需要深入分析主處理各模塊,使得某一(類)特定上下文的錯(cuò)誤逐步改善。
本文基于AIML和EFSM,提出了一種限定領(lǐng)域口語(yǔ)對(duì)話系統(tǒng)的協(xié)處理方法。在中文手機(jī)導(dǎo)購(gòu)領(lǐng)域的測(cè)試表明,本文的方案能有效地輔助對(duì)話系統(tǒng)完成限定領(lǐng)域完整對(duì)話流程。方案中采用理解模板的方式,實(shí)現(xiàn)了多種同類的用戶輸入歸入相同的理解模板,解決開(kāi)放語(yǔ)義、口語(yǔ)化話語(yǔ)以及表達(dá)多樣性的問(wèn)題;而對(duì)未匹配話語(yǔ)進(jìn)行理解模板分類,則在一定程度上解決了理解模板覆蓋完整性的困難,并且隨著語(yǔ)料庫(kù)的增量訓(xùn)練,分類性能還可以持續(xù)提高。另一方面,通過(guò)綜合理解模板、系統(tǒng)事件和上下文信息為條件的模式轉(zhuǎn)換,實(shí)現(xiàn)理解模板到應(yīng)答模板的映射以及狀態(tài)的轉(zhuǎn)換,改變了單純依靠模板匹配方法在對(duì)話上下文控制方面的相對(duì)缺失。
未來(lái)工作一方面通過(guò)分析協(xié)處理測(cè)試出來(lái)的主處理錯(cuò)誤,反饋至主處理器進(jìn)行有針對(duì)性的系統(tǒng)完善,減少主處理帶給協(xié)處理的錯(cuò)誤;另一方面是進(jìn)行更大范圍的測(cè)試,根據(jù)測(cè)試結(jié)果進(jìn)一步完善語(yǔ)料庫(kù),包括直接匹配的AIML語(yǔ)料庫(kù)和模板類別語(yǔ)料庫(kù),提高協(xié)處理器的適應(yīng)性。
[1] Price P J. Evaluation of spoken language systems: the ATIS domain[C]//Proceedings of DARPA Workshop on Speech and Natural Language, Hidden Valley, PA, 1990.
[2] Gorin A, Riccardi G, Wright J. How may I help you?[J]. Speech Communication,1997, 23(1-2): 113-127.
[3] Zue V, Seneff S, Glass J, et al. JUPITER: a telephone-based conversational interface for weather information[J]. IEEE Transactions on Speech and Audio Processing, 2000, 8(1): 85-96.
[4] 黃寅飛, 鄭方, 燕鵬舉等. 校園導(dǎo)航系統(tǒng)EasyNav的設(shè)計(jì)與實(shí)現(xiàn)[J].中文信息學(xué)報(bào), 2001, 15(4): 35-40.
[5] Durston P, Farrell M, Attwater D, et al. OASIS natural language call steering trial[C]//Proceedings of 7th European Conference on Speech Communication and Technology (Eurospeech 2011), 2001: 1323-1326.
[6] 張琳, 高峰, 郭榮等. 漢語(yǔ)股票實(shí)時(shí)行情查詢對(duì)話系統(tǒng)[J]. 計(jì)算機(jī)應(yīng)用, 2004, 24(7): 61-63.
[7] Pappu A, Rudnicky A. The structure and generality of spoken route instructions[C]//Proceedings of the 13th Annual Meeting of the Special Interest Group on Discourse and Dialogue (SIGDIAL 2012), 2012: 99-107.
[8] Reichel C S, Sohn J, Ehrlich U, et al. Out-of-domain spoken dialogs in the car: a WoZ study[C]//Proceedings of the 15th Annual Meeting of the Special Interest Group on Discourse and Dialogue (SIGDIAL 2014), 2014: 12-21.
[9] Wallace R S. A.L.I.C.E. artificial intelligence foundation[EB/OL]. [2015-08-10]. http://www.alicebot.org.
[10] Banchs R E, Li H. IRIS: a chat-oriented dialogue system based on the vector space model[C]//Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics (ACL 2012), demo session.
[11] Mollá D, González J L V. Question answering in restricted domains: an overview[J]. Computational Linguistics, 2007, 33(1): 41-61
[12] Ameixa D, Coheur L, Fialho P, et al. Luke, I am your father: dealing with out-of-domain requests by using movies subtitles [J]. LNCS (LNAI), (8637): 13-21.
[13] Metallinou A, Bohus D, Williams J D. Discriminative state tracking for spoken dialog systems[C]//Proceedings of the 51st Annual Meeting of the Association for Computational Linguistics (ACL 2013), 2013: 466-475.
[14] Xu W Q, Xu B, Huang T Y, et al. Bridging the gap between dialogue management and dialogue models[C]//Proceedings of the Third SIGdial Workshop on Discourse and Dialogue (SIGDIAL 2002), 2002: 201-210.
[15] 鄔曉鈞, 鄭方, 徐明星. 基于主題森林結(jié)構(gòu)的對(duì)話管理模型[J]. 自動(dòng)化學(xué)報(bào), 2003,29(2):275-283.
[16] Peltason J, Wrede B. Pamini: a framework for assembling mixed-initiative human-robot interaction from generic interaction patterns[C]//Proceedings of the 11th Annual Meeting of the Special Interest Group on Discourse and Dialogue (SIGDIAL 2010), 2010: 229-232.
[17] Lane I R, Kawahara T, Matsui T, et al. Out-of-domain utterance detection using classification confidences of multiple topics[J]. IEEE Transactions on Audio, Speech, and Language Processing, 2007, 15(1):150-161.
[18] Tür G, Deoras A, Hakkani-Tür D. Detecting out-of-domain utterances addressed to a virtual personal assistant[C]//Proceedings of the 15th Annual Conference of the International Speech Communication Association (INTERSPEECH 2014), 2014: 283-287.
[19] Celikyitmaz A, Hakkani-Tür D, Tür G. Approximate inference for domain detection in spoken language understanding[C]//Proceedings of the 12th Annual Conference of the International Speech Communication Association (INTERSPEECH 2011), 2011: 1293-1296.
[20] Weizenbaum J. ELIZA-a computer program for the study of natural language communication between man and machine[J]. Communications of the ACM, 1966, 9(1):36-45.
[21] Colby K M, Weber S, Hilf F D. Artificial paranoia[J]. Artificial Intelligence, 1971, 2(1): 1-25.
[22] Schumaker R P, Chen H. Interaction analysis of the ALICE chatterbot: a two-study investigation of dialog and domain questioning[J]. IEEE Transactions on Systems, Man, and Cybernetics, Part A, 2010, 40(1): 40-51.
[23] 清華大學(xué)圖書(shū)館智能機(jī)器人小圖[EB/OL]. [2015-08-10]. http://166.111.120.164:8081/programd/.
[24] 小I機(jī)器人[EB/OL]. [2015-08-10]. http://www.xiaoi.com/index.html.
[25] Schumaker R P, Chen H. Leveraging question answer technology to address terrorism inquiry[J]. Decision Support Systems, 2007, 43(4): 1419-1430.
[26] Jia J Y. CSIEC: a computer assisted English learning chatbot based on textual knowledge and reasoning[J]. Knowledge-Based Systems, 2009, 22 (4): 249-255.
[27] Crutzen R, Peters G Y, Portugal S D, et al. An artificially intelligent chat agent that answers adolescents’ questions related to sex, drugs, and alcohol: an exploratory study[J]. Journal of Adolescent Health, 2011, 48(5):514-519.
[28] Huang J Z, Zhou M, Yang D. Extracting chatbot knowledge from online discussion forums[C]//Proceedings of the 20th International Joint Conference on Artificial Intelligence (IJCAI 2007), 2007: 423-428.
[29] Banchs R E. Movie-DiC: a movie dialogue corpus for research and development[C]//Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics (ACL 2012), 2012: 203-207.
[30] Wallace R S. The anatomy of A.L.I.C.E. [EB/OL]. [2015-08-10]. http://www.alicebot.org/anatomy.html.
[31] Huang P J, Lin X M, Lian Z Q, et al. Ch2R: a Chinese chatter robot for online shopping guide[C]//Proceedings of the 3rd CIPS-SIGHAN Joint Conference on Chinese Language Processing (CLP-2014), 2014: 26-34.
[32] 黃民烈, 朱小燕. 對(duì)話管理中基于槽特征有限狀態(tài)自動(dòng)機(jī)的方法研究[J]. 計(jì)算機(jī)學(xué)報(bào), 2004, 27 (08): 1092-1101.
[33] Chen Y N, Wang W Y, Rudnicky A. Unsupervised induction and filling of semantic slots for spoken dialogue systems using frame-semantic parsing[C]//Proceedings of the 2013 IEEE Workshop on Automatic Speech Recognition and Understanding (ASRU), 2013.
A Coprocessor for Out-of-Domain Utterances in Domain Specific Spoken Dialogue System
WANG Jundong, HUANG Peijie, LIN Xianmao, XU Yuhong, LI Kaiyin
(College of Mathematic and Informatics, South China Agricultural University, Guangzhou, Guangdong 510642, China)
The openness, colloquialism and diversity of out-of-domain (OOD) utterances make them difficult to the domain specific spoken dialogue system. This paper tackles this problem by proposing a coprocessor for domain specific dialogue system. Based on the artificial intelligence markup language(AIML), open semantic understanding templates are designed, and understanding template classification is used to address the unmatched OOD utterances. Then the extended finite state machine (EFSM) is adopted to transform the understanding template into answering template and realize the control of the state and information of the dialogue process. The application in mobile phone shopping guide domain shows that the proposed coprocessor can effectively help the Chinese dialogue system to finish the dialogue process and get better user experience.
out-of-domain utterance; coprocessor; AIML; FSM; spoken dialogue system
王俊東(1992—),碩士研究生,主要研究領(lǐng)域?yàn)樽匀徽Z(yǔ)言處理。E-mail:jdwang@stu.scau.edu.cn黃沛杰(1980—),通信作者,博士,副教授,主要研究領(lǐng)域?yàn)槿斯ぶ悄?、自然語(yǔ)言處理、口語(yǔ)對(duì)話系統(tǒng)。E-mail:pjhuang@scau.edu.cn林仙茂(1990—),本科,主要研究領(lǐng)域?yàn)榭谡Z(yǔ)對(duì)話系統(tǒng)。E-mail:xianmaulin@gmail.com
1003-0077(2015)05-0194-10
2015-08-16 定稿日期: 2015-09-21
國(guó)家自然科學(xué)基金(71472068);廣東省大學(xué)生創(chuàng)新訓(xùn)練計(jì)劃項(xiàng)目(201410564290,201510564281)
TP391
A