?

面向任務的對話系統現狀研究

2018-01-17 09:32陳龍孫澤健
電子技術與軟件工程 2017年23期
關鍵詞:綜述數據庫

陳龍++孫澤健

摘 要 面向任務的對話系統是智能問答系統最熱門和最有應用價值的子領域之一,近幾十年來,其已經發展了三代技術,形成較為成熟的結構框架,本文給予相關總結,進而為相關研究人員提供一個的借鑒和幫助。

【關鍵詞】面向任務的對話系統 綜述 智能問答 數據庫

面向任務的對話系統的研究目標是希望利用自然語言來訪問結構化數據庫并從中查詢數據,可以視為繼圖形用戶界面之后新的人機交互接口。面向任務的對話系統不同于以閑聊和情感陪伴為目的的聊天機器人,是智能客服技術工具化應用的主要發展方向,也是智能問答系統最熱門和最有應用價值的子領域之一,本文對面向任務的對話系統的發展現狀和基本框架進行介紹。

1 發展現狀

任務驅動式對話系統始自人工智能諸多專家系統的研究,學者們最早通過人工提取特征,設計本體,組織規則,研制了眾多數據庫自然語言接口(Natural Language Interface of Database,NLIDB),使人們可以通過限定性的自然語言來查詢數據,但其只支持上下文無關的單輪對話查詢,通用性和可擴展性都很差。后來隨著ELIZA系統的成功,多輪對話系統也開始出現。一些系統開始了在某些狹窄領域的商業應用,如機票訂購,餐廳預訂,導航助理。此類系統稱為基于規則或基于模板(Symbolic Rule/Templated Based)的對話系統,是第一代技術。優點是系統內部的規則易懂透明,很容易修補漏洞和進行系統更新。但跨領域的通用性和可擴展性都很差,依賴領域專家的開發和維護,數據被用來設計規則,而不是學習。

隨著大數據技術的發展,統計機器翻譯(簡稱SMT)在自動翻譯上取得了巨大成功,熱潮蔓延到對話系統領域,出現了統計對話系統(Statistical Dialog System),為第二代技術。此類系統將許多淺層模型(如CRF、HMM)用于對話系統的語言理解和生成,增強學習的方法也開始使用,代表是劍橋大學Steve Young教授團隊研發的基于POMDP的對話系統。優點是擺脫了對領域專家的依賴,增強了問答的魯棒性,但模型卻變得難以解釋,從而很難維護系統,模型的表征能力也不夠強,不足以做到完全端到端學習,系統依然難以跨領域擴展。

2014年,深度學習在計算機視覺和語音識別上的突破性進展,以及深度增強學習在Atari游戲上的成功,使學者們開始將諸多神經網絡模型用于對話系統,稱為神經對話系統(Neural Dialog System),為第三代技術。在此基礎上,模型的表征能力更強,完全端到端變得可行,微軟鄧力團隊于2016年即開發了一個完全端到端的機器人KB-InfoBot,采用基于概率的軟查詢來訪問結構化數據庫,讓人們看到了神經網絡模型在面向任務的對話系統上的更多可能。但此類對話系統依然有很多局限,包括依靠大規模標注數據的訓練,模型仍然很難解釋,在神經網絡學習和符號自然語言之間缺乏交互界面。而其跨領域遷移擴展能力成為熱門的研究方向(從一個數據庫到另一個數據庫),許多開發者希望利用深度遷移學習和增強學習來實現。

2 基本框架

任務驅動的對話系統框架一般擁有五大模塊,分別為自然語言理解(Natural Language Understanding,NLU),對話狀態跟蹤(Dialog State Tracker,DST),數據庫,對話策略(Dialog Policy,DP)和自然語言生成(Natural Language Generation,NLG)。其主要框架和運行流程如圖1所示。

自然語言理解(NLU)模塊:負責實現用戶問詢的結構化語義表示,主要包括兩個子模塊:意圖識別和屬性抽取。意圖識別要求實現對用戶最終需求的理解,將其劃歸到有限范圍內的某一類別,語言學家Harry Bunt等人對用戶意圖建立了包含了56個定義統一分類體系,成為ISO標準。對于特定數據查詢任務,意圖也可以和某一查詢目標甚至是和SQL查詢語句配對。而屬性抽取也稱為槽位(Slot)抽取,識別的是查詢目標的諸個限制條件、關鍵信息,在數據庫中,一個槽位代表了某一查詢表的列項。屬性抽取完成后,表示成槽值對(Slot-Value Pairs)傳遞給狀態跟蹤模塊。屬性和意圖既可以表示為確定數值,也可以表示成概率分布,又稱為置信狀態。當槽值對不足以確定查詢目標時,對話策略模塊可能指示系統提出反問,尋求更多信息。圖2給出了一個示例。由于對話系統更關注口語處理,所以往往要處理非嚴謹語法和語音識別錯誤等問題。

對話狀態跟蹤(DST)模塊:緩存查詢信息,根據多輪對話來確定當前用戶目標,在端到端解決方案中,上一模塊傳遞來的用戶意圖和槽位會被表示成概率分布,故此一模塊也被稱為置信狀態跟蹤。在某些復雜的系統中,用戶畫像的相關信息也存儲在此一模塊中。

數據庫模塊:可以是關系型數據庫或者基于本體的知識圖譜,通常是比較簡單的關系型數據庫(如IMDB電影數據庫),表的列項較少而行數較多。對話系統需要通過生成SQL等語言的查詢語句完成數據訪問和返回。

對話策略(DP)模塊:和DST模塊合稱為對話管理(Dialog Manager,DM)模塊,根據DST模塊中存儲的信息進行決策,輸出一個系統動作(Verbal Action)。系統動作也是一個由查詢目標和槽值對組成的語義表示,表明系統要執行的動作的類型和操作參數,主要類型有查詢結束、模糊確認、反問等。

自然語言生成(NLG)模塊:此模塊根據對話策略的決策生成相應的回話(Response)返回給用戶。一種方式是將回話固定為模板(Template-based),回話生成的過程就轉化為從候選列表中選擇模板的過程,實現較容易,但其無法像閑聊機器人一樣可以利用海量的社交網絡對話數據,必須人工提取特征,組織模板耗時耗力,難以移植和擴展。另一種是通過端到端模型來完成回話生成,根據上下文逐詞的完成句子的輸出,效果更好,但模型構建更加復雜。endprint

3 結束語

當前,面向任務的對話系統已在多個領域成功應用,如通過訪問IMDB電影數據庫來尋找電影,通過淘寶的商品數據庫來查找想要的商品,通過航班信息數據庫來訂購機票等,成為多個熱門APP應用的重要模塊,有的系統甚至可以接受用戶語音的輸入。這些面向任務的對話系統都極大地改善了用戶體驗,提高了用戶粘性,成為各大互聯網巨頭競爭的焦點,也是多個人工智能初創公司的核心競爭力。但目前在復雜結構數據庫、上下文對話建模、跨領域擴展等方面,面向任務的對話系統仍有很多困難需要解決。

參考文獻

[1]劉挺.人機對話浪潮:語音助手、聊天機器人、機器伴侶[J].中國計算機學會通訊,2015,11(10):54-56.

[2]孟小峰.中文數據庫自然語言查詢處理研究[D].中國科學院研究生院(計算技術研究所),1999.

[3]馮志偉.自然語言問答系統的發展與現狀[J].外國語(上海外國語大學學報),2012(06):2-16.

[4]微軟首席AI科學家鄧力演講:口語對話系統的分類及三代演變[EB/OL].雷鋒網.https://www.leiphone.com/news/201701/daOUg72qLCmnb2Cr.html.

[5]Young Steve,Ga?i? M,Thomson B, et al.POMDP-Based Statistical Spoken Dialog Systems:A Review[J].Proceedings of the IEEE,2013,101(05):1160-1179.

[6]Mnih V,Kavukcuoglu K,Silver D,et al.Human-level control through deep reinforcement learning[J]. Nature,2015,518(7540):529.

[7]Dhingra B, Li L, Li X,et al.Towards End-to-End Reinforcement Learning of Dialogue Agents for Information Access[J].2016.

[8]Z Wang,H Chen,G Wang,H Tian,H Wu & H Wang (2014) Policy Learning for Domain Selection in an Extensible Multi-domain Spoken Dialogue System. In Proceedings of Conference on Empirical Methods on Natural Language Processing (EMNLP 2014).

作者簡介

陳龍(1988-),碩士生,研究方向為作戰模擬系統工程。

作者單位

國防大學研究生院 北京市 100091endprint

猜你喜歡
綜述數據庫
SEBS改性瀝青綜述
NBA新賽季綜述
近代顯示技術綜述
JOURNAL OF FUNCTIONAL POLYMERS
Progress of DNA-based Methods for Species Identification
綜述
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合