聊天機(jī)器人(也可以稱為語音助手、聊天助手、對話機(jī)器人等)是目前非常熱的個(gè)人工智能研發(fā)與產(chǎn)品方向。很多大型互聯(lián)網(wǎng)公司投入重金研發(fā)相關(guān)技術(shù),并陸續(xù)推出了相關(guān)產(chǎn)品,究其原因在于大都將聊天機(jī)器人定位為未來各種服務(wù)的入口,尤其是移動(dòng)端App及可穿戴設(shè)備場景下提供各種服務(wù)的入口。
聊天機(jī)器人
聊天機(jī)器人的類型
目前市場上有各種類型的聊天機(jī)器人,比如有京東JIMI客服機(jī)器人,兒童教育機(jī)器人,小冰娛樂聊天機(jī)器人,Alexa居控制、車載控制機(jī)器人,Viv全方位服務(wù)類型機(jī)器人等。這是從應(yīng)用方向?qū)α奶鞕C(jī)器人的種劃分。
如果對應(yīng)用目的或者技術(shù)手段進(jìn)行抽象,聊天機(jī)器人可以有以下兩種劃分方法。
目標(biāo)驅(qū)動(dòng)(Goal Driven) VS. 無目標(biāo)驅(qū)動(dòng)(Non-Goal Driven)聊天機(jī)器人
目標(biāo)驅(qū)動(dòng)的聊天機(jī)器人指的是聊天機(jī)器人有明確的服務(wù)目標(biāo)或者服務(wù)對象,比如客服機(jī)器人、兒童教育機(jī)器人、類似Viv的提供天氣/訂票/訂餐等服務(wù)的服務(wù)機(jī)器人等,這種目標(biāo)驅(qū)動(dòng)的聊天機(jī)器人也可以稱作特定領(lǐng)域的聊天機(jī)器人。
無目標(biāo)驅(qū)動(dòng)聊天機(jī)器人指的是聊天機(jī)器人并非為特定領(lǐng)域服務(wù)目的而開發(fā),比如純粹聊天或者出于娛樂聊天目的以及計(jì)算機(jī)游戲中的虛擬人物聊天機(jī)器人都屬于此類。這種無明確任務(wù)目標(biāo)的聊天機(jī)器人也可以稱作為開放領(lǐng)域的聊天機(jī)器人。
檢索式 VS. 生成式聊天機(jī)器人
檢索式聊天機(jī)器人指的是事先存在個(gè)對話庫,聊天系統(tǒng)接收到用戶輸入句子后,通過在對話庫中以搜索匹配的方式進(jìn)行應(yīng)答內(nèi)容提取。很明顯,這種方式對對話庫要求很高,需要對話庫足夠大,能夠盡量多地匹配用戶問句,否則會(huì)經(jīng)常出現(xiàn)找不到合適回答內(nèi)容的情形(因?yàn)樵谡鎸?shí)場景下用戶說什么都是可能的),但它的好處是回答質(zhì)量高,因?yàn)閷υ拵熘械膬?nèi)容都是真實(shí)的對話數(shù)據(jù),表達(dá)比較自然。
生成式聊天機(jī)器人則采取不同的技術(shù)思路,在接收到用戶輸入句子后,采用定技術(shù)手段自動(dòng)生成句話作為應(yīng)答,這個(gè)路線機(jī)器人的好處是可能覆蓋任意話題的用戶問句,但是缺點(diǎn)是生成應(yīng)答句子質(zhì)量很可能會(huì)存在問題,比如語句不通順、句法錯(cuò)誤等看上去比較低的錯(cuò)誤。
好聊天機(jī)器人應(yīng)該具備的特點(diǎn)
般而言,個(gè)的開放領(lǐng)域聊天機(jī)器人應(yīng)該具備如下特點(diǎn):
先,針對用戶的回答或者聊天內(nèi)容,機(jī)器人產(chǎn)生的應(yīng)答句應(yīng)該和用戶的問句語義致并邏輯正確,如果聊天機(jī)器人答非所問或者不知所云,或者總是回答說“對不起,我不理解您的意思”,無疑是毀滅性的用戶體驗(yàn)。
其次,回答應(yīng)該語法正確。這個(gè)看似是基本要求,但是對于采用生成式對話技術(shù)的機(jī)器人來說其實(shí)有定困難,因?yàn)闄C(jī)器人的回答是個(gè)字個(gè)字生成,要保證這種生成的若干個(gè)字句法正確,并不容易做得那么。
再次,應(yīng)答應(yīng)該是有趣、多樣而非沉悶無聊的。盡管有些應(yīng)答看上去語義沒什么問題,但目前技術(shù)訓(xùn)練出的聊天機(jī)器人很容易產(chǎn)生“安全回答”的問題,就是說,不論用戶輸入什么句子,聊天機(jī)器人總是回答“好啊”、“是嗎”等諸如此類,看上去語義說得過去,但是這給人很無聊的感覺。此外,聊天機(jī)器人應(yīng)該給人“個(gè)性表達(dá)致”的感覺。因?yàn)槿藗兒土奶鞕C(jī)器人交流,從內(nèi)心習(xí)慣還是將溝通對象想象成個(gè)人,而個(gè)人應(yīng)該有相對致的個(gè)性特征,如果用戶連續(xù)問兩次“你多大了”,而聊天機(jī)器人分別給出不同的歲數(shù),那么會(huì)給人交流對象精神分裂的印象,這即是典型的個(gè)性表達(dá)不致。而好的聊天機(jī)器人應(yīng)該對外體現(xiàn)出各種基本背景信息以及愛好、語言風(fēng)格等方面致的回答。
幾種主流技術(shù)思路
當(dāng)前聊天機(jī)器人的幾種主流技術(shù)包括:基于人工模板、基于檢索、基于機(jī)器翻譯技術(shù),以及基于深度學(xué)習(xí)的聊天機(jī)器人。
基于人工模板的技術(shù)通過人工設(shè)定對話場景,并對每個(gè)場景編寫針對性的對話模板,模板描述了用戶可能的問題以及對應(yīng)的答案。這個(gè)技術(shù)路線的好處是精準(zhǔn),缺點(diǎn)是需要大量人工工作,而且可擴(kuò)展性差,需要個(gè)場景個(gè)場景去擴(kuò)展。目前市場上各種類似于Siri的對話機(jī)器人中都大量使用了人工模板的技術(shù),但其精準(zhǔn)性是其他方法還無法比擬的。
基于檢索技術(shù)的聊天機(jī)器人則走的是類似搜索引擎的路線,事先存儲(chǔ)好對話庫并建立索引,根據(jù)用戶問句,在對話庫中進(jìn)行模糊匹配找到合適的應(yīng)答內(nèi)容。
基于機(jī)器翻譯技術(shù)的聊天機(jī)器人把聊天過程比擬成機(jī)器翻譯過程,就是說將用戶輸入聊天信息Message,翻譯成聊天機(jī)器人應(yīng)答Response的過程類似于把英語翻譯成漢語。基于這種假設(shè),就完全可以將統(tǒng)計(jì)機(jī)器翻譯領(lǐng)域相對成熟的技術(shù)直接應(yīng)用到聊天機(jī)器人開發(fā)中來。
基于深度學(xué)習(xí)的聊天機(jī)器人技術(shù)是本文后續(xù)內(nèi)容主要介紹的技術(shù)路線,總體而言,絕大多數(shù)技術(shù)都是在Encoder-Decoder(或者稱作Sequence to Sequence)深度學(xué)習(xí)技術(shù)框架下改進(jìn)的。使用深度學(xué)習(xí)技術(shù)來開發(fā)聊天機(jī)器人相對傳統(tǒng)方法來說,整體思路非常簡單并可擴(kuò)展。