王瑛 何啟濤
摘要??? 問(wèn)答系統(tǒng)是一個(gè)用自然語(yǔ)言與人們進(jìn)行互動(dòng)的計(jì)算機(jī)系統(tǒng),近些年來(lái)機(jī)器學(xué)習(xí)、強(qiáng)化學(xué)習(xí),尤其是深度學(xué)習(xí)等技術(shù)的革命性發(fā)展給問(wèn)答系統(tǒng)帶來(lái)了長(zhǎng)足的進(jìn)步。本文將從問(wèn)答系統(tǒng)的定義入手展開(kāi)文章,再介紹了問(wèn)答系統(tǒng)的發(fā)展歷程,以及給出問(wèn)答系統(tǒng)的一般處理框架,再?gòu)拿嫦蛉蝿?wù)型和非任務(wù)型兩個(gè)方面給出問(wèn)答系統(tǒng)的分類(lèi)及其相應(yīng)技術(shù),并給出問(wèn)答系統(tǒng)的常見(jiàn)的評(píng)價(jià)標(biāo)準(zhǔn)方法。最后,在文章結(jié)尾處給出當(dāng)前問(wèn)答系統(tǒng)的一些挑戰(zhàn)以及未來(lái)的可能的研究方向。
【關(guān)鍵詞】問(wèn)答系統(tǒng) 處理框架 分類(lèi) 深度學(xué)習(xí)
1 引言
隨著互聯(lián)網(wǎng)的發(fā)展,互聯(lián)網(wǎng)上的信息越來(lái)越繁雜,已呈現(xiàn)出爆炸式增長(zhǎng)的狀態(tài),面對(duì)信息洪災(zāi),人們?cè)絹?lái)越難以在網(wǎng)上便捷獲取有效信息,獲取有效信息的成本也越來(lái)越高。過(guò)去人們通常根據(jù)搜索引擎輸入關(guān)鍵詞,搜索服務(wù)提供商運(yùn)用檢索算法根據(jù)相關(guān)性從高到低給出相關(guān)信息。但隨著信息越來(lái)越繁雜,傳統(tǒng)搜索算法愈來(lái)愈顯得力不從心,其原因在于傳統(tǒng)算法未能獲取語(yǔ)言更深層次的語(yǔ)義信息,此外,相似信息太多,甚至包含了很多虛假信息。因此也不斷催生著新技術(shù)的誕生,尤其是計(jì)算語(yǔ)言學(xué)的發(fā)展和人工智能的進(jìn)步。
而隨著深度學(xué)習(xí)技術(shù)的不斷進(jìn)步,問(wèn)答系統(tǒng)不僅僅可以獲取語(yǔ)言表面上的信息,還可以獲取更深層次的語(yǔ)義信息,而這種進(jìn)步恰好也給了問(wèn)答系統(tǒng)生存的土壤與營(yíng)養(yǎng)。問(wèn)答系統(tǒng)所能帶來(lái)的變革與收益,諸如在取代人工客服,聊天機(jī)器人,智能家居等領(lǐng)域的應(yīng)用,進(jìn)一步引起了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。當(dāng)前,問(wèn)答系統(tǒng)已成為自然語(yǔ)言處理領(lǐng)域研究的一大熱點(diǎn)。問(wèn)答系統(tǒng)的成熟應(yīng)用會(huì)將人類(lèi)從大量重復(fù)性的勞動(dòng)中釋放出來(lái),并且會(huì)改變?nèi)祟?lèi)生產(chǎn)力的生產(chǎn)方式,對(duì)人類(lèi)的社會(huì)進(jìn)步是不可估量的。
同時(shí),智能的問(wèn)答系統(tǒng)也是構(gòu)建下一代智能世界不可或缺的一個(gè)重要角色。在本文中,我們將從不同的角度對(duì)問(wèn)答系統(tǒng)進(jìn)行概述,并在文章結(jié)尾處討論了一些當(dāng)前問(wèn)答系統(tǒng)所面臨的挑戰(zhàn)與未來(lái)可能的發(fā)展方向。
2 問(wèn)答系統(tǒng)
2.1 問(wèn)答系統(tǒng)的定義
問(wèn)答系統(tǒng)是一種以自然語(yǔ)言或語(yǔ)音和用戶進(jìn)行自由問(wèn)答交流的計(jì)算機(jī)程序,它在用戶和基于計(jì)算機(jī)的應(yīng)用程序之間提供了一個(gè)接口,該接口允許以一種相對(duì)自然的方式與應(yīng)用程序進(jìn)行交互。目前,問(wèn)答系統(tǒng)正以文本、圖形、語(yǔ)音等多模態(tài)的形式發(fā)展。
2.2 問(wèn)答系統(tǒng)的組成
問(wèn)答系統(tǒng)通常由四個(gè)部分組成:
(1)自然語(yǔ)言理解(NLU),將自然語(yǔ)言信息轉(zhuǎn)換成語(yǔ)義槽,通俗來(lái)說(shuō)就是將文本語(yǔ)言轉(zhuǎn)換為計(jì)算機(jī)可以表示并理解的信息;
(2)問(wèn)答狀態(tài)跟蹤,即問(wèn)答管理,這一階段系統(tǒng)根據(jù)歷史問(wèn)答和當(dāng)前用戶的輸入,來(lái)產(chǎn)生當(dāng)前的問(wèn)答狀態(tài),即輸出當(dāng)前的狀態(tài)所采取的動(dòng)作;
(3)策略學(xué)習(xí),策略學(xué)習(xí)的目標(biāo)是生成下一狀態(tài),這也是得益于強(qiáng)化學(xué)習(xí)的引入,使得系統(tǒng)不僅僅是考慮歷史的問(wèn)答記錄,還應(yīng)考慮未來(lái)可能的問(wèn)答狀態(tài);
(4)自然語(yǔ)言生成(NLG),將計(jì)算機(jī)的語(yǔ)言理解表示映射為人類(lèi)所熟悉的自然語(yǔ)言。當(dāng)然,有些問(wèn)答系統(tǒng)的輸入輸出并非自然語(yǔ)言,也可能是語(yǔ)音,那么在輸入時(shí)還需要將語(yǔ)音轉(zhuǎn)換為自然語(yǔ)言,在輸出時(shí)將自然語(yǔ)言轉(zhuǎn)換為語(yǔ)音。
3 問(wèn)答系統(tǒng)的發(fā)展歷程
根據(jù)技術(shù)的變革發(fā)展,我們可以將問(wèn)答系統(tǒng)分為三個(gè)大的階段:
3.1 基于符號(hào)規(guī)則的第一代
二十世紀(jì)80年代末是符號(hào)規(guī)則技術(shù)的高潮期,也是最早一代問(wèn)答系統(tǒng)的誕生期,其主要的技術(shù)是基于專(zhuān)家設(shè)計(jì)符號(hào)規(guī)則,來(lái)產(chǎn)生指定的回答系統(tǒng),它的缺點(diǎn)當(dāng)然很明顯:
(1)很難擴(kuò)展;
(2)過(guò)于依賴專(zhuān)家,其成本太高;
(3)系統(tǒng)只是基于規(guī)則來(lái)產(chǎn)生回復(fù),并沒(méi)有涉及學(xué)習(xí)。
3.2 基于數(shù)據(jù)統(tǒng)計(jì)的第二代
二十一世紀(jì)以后由于互聯(lián)網(wǎng)的快速發(fā)展,產(chǎn)生了大量的文本信息,尤其是社區(qū)問(wèn)答信息,這為問(wèn)答系統(tǒng)進(jìn)入數(shù)據(jù)驅(qū)動(dòng)時(shí)代鋪墊了良好的基礎(chǔ),此時(shí)問(wèn)答系統(tǒng)已進(jìn)入開(kāi)放領(lǐng)域。基于統(tǒng)計(jì)學(xué)的問(wèn)答系統(tǒng)大放異彩,問(wèn)答系統(tǒng)已經(jīng)開(kāi)始出現(xiàn)淺層學(xué)習(xí)技術(shù),但是這種基于淺層學(xué)習(xí)的問(wèn)答系統(tǒng)雖說(shuō)有一定的學(xué)習(xí)能力,但由于這種學(xué)習(xí)能力不強(qiáng),也不易于理解,在很多方面難以給出解釋?zhuān)@些因素限制了當(dāng)時(shí)問(wèn)答系統(tǒng)的進(jìn)一步發(fā)展。
3.3 基于深度學(xué)習(xí)的第三代
互聯(lián)網(wǎng)信息的爆炸式產(chǎn)生和深度學(xué)習(xí)技術(shù)的快速發(fā)展,大量的數(shù)據(jù)和革新的技術(shù)給新一代問(wèn)答系統(tǒng)提供了發(fā)展的客觀條件。此時(shí),深層的神經(jīng)網(wǎng)絡(luò)蓬勃發(fā)展,用更深層的學(xué)習(xí)來(lái)獲取更深層次的語(yǔ)義表征,使得深層神經(jīng)網(wǎng)絡(luò)具有強(qiáng)大的學(xué)習(xí)能力。正由于其強(qiáng)大學(xué)習(xí)能力這也使得問(wèn)答系統(tǒng)得到了空前的關(guān)注。雖說(shuō)第三代問(wèn)答系統(tǒng)的學(xué)習(xí)能力遠(yuǎn)超前兩代的問(wèn)答系統(tǒng),但仍具有一些局限性,例如仍然有一些現(xiàn)象很難解釋?zhuān)茈y擴(kuò)展到其他領(lǐng)域,無(wú)法做到通用問(wèn)答系統(tǒng),并且市場(chǎng)上并沒(méi)有完全成功的商用問(wèn)答系統(tǒng)。
4 問(wèn)答系統(tǒng)處理框架
不同類(lèi)型的問(wèn)答系統(tǒng)在數(shù)據(jù)處理的方式上有所不同。雖然不同的問(wèn)答系統(tǒng)面對(duì)不同的任務(wù)有著各自的架構(gòu)體系,但根據(jù)數(shù)據(jù)的流動(dòng)方式,一般可以分為三個(gè)部分,包括問(wèn)題理解,信息檢索和答案生成。
問(wèn)答系統(tǒng)研究包含三個(gè)基本問(wèn)題:如何將自然語(yǔ)言在計(jì)算機(jī)中表示出來(lái),讓計(jì)算機(jī)理解其語(yǔ)義,如何選取最優(yōu)的答句,以及將答案映射為自然語(yǔ)言表示出來(lái)。
(1)提問(wèn)處理模塊:負(fù)責(zé)處理用戶的問(wèn)題,生成查詢關(guān)鍵詞,確定問(wèn)題答案的類(lèi)型以及問(wèn)題的語(yǔ)義表示。
(2)檢索模塊:根據(jù)提問(wèn)處理模塊所轉(zhuǎn)換的語(yǔ)義表示,使用強(qiáng)化學(xué)習(xí)和檢索方式篩選出候選答案。
(3)答案抽取模塊:依據(jù)某種打分規(guī)則,對(duì)檢索模塊的候選答案進(jìn)行打分,返回得分最高的那個(gè)候選項(xiàng)。
5 問(wèn)答系統(tǒng)的分類(lèi)與技術(shù)
按照問(wèn)答系統(tǒng)的任務(wù)類(lèi)型,大致可分為兩種類(lèi)型:
(1)面向任務(wù)型問(wèn)答系統(tǒng);
(2)面向非任務(wù)型問(wèn)答系統(tǒng)。
面向任務(wù)型問(wèn)答系統(tǒng)的目的是完成具體的任務(wù),例如查詢酒店,訂餐等。面向非任務(wù)問(wèn)答系統(tǒng)的主要目的是和用戶進(jìn)行自由交流,很典型的就是當(dāng)前流行的聊天機(jī)器人。
面向非任務(wù)問(wèn)答系統(tǒng)的主要有三種方法:
(1)基于檢索的方法,從事先定義好的數(shù)據(jù)庫(kù)中,根據(jù)某種規(guī)則,選出最合適的答案。優(yōu)點(diǎn)是通俗易懂,易于解釋?zhuān)秉c(diǎn)也很明顯,非常依賴事先定義的數(shù)據(jù)庫(kù)和檢索算法,如果數(shù)據(jù)質(zhì)量不高,那么很可能效果就很差。
(2)基于生成的方法,這是當(dāng)前研究領(lǐng)域的一個(gè)主流熱點(diǎn),它是通過(guò)理解提問(wèn)的問(wèn)題,來(lái)生成適當(dāng)?shù)幕貜?fù),典型的生成模型有seq2seq,transformer等。它的優(yōu)點(diǎn)是不依賴定義好的數(shù)據(jù)庫(kù),可以靈活回復(fù),缺點(diǎn)是容易生成一些無(wú)意義的回復(fù)和重復(fù)的回復(fù)等。
(3)基于檢索和生成混合的方法,結(jié)合檢索回復(fù)較為精確和生成回復(fù)較為靈活的優(yōu)點(diǎn),可以大大提升問(wèn)答系統(tǒng)的回復(fù)效率和性能。這也是問(wèn)答系統(tǒng)實(shí)際商業(yè)應(yīng)用的主流方法。
6 問(wèn)答系統(tǒng)的評(píng)估
如何評(píng)價(jià)一個(gè)問(wèn)答系統(tǒng)也是問(wèn)答系統(tǒng)的一個(gè)重要方面,然而由于回復(fù)的多樣性,當(dāng)前業(yè)界很難有統(tǒng)一的評(píng)價(jià)標(biāo)準(zhǔn)。
面向任務(wù)型問(wèn)答系統(tǒng)可以用任務(wù)的完成情況來(lái)給出評(píng)價(jià)。
面向非任務(wù)型問(wèn)答系統(tǒng)通常有以下幾種評(píng)價(jià)方法:
(1)計(jì)算嵌入距離,可分為三種情況,一種是直接求和再取平均,一種是先取絕對(duì)值,然后求平均,還有一種是貪心匹配。
(2)評(píng)測(cè)多樣性,計(jì)算distinct-ngram的數(shù)量和熵值。
(3)圖靈測(cè)試,用retrieval的discriminator來(lái)評(píng)估問(wèn)答系統(tǒng)所生成的回復(fù)。
7 問(wèn)答系統(tǒng)的挑戰(zhàn)與未來(lái)展望
深度學(xué)習(xí)的革命性發(fā)展給問(wèn)答系統(tǒng)帶來(lái)了長(zhǎng)足的進(jìn)步,從序列到序列的模型,到端到端的模型,再到最近很火的預(yù)訓(xùn)練,給問(wèn)答系統(tǒng)留下無(wú)限的發(fā)展空間。盡管深度學(xué)習(xí)技術(shù)獲得了快速的發(fā)展,但目前仍達(dá)不到商業(yè)普及應(yīng)用的要求,問(wèn)答系統(tǒng)仍然有著一些挑戰(zhàn),如語(yǔ)義嵌入尚不完善,如何利用大量的無(wú)標(biāo)注數(shù)據(jù),如何將常識(shí)庫(kù)加入問(wèn)答系統(tǒng)等等。接下來(lái),我們將討論一些可能的發(fā)展方向。
7.1 預(yù)訓(xùn)練
谷歌的BERT刷新了多項(xiàng)nlp記錄,也為問(wèn)答系統(tǒng)開(kāi)辟了新的道路。充分利用大量無(wú)標(biāo)注的文本數(shù)據(jù),將常識(shí)引入問(wèn)答系統(tǒng),是問(wèn)答系統(tǒng)走向通用智能的一個(gè)可能的趨勢(shì)。
7.2 通用模型
由于各個(gè)領(lǐng)域的知識(shí)數(shù)據(jù)結(jié)構(gòu)的不同,每個(gè)領(lǐng)域的問(wèn)答系統(tǒng)框架也不同,導(dǎo)致當(dāng)前的問(wèn)答系統(tǒng)仍主要用于單一領(lǐng)域。而處理多領(lǐng)域多語(yǔ)言的問(wèn)答系統(tǒng)是至關(guān)重要的,遷移學(xué)習(xí)和主動(dòng)學(xué)習(xí)則是解決此問(wèn)題的一種趨勢(shì)。
7.3 深度推理
當(dāng)前的問(wèn)答系統(tǒng)大都基于標(biāo)注好的數(shù)據(jù)和事先定義的數(shù)據(jù)庫(kù),在回復(fù)生成上仍缺少多樣性,其根本原因在于當(dāng)前的問(wèn)答系統(tǒng)仍無(wú)法深刻的理解真實(shí)世界,無(wú)法有效理解自然語(yǔ)言的豐富信息。語(yǔ)言的本質(zhì)是一個(gè)個(gè)符號(hào),符號(hào)與符號(hào)之間的關(guān)系神經(jīng)網(wǎng)絡(luò)可以學(xué)習(xí)到,但符號(hào)背后的物理世界則是計(jì)算機(jī)所無(wú)法理解的,如何讓計(jì)算機(jī)有效獲取物理世界的信息是極其重要的一步。
參考文獻(xiàn)
[1]李沛晏,朱露,吳多勝.問(wèn)答系統(tǒng)綜述[J].數(shù)字技術(shù)與應(yīng)用,2015(04):69+71.
[2]毛先領(lǐng),李曉明.問(wèn)答系統(tǒng)研究綜述[J].計(jì)算機(jī)科學(xué)與探索,2012,6(03):193-207.
[3]劉里,曾慶田.自動(dòng)問(wèn)答系統(tǒng)研究綜述[J].山東科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2007(04):73-76.
[4]Chen H, Liu X, Yin D,et al. A Survey on Dialogue Systems[J]. ACM SIGKDD Explorat ions Newslet ter,2017,19(2): 25-35.
[5]Arora S, Batra K,Singh S. Dialogue system: A brief review[J]. arXivpreprint arXiv: 1306. 4134,2013.
[6]Devlin J,Chang M W,Lee K,et al. Bert: Pre-training of deepbidi rect ional transformers forlanguage understanding[J]. arXivpreprint arXiv: 1810. 04805,2018.
[8]王東升,王衛(wèi)民,王石,符建輝,諸峰.面向限定領(lǐng)域問(wèn)答系統(tǒng)的自然語(yǔ)言理解方法綜述[J].計(jì)算機(jī)科學(xué),2017,44(08):1-8+41.
[9]李舟軍,李水華。基于Web的問(wèn)答系統(tǒng)綜述[J].計(jì)算機(jī)科學(xué),2017,44(06):1-7+42.
[10]何靖.開(kāi)放域問(wèn)答系統(tǒng)研究綜述[A].中國(guó)中文信息學(xué)會(huì)信息檢索與內(nèi)容安全專(zhuān)業(yè)委員會(huì).第六屆全國(guó)信息檢索學(xué)術(shù)會(huì)議論文集[C].中國(guó)中文信息學(xué)會(huì)信息檢索與內(nèi)容安全專(zhuān)業(yè)委員會(huì):中國(guó)中文信息學(xué)會(huì),2010:8.