聊天機器人問答系統(tǒng)現(xiàn)狀與發(fā)展馮升 (北京郵電大學(xué)人機與認(rèn)知實驗室,北京,100876) 1 研究背景及意義自1995年以來,互聯(lián)網(wǎng)開始進入快速發(fā)展的軌道,其中包含的信息量呈爆炸式地增長,2015年,網(wǎng)頁數(shù)量超過了1萬億,而在2006年的時候,這個數(shù)字是2000億。因此,管理如此大量的網(wǎng)頁數(shù)據(jù)是一件很困難的工作,使用搜索引擎幫助人們更好地尋找信息,發(fā)現(xiàn)信息、一直是信息檢索領(lǐng)域中的研究熱點。 經(jīng)過長期的發(fā)展,學(xué)者們在信息檢索領(lǐng)域里積累了大量的研究成果,而工業(yè)界中對于如何把信息檢索等相關(guān)技術(shù)應(yīng)用到信息服務(wù)中來的探索也取得了很多成功經(jīng)驗。類似于Google和百度之類的搜索引擎會根據(jù)用戶的查詢返回一個鏈接列表,每個鏈接都帶有一小段摘要信息。用戶逐個地瀏覽搜索引擎返回的這個鏈接列表中的每個文檔,以尋找自己期望的信息,這會消耗用戶很多時間來判斷哪些文檔是包含自己想要的信息的,哪些不是。很多時候,用戶需要的是答案而不是文檔,這也是像“百度知道”等問答類網(wǎng)站每天由搜索引擎帶入如此高瀏覽量的原因。簡單地說,很多時候,用戶會對搜索引擎返回的大量信息感到很迷茫。 問答系統(tǒng)研究的出現(xiàn)正是為了應(yīng)對上述信息過載問題的。問答系統(tǒng)分為兩類:開放領(lǐng)域的問答系統(tǒng)和特定領(lǐng)域的問答系統(tǒng)。如果一個問答系統(tǒng)可以處理的問題是多種多樣、涉及到生活方方面面的,依賴于宇宙中的各種本體和信息,那這種問答系統(tǒng)叫做開放領(lǐng)域問答系統(tǒng)。另一方面,特定領(lǐng)域的問答系統(tǒng)僅僅處理特定領(lǐng)域中的問題,例如與音樂相關(guān)的問題或者與天氣預(yù)報相關(guān)的問題等等。 問答系統(tǒng)一直是自然語言處理領(lǐng)域中非常熱門的一個研究方向。人們可以向問答系統(tǒng)提交用自然語言表達的問題,系統(tǒng)會返回緊湊相關(guān)又準(zhǔn)確的答案,而不是像搜索引擎那樣僅僅返回一個網(wǎng)頁集合。問答系統(tǒng)的目標(biāo)是為問題找到精確的答案,而不是像信息檢索系統(tǒng)那樣返回全文文檔或者最匹配的文章。 更進一步,智能聊天機器人不僅可以回答用戶的某一個問題,還可以很人性化地與用戶交流,了解用戶的需求,就像用戶的一個好朋友。當(dāng)前,聊天機器人在商業(yè)領(lǐng)域很常見,包括航空系統(tǒng)訂票領(lǐng)域,移動個人助理Siri,阿里巴巴的聊天機器人,韓國風(fēng)靡全球的聊天機器人Simsimi等。 隨著信息技術(shù)的發(fā)展,計算資源和存儲資源在21世紀(jì)都得到了極大的進步,但人機交互方式并沒有發(fā)生多大變化,尤其是用戶獲取信息的方法還不夠有效。通過研究聊天機器人相關(guān)技術(shù),尤其是聊天機器人技術(shù)中的對話理解問題,對于促進人機交互方式的發(fā)展有重要意義。 ![]() 2 國內(nèi)外研究現(xiàn)狀在1960年左右,國外的科學(xué)家就提出了希望計算機能用自然語言來處理人們的問題,這應(yīng)該是問答系統(tǒng)的雛形。在1980年左右,自然語言處理領(lǐng)域中的問答系統(tǒng)(Question Answering)廣受關(guān)注,圖靈測試表示,如果計算機能夠像人類一樣用自然語言進行交流,那么就可以被認(rèn)為具有人工智能。從此,科學(xué)家和學(xué)者們開始了探索語言理解相關(guān)的技術(shù),并紛紛投身到研究自然語言問答系統(tǒng)和聊天機器人系統(tǒng)中來。 最開始的時候,受限于計算能力和知識庫,所有的實驗規(guī)模都很小很受限制,以至于問答系統(tǒng)一直被限制在某一特殊領(lǐng)域的專家系統(tǒng)。從1995年開始,隨著信息檢索技術(shù)的發(fā)展,Google等搜索引擎公司的商業(yè)化運作和計算能力的飛速發(fā)展,人們更關(guān)注信息檢索的發(fā)展,而問答系統(tǒng)的研究沒有進展。從2005年開始,隨著移動互聯(lián)網(wǎng)的發(fā)展,智能手機終端可用于呈現(xiàn)搜索結(jié)果的面積受限,況且用戶的手機數(shù)據(jù)流量受限,于是問答系統(tǒng)再次被推到前臺來。 現(xiàn)在有越來越多的公司和高校參與到了問答技術(shù)的研究中來,包括蘋果、Google、阿里巴巴、三星、劍橋大學(xué)等等。在一年舉行一次的文本信息檢索會議上(TREC,Text Retrieval Conference),自動問答系統(tǒng)主題是受關(guān)注最多的主題之一。 2.1 國外研究現(xiàn)狀 國外在問答系統(tǒng)技術(shù)上的研究起步比較早,目前在工業(yè)界或者學(xué)術(shù)界已經(jīng)產(chǎn)出了一些比較成熟的問答系統(tǒng)和聊天機器人系統(tǒng),例如,蘋果公司的Siri,谷歌的Google Now,MIT大學(xué)的Start系統(tǒng),還有AskJeeves、AnswerBus、MULDER、LAMP等。 Start是由MIT大學(xué)計算機科學(xué)系人工智能實驗室的研究員Boris Katz和他的同事們一起開發(fā)的,是世界上第一個基于web的問答系統(tǒng),從1993年開始上線運行至今。與常見的信息檢索系統(tǒng)(例如搜索引擎)不同,Start的目標(biāo)是為用戶提供恰到好處的信息,而不是僅僅提供一個搜索列表。Siri是一款內(nèi)建在蘋果iOS系統(tǒng)中的的人工智能助理軟件。此軟件使用自然語言處理技術(shù),使用者可以使用自然的對話與手機進行互動,完成搜尋資料、查詢天氣、設(shè)定手機日歷、設(shè)定鬧鈴等許多服務(wù)。 Google Now(Google 即時)是一款由Google開發(fā)的智能型個人助理軟件,擴充了Google搜索手機應(yīng)用程序的功能,可在Android和 iOS上使用。Google Now使用自然語言用戶界面(Natural language user interface),通過一系列的Web服務(wù)來進行回答問題、提供建議、運行動作等行為。在回應(yīng)用戶時,Google Now會基于用戶過往的搜索習(xí)慣來預(yù)測其可能需要的信息。 AnswerBus是一個面向互聯(lián)網(wǎng)的、多語種的自動問答系統(tǒng),它不僅可以回答英語問題,還能回答法語、西班牙語、德語等很多語種的問題。但是AnswerBus并不會給出問題的具體答案,而是返回可能包含答案的句子和文檔。 MULDER是華盛頓大學(xué)開發(fā)的第一個完全以網(wǎng)絡(luò)作為其知識庫的自動問答系統(tǒng),它將網(wǎng)頁信息保存到本地,并且對這些文檔進行詳細(xì)的語法分析,然后從中抽取答案。 由新加坡國立大學(xué)開發(fā)的LAMP和MULDER系統(tǒng)類似,不同之處在于LAMP不會在本地保存網(wǎng)頁數(shù)據(jù),而是從搜索引擎返回的網(wǎng)頁片斷中提取信息。 2.2 國內(nèi)研究情況 與國外研究情況相比,中國國內(nèi)在問答系統(tǒng)和聊天機器人系統(tǒng)方面的研究無論在規(guī)模還是研究水平上都有不少的差距。其主要原因有兩方面:一方面,中文信息處理比英文難,有其特殊性,國外一些相對成熟的技術(shù)和研究成果不能直接利用;另一方面,缺乏相應(yīng)的自然語言處理的相關(guān)基礎(chǔ)資源,如語料庫、知識庫以及相應(yīng)的評價機制等(如一年一度的TREC會議,就有針對英文問答系統(tǒng)的科學(xué)的評測標(biāo)準(zhǔn)和各種評測語料、評測方法)。此外,中國是一個發(fā)展中國家,國內(nèi)在這方面投入的人力、物力以及重視的程度都不能和國外相比。 國內(nèi)在問答系統(tǒng)領(lǐng)域走得比較靠前的研究機構(gòu)主要有清華大學(xué)、北京大學(xué)、中科院計算所、哈工大、北京語言大學(xué)等,另外研究漢語問答系統(tǒng)的還有香港大學(xué)、香港中文大學(xué)、National Defense Management College等單位。 哈爾濱工業(yè)大學(xué)開發(fā)的HIT相關(guān)自然語言處理工具,可以對句子進行句法分析,語法分析和分詞等操作,這無疑為漢語的問答系統(tǒng)研究奠定了基礎(chǔ)。 科大訊飛信息科技股份有限公司開發(fā)的語音識別相關(guān)工具已促進了國內(nèi)很多的聊天機器人發(fā)展,包括訊飛語點、搜狗語音助手等。 臺灣國防大學(xué)管理學(xué)院研制的中文問答系統(tǒng)CQAS,側(cè)重于命名實體及其關(guān)系的處理,嘗試將中文文檔以特征因子來表示,并且把它轉(zhuǎn)換為命名實體之間的關(guān)系串列方式,然后,通過這個關(guān)系串列方式來搜尋與返回答案。CQAS的實驗結(jié)果表明,關(guān)系串列方式資料的系統(tǒng)分析越多,回答問題的正確率越高。 ![]() 3 存在的主要問題聊天機器人系統(tǒng)的對話理解模型獲得了廣泛關(guān)注,也在實際的信息服務(wù)系統(tǒng)和智能手機的助手應(yīng)用領(lǐng)域中得到了廣泛應(yīng)用。過去,業(yè)界不太關(guān)注互聯(lián)網(wǎng)中非結(jié)構(gòu)化知識,自然語言處理研究領(lǐng)域中的對話理解研究關(guān)注更多的是如何對用戶輸入的問題進行句法分析、語法分析、提取關(guān)鍵詞和關(guān)鍵詞擴展,之后便是信息檢索和排序模型,從而希望能給出準(zhǔn)確的答案。但是,隨著聊天機器人系統(tǒng)在人們生活中的急速升溫,特別是在互聯(lián)網(wǎng)環(huán)境下非結(jié)構(gòu)化知識大規(guī)模增長的情況下,目前面臨著一系列亟待解決的問題。 1)以前的聊天機器人系統(tǒng)中的對話理解模型僅僅涉及語法分析、句法分析等邏輯步驟,人為地把對話理解與人機交互的最終目的分隔開來。其實對話理解的最終目的只有一個:產(chǎn)生正確的答案。對于像“吃飯了嗎?”這樣的問題,句法分析根本沒什么用,分析不出來什么結(jié)果,而簡單的規(guī)則匹配則能產(chǎn)生非常好的結(jié)果。 2)舊的聊天機器人系統(tǒng)沒有充分使用類似于“百度知道”之類的答案來源。問答類網(wǎng)站中的內(nèi)容都是用戶產(chǎn)生的,質(zhì)量很高,而且這些知識都是與人類活動密切相關(guān)的,否則用戶不會花時間和精力來問這些問題。尤其類似于知乎和Quora這些網(wǎng)站,在某些用戶回答了問題之后,其他用戶可以對他發(fā)表的答案進行投票,最終根據(jù)票數(shù)選出質(zhì)量最好的答案。這些人工產(chǎn)生的答案無疑比機器通過相似度自動計算得到的答案要好很多。但目前很少聊天機器人系統(tǒng)能夠充分應(yīng)用這些知識源。 3)舊的對話理解模型沒能充分把生活中新近出現(xiàn)的知識快速吸收。隨著21世紀(jì)初互聯(lián)網(wǎng)爆發(fā)以來,互聯(lián)網(wǎng)中已經(jīng)積累了大量的用戶產(chǎn)生的知識,而且這些知識主要存在于下述網(wǎng)站中:問答類網(wǎng)站,如百度知道和知乎;維基百科;書籍電影等開放評價網(wǎng)站,例如豆瓣;美食評價網(wǎng)站,例如大眾點評和Foursquare等;商品評價信息,例如淘寶網(wǎng)。雖然這些知識都是以非結(jié)構(gòu)化或半結(jié)構(gòu)化的樣式存在著,但所積累的知識量足以覆蓋人們生活的方方面面。目前的聊天機器人都沒能夠很好地消化上述所列出的知識。 ![]() ![]() 4)舊的答案排序模型沒能綜合多種因素對候選答案進行有效排序。目前,問答系統(tǒng)研究領(lǐng)域中的候選答案排序模型基本都是只考慮文檔相關(guān)度這一特征。然而,查詢串和候選答案文檔之間的特征是非常豐富的,包括: 每個搜索結(jié)果的特征(例如搜索結(jié)果對應(yīng)的問題的類型);每個搜索結(jié)果來源的權(quán)威性;用戶的顯性反饋;關(guān)鍵詞是否出現(xiàn)在URL中;提問中的關(guān)鍵詞是否在搜索文件的主頁或者答案中;答案被贊的數(shù)量;候選答案所屬類型是否與用戶問題中所期望的答案所屬類型一致,例如用戶問的動物名,候選答案是否是動物名等。 4 小結(jié)1)本文對聊天機器人系統(tǒng)的架構(gòu)進行了定義,并研究了知識表示方法對對話理解模型的影響。 機器不是嘗試去理解人類語言,而是去努力找出最符合人類語言習(xí)慣的答案;這需要對已有的對話理解模型進行研究,使得開發(fā)對話理解模型的指導(dǎo)原則與前人的指導(dǎo)原則進行對比?;诖?,需要研究知識表示方法對理解模型的影響,并進行相關(guān)的實驗。 2)未來需對問答系統(tǒng)中答案排序算法展開研究,把信息檢索中的Listwise learning to rank方法應(yīng)用到聊天答案排序中來。 聊天機器人中的大量知識是由搜索引擎通過索引的方式來管理的,拿到候選答案集合之后,需要選出最佳的答案或者答案集合返回給用戶,這使得排序成為一個很重要的任務(wù)。雖然搜索引擎中的排序方法具有借鑒意義,但其排序特征并不能完全照搬過來用于作為聊天機器人系統(tǒng)中的排序特征,應(yīng)總結(jié)聊天機器人系統(tǒng)中各種可用于排序的特征,并修改排序模型來訓(xùn)練一個機器學(xué)習(xí)系統(tǒng)作為正確的排序模型。有實驗結(jié)果表明,采用Listwise排序?qū)W習(xí)方法可取得很好的效果。 3)如何構(gòu)建一個能夠大規(guī)模地運用知識進行問題理解的聊天機器人系統(tǒng)。 一個能夠大規(guī)模地運用知識進行問題理解的聊天機器人系統(tǒng)包含三層系統(tǒng),分別是應(yīng)用層系統(tǒng)、中間服務(wù)層系統(tǒng)和聊天服務(wù)器系統(tǒng)。聊天服務(wù)器系統(tǒng)肩負(fù)著理解用戶輸入問題的角色,它包括8個部件,分別為策略中心部件、AIML部件、正則匹配器部件、FAQ部件、NLP部件、Simsimi部件和Listwise排序?qū)W習(xí)部件。策略中心善于處理與生活息息相關(guān)的問題;AIML部件則善于處理聊天語句;正則匹配器善于處理一些概念性的提問;FAQ部件則是索引了300多萬知識敏感的(問題,答案)對;NLP部件索引的是300多萬結(jié)構(gòu)化的數(shù)據(jù)和其他一些網(wǎng)頁數(shù)據(jù);Listwise排序?qū)W習(xí)部件使從搜索引擎檢出候選答案后,可以再精選出最佳答案。所有這些部件都具有理解用戶輸入并尋找答案的功能,互補工作,以取得全局最優(yōu)性能。 ![]() |
|