歡迎來到智能聊天機(jī)器人的世界:智能伴侶和會話代理將讓人們的生活更加智慧。一篇人工智能行業(yè)的研究論文甚至指出,到2020年,人類與機(jī)器人的交流甚至比其配偶交流還要多。所以,人們需要為接受這種新生活做好準(zhǔn)備。
第一個人形機(jī)器人Sofia得到行業(yè)媒體的廣泛關(guān)注,并使用類似人類的對話進(jìn)行采訪。Sofia與人類相比如何?事實超出了人們的想像。Sofia聊天機(jī)器人只提供了理解對話的假象,但是當(dāng)記者提出比較復(fù)雜的問題時,開始意識到Sofia只能回答一組固定的問題。
那么到現(xiàn)在為止,人們需要對聊天機(jī)器人有更加清晰的認(rèn)識。
企業(yè)是否應(yīng)該投資具有這些限制因素的聊天機(jī)器人?每種聊天機(jī)器人技術(shù)都有其缺陷,但需要了解現(xiàn)在可以構(gòu)建的內(nèi)容、需要避免的內(nèi)容,以及如何突破這些限制。
許多企業(yè)嘗試使用行業(yè)領(lǐng)先的聊天機(jī)器人供應(yīng)商和云計算技術(shù)來構(gòu)建復(fù)雜的聊天機(jī)器人,并進(jìn)行了大量投資,卻遇到了一些障礙。如果企業(yè)是根據(jù)計劃的內(nèi)容實施項目并開始構(gòu)建的話,很快就會認(rèn)識到這些限制。然而,大多數(shù)供應(yīng)商都聲稱構(gòu)建聊天機(jī)器人很容易,但實際上,在構(gòu)建真正的會話代理時,所有這些技術(shù)都不盡如人意。
通過聊天機(jī)器人的當(dāng)前實現(xiàn),人們采用的可能是第一代人工智能聊天機(jī)器人,它們通過編寫腳本來回答針對性的問題。這里所說的“腳本化”是指聊天機(jī)器人經(jīng)過訓(xùn)練,能夠理解一般詞匯、實體、隱喻、同義詞等。聊天機(jī)器人使用一組固定的數(shù)據(jù)流來理解場景。對于特定于領(lǐng)域的用例,需要進(jìn)行額外的訓(xùn)練,并且需要對特定領(lǐng)域術(shù)語和單詞之間的關(guān)系進(jìn)行訓(xùn)練。例如,如果企業(yè)正在建立一個購物顧問聊天機(jī)器人,“黑白相間的連衣裙”意味著“黑白”作為顏色和服裝的類別。人們可能會期望顏色“黑白”是相當(dāng)通用的,應(yīng)該很容易被人工智能系統(tǒng)識別出來,但事實并非如此,將在本文中介紹這一點。
本文的目的是幫助人們就如何使用現(xiàn)有的聊天機(jī)器人實現(xiàn)設(shè)計人工智能聊天機(jī)器人和解決方案做出明智的決定。
什么是聊天機(jī)器人?
聊天機(jī)器人是機(jī)器人與人類進(jìn)行對話的軟件程序。這種對話可以通過文本方法、語音,甚至通過識別人類表達(dá)來實現(xiàn)。
聊天機(jī)器人的互動范圍從簡單的答案到諸如“外部溫度是多少”等問題,以及需要進(jìn)行一系列對話以獲得結(jié)果的復(fù)雜用例,例如使用聊天機(jī)器人預(yù)訂假期旅行或提供財務(wù)建議。
用于構(gòu)建聊天機(jī)器人的技術(shù)是什么?
聊天機(jī)器人并不是一個新概念。早期的技術(shù)使用來自用戶的一組固定輸入來驅(qū)動對話或掃描輸入消息,以從數(shù)據(jù)庫中查找關(guān)鍵字和查找信息/響應(yīng)。這些都是基于規(guī)則和關(guān)鍵字驅(qū)動的,而無需機(jī)器人理解輸入消息的場景和含義?;谳斎?,將提供預(yù)定義的編程響應(yīng)。
隨著人工智能的出現(xiàn),聊天機(jī)器人使用自然語言處理等技術(shù)來理解輸入消息中的語言和意圖,并采取糾正措施。當(dāng)人工智能系統(tǒng)試圖理解人類語言,而以多種方式問相同的問題時,人工智能系統(tǒng)能夠理解總體意圖。一旦確定了意圖,就可以從輸入中提取感興趣的主題。
例如,“找到從美國到英國的最便宜的航班”,其意思類似于“找到從美國到英國的價格最低機(jī)票”。其意圖是最便宜或價格最低的航班,而位置是從美國到英國的航班。
人工智能開源軟件包或人工智能的自然語言處理(NLP)云服務(wù)可以用來開發(fā)聊天機(jī)器人,人們將其稱之為“聊天機(jī)器人實現(xiàn)”,以備將來參考。在本文中,將詳細(xì)討論聊天機(jī)器人的實現(xiàn)。
開發(fā)人工智能聊天機(jī)器人應(yīng)該記住什么?
當(dāng)人工智能系統(tǒng)很好地理解域時,聊天機(jī)器人工作得很好。
由于人工智能聊天機(jī)器人依賴于自然學(xué)習(xí)處理(NLP)來理解輸入消息的語義,除非在域上訓(xùn)練自然學(xué)習(xí)處理(NLP)解析器,否則識別感興趣的意圖和主題的準(zhǔn)確性將是非常低或不可接受的。
以購物聊天機(jī)器人為例,它根據(jù)最新的流行趨勢為用戶提供購買建議。
考慮以下來自用戶的3個查詢。
查詢1-“展示黑白顏色的流行趨勢,適用于中等規(guī)模的圣誕派對的禮服。”
查詢2-“展示白色3英寸高跟鞋。”
查詢3-“找一件2000美元以下的黑白花卉連衣裙。”
在這里,聊天機(jī)器人需要了解以下內(nèi)容:
•購物語言。
•作為購物查詢的意圖
•域作為服裝和鞋子的購物查詢。(即可以有多個域,例如雜貨、電子產(chǎn)品、書籍等)
•服裝購物類別和術(shù)語:
o類別-連衣裙、高跟鞋等
o變量- 尺寸(中/大等),顏色(各種顏色和組合,如黑色和白色),鞋跟尺寸(3英寸)等。
o價格和范圍 - 2000美元-3000美元
o品牌– 例如AND、耐克等
任何聊天機(jī)器人實現(xiàn)都不會理解域。開發(fā)者需要在自定義域上訓(xùn)練聊天機(jī)器人以識別場景和語言。
例如,現(xiàn)有的自然學(xué)習(xí)處理(NLP)解析器不會將“AND”識別為品牌。那么來看看一些領(lǐng)先的Cloud AI NLP服務(wù)如何識別這句話,“找一件2000美元以下的黑白花卉連衣裙。”
這是Watson NLP實現(xiàn)的快照
Watson NLP的概念
來自Watson NLP的部分結(jié)果
正如人們所看到的,Watson NLP將“白色花卉連衣裙”視為關(guān)鍵詞,將“黑色”視為概念。理想情況下,它應(yīng)該將“黑白”識別為一個概念,因為正在尋找這些顏色的組合。
這件衣服也可以是一個概念,因為它非常通用?;ɑ芸梢允瞧浞b的關(guān)鍵字。以正確的方式識別所有事實很重要,因為根據(jù)事實,可以將其轉(zhuǎn)換為搜索查詢,以從數(shù)據(jù)存儲(或從相應(yīng)的搜索索引)獲取所需的詳細(xì)信息。
例如,上述內(nèi)容應(yīng)分解為:
顏色=“黑與白”
類別 =“連衣裙”
性別=“女性”
價格<2000美元
圖案=“floral”或類別中的關(guān)鍵字=“floral”
(顏色、類別、性別、價格、圖案是人們要搜索的所有列或索引)
Watson NLP解析器不會將“AND”識別為一種品牌,而將“AND”識別為“和”這個連詞,這并不奇怪,因為它沒有接受此輸入的訓(xùn)練。
那么來看看Google NLP如何對這句話進(jìn)行分類。以下是Google NLP的快照。
來自Google NLP的實體分類
Google NLP部分展示結(jié)果
從上圖中可以看出,Google NLP將實體識別為“服裝”,但不識別“黑白”的顏色。對于品牌標(biāo)記的部分,它就像Watson NLP識別“AND”一樣,認(rèn)為它是一個連詞而不是品牌。
以上情況適用于任何可用的自然學(xué)習(xí)處理(NLP)實現(xiàn),它無法理解句子的正確場景。其用例非常簡單。即使在這些示例中訓(xùn)練自然學(xué)習(xí)處理(NLP)實現(xiàn),它也會失敗,因為開發(fā)者需要為這些條件插入特定的自然學(xué)習(xí)處理(NLP)規(guī)則以獲得所需的結(jié)果。隨著需要推斷的復(fù)雜性和場景的增加,進(jìn)行訓(xùn)練也無濟(jì)于事,因為開發(fā)者永遠(yuǎn)無法為此類條件提出通用模型。如果只依賴目前的自然學(xué)習(xí)處理(NLP)實現(xiàn)的話,這將成為開發(fā)聊天機(jī)器人的最大限制。
根據(jù)行業(yè)專家在構(gòu)建復(fù)雜的購物個性化顧問方面的經(jīng)驗,所有現(xiàn)成的人工智能自然學(xué)習(xí)處理(NLP)實施都不符合要求。這三個短語中有一個簡單的場景:“黑白連衣裙”,“黑色連衣裙”和“藍(lán)色牛仔褲和白色襯衫”。在所有3個例子中,“AND”這個詞的使用有一個不同的意思。在第一種情況下,它表示顏色“黑白”的組合,在第二種情況下,“AND”代表品牌,而在第三種情況下,AND是兩種查詢的連接(也就是“和”)。即使有必要的訓(xùn)練,任何可用的解決方案都無法實現(xiàn)推廣模型。這些只是需要強(qiáng)調(diào)的眾多例子中的一小部分。想象一下處理醫(yī)學(xué)文獻(xiàn)時的復(fù)雜性。在這個案例中,最終構(gòu)建了針對所有此類場景的特定于域的自然學(xué)習(xí)處理(NLP)實現(xiàn)。
一般來說,在設(shè)計聊天機(jī)器人解決方案時,從一個封閉的域開始,以及聊天機(jī)器人需要回答什么樣的問題。不要從一開始就構(gòu)建通用聊天機(jī)器人,因為很難獲得所需的準(zhǔn)確性。其次,如果開發(fā)者使用的是云計算供應(yīng)商或第三方實現(xiàn),請確保其用例可以通過默認(rèn)實現(xiàn),或者需要構(gòu)建組件來解決它。
構(gòu)建聊天機(jī)器人的典型用例是什么?
在當(dāng)今的數(shù)字時代,客戶正在尋找即時信息和快速解決所有問題的方法。
聊天機(jī)器人提供了一種有效的方式,可以直接與終端客戶保持聯(lián)系,并提供信息——無論是通過消息聊天應(yīng)用程序,還是通過Alexa或Google Home等支持語音的服務(wù)。
下面列出了一些典型的用例:
•了解客戶并通過各種渠道直接與客戶互動的能力,如零售品牌直接與最終客戶聯(lián)系。
•提高客戶參與度、互動性,并提供快速解決方案。
•通過全天候向客戶提供相關(guān)信息來擴(kuò)展客戶服務(wù)運營。
•更好地了解客戶及其偏好,以提供超個性化服務(wù),如個人助理。
•提供以自然直觀的方式與智能家居等互聯(lián)設(shè)備進(jìn)行交互的能力。
•提供專家指導(dǎo),如提供投資建議的財務(wù)助理的聊天機(jī)器人。
構(gòu)建人工智能聊天機(jī)器人的高級步驟是什么?
以下是構(gòu)建人工智能聊天機(jī)器人的高級步驟:
•定義構(gòu)建聊天機(jī)器人的業(yè)務(wù)用例和最終目標(biāo)。
•定義對話接口
o定義需要回答的問題類型
o定義關(guān)于用戶如何進(jìn)行各種交互的對話/對話流程。例如,預(yù)訂航班是一個對話流程,預(yù)訂酒店是另一個對話流程等。而在對話流程中,與用戶的交互流程是什么?
o定義如何捕獲用戶關(guān)于所提供答案的反饋。反饋可以是明確的,例如用戶對答案進(jìn)行評級,或者是隱式的,比如用戶花費多少時間查看答案以及后續(xù)活動。
•問題/答案探索
o確定問題的現(xiàn)有來源(如果有),例如網(wǎng)站常見問題解答、呼叫中心日志等。
o創(chuàng)建將要詢問的問題的表示。
o創(chuàng)造不同的問題來訓(xùn)練聊天機(jī)器人理解語言并能很好地概括。
o確定答案來源-是程序化響應(yīng)還是來自內(nèi)部知識來源和文檔(如解決設(shè)備相關(guān)問題的可用技術(shù)手冊)
•采用技術(shù)方法
在此步驟中,開發(fā)者將決定如何實現(xiàn)聊天機(jī)器人。有兩種方法:使用可用的框架(如TensorFlow、NLP實施的NLP實現(xiàn))和自定義組件或使用現(xiàn)有的平臺服務(wù)(如Google NLP、Amazon Lex或Azure Bot服務(wù))構(gòu)建開發(fā)者自己的聊天機(jī)器人實例。
在這兩種方法中,開發(fā)者都需要訓(xùn)練聊天機(jī)器人實例以識別問題意圖、域和語言。現(xiàn)有平臺服務(wù)通過提供使創(chuàng)建聊天機(jī)器人更容易的必需實用程序簡化了此過程。
•選擇交付渠道
在此步驟中,開發(fā)者將決定如何通過所需通道向最終用戶公開聊天機(jī)器人。該頻道可以是網(wǎng)絡(luò)、移動或語音設(shè)備。
聊天實例通常會公開API(提出問題并獲得響應(yīng)),這可以通過渠道實施來調(diào)用。開發(fā)者還可以通過Facebook Messenger等第三方服務(wù)或Amazon Alexa等語音服務(wù)發(fā)布開發(fā)者的聊天機(jī)器人實施。
•發(fā)布、監(jiān)控和反饋
聊天機(jī)器人發(fā)布之后,開發(fā)者通常會存儲所有用戶交互,以幫助其更好地分析用戶行為及其偏好。反過來,用戶和行為數(shù)據(jù)將用于提供更個性化的服務(wù)。如何使用此新用戶信息取決于開發(fā)者的用例。例如,如果旅行聊天機(jī)器人推薦新的假期旅行,它可以根據(jù)其上次的旅行互動建議選項。開發(fā)者需要構(gòu)建一個推薦系統(tǒng),該系統(tǒng)會查看過去用戶交互的歷史記錄并建議選項。
另一個重點是定期捕獲用戶的反饋,以了解聊天機(jī)器人是否提供了正確的信息。捕獲的反饋將用于改進(jìn)聊天機(jī)器人實施,這可以導(dǎo)致使用新信息訓(xùn)練聊天機(jī)器人實施。例如,開發(fā)者的聊天機(jī)器人可能未接受過識別某些實體和概念的培訓(xùn),因此,其答案可能不合適。開發(fā)者需要根據(jù)反饋計劃構(gòu)建和發(fā)布增量模型。
如何將聊天機(jī)器人與第三方服務(wù)集成?
作為聊天機(jī)器人技術(shù)實施的一部分,聊天機(jī)器人實例通常會公開API(提出問題并獲得響應(yīng)),這可以通過渠道實施來調(diào)用。
頻道可以是網(wǎng)絡(luò)、移動或語音設(shè)備。如果開發(fā)者已經(jīng)有一個移動應(yīng)用程序,可以將其作為移動應(yīng)用程序的一部分嵌入。
開發(fā)者還可以通過第三方聊天啟用的服務(wù)(如Facebook消息傳遞應(yīng)用程序)或通過支持語音的服務(wù)(如Amazon Alexa)作為技能發(fā)布其聊天機(jī)器人實例。
所有這些啟用聊天的服務(wù)都提供了一個框架來插入開發(fā)者的實例。該框架提供了用于攔截聊天消息的代碼攔截器。開發(fā)者需要擴(kuò)展其框架并插入自己的實例。例如,如果用戶在Facebook Messenger上詢問問題,則問題將通過預(yù)定義的代碼攔截器傳遞給開發(fā)者的聊天實例。將處理該消息并將響應(yīng)發(fā)回,這將被發(fā)送回用戶。
同樣,如果開發(fā)者需要通過Alexa使聊天機(jī)器人可用,需要使用Alexa技能套件界面將其包裝為Alexa技能。用戶在Alexa中啟用開發(fā)者的技能后,其技能將截獲任何語音消息,可以根據(jù)聊天機(jī)器人提供所需的實施和響應(yīng)。
如何使用聊天機(jī)器人平臺構(gòu)建聊天機(jī)器人?
聊天機(jī)器人平臺為開發(fā)者提供了一組設(shè)計、開發(fā)和部署聊天機(jī)器人的服務(wù)。它們?yōu)殚_發(fā)者提供了框架和指導(dǎo)實用程序來構(gòu)建聊天機(jī)器人。
AWS、Azure、IBM、Google Cloud等云計算提供商為開發(fā)者提供了一組服務(wù),可以幫助其生成對話,使用自然語言處理(NLP)技術(shù)了解對話語言,創(chuàng)建代碼攔截器以采取必要的操作,并通過API提供解決方案。
每個提供商采用的基本方法是相同的。它們允許開發(fā)者:
•使用云計算提供商提供的一些可視界面或工具設(shè)計對話流程。
•通過這些會話流程,開發(fā)者可以:
o提出一系列問題和多種方式,可以提出相同的問題。
o定義問題的意圖。例如,對于“查找從美國到英國的最便宜航班”的問題,意圖是找到最低的機(jī)票價格。
o找出要從意圖中提取的感興趣的實體。聊天機(jī)器人提供商需要了解這些實體。在上面的示例中,實體是國家/地區(qū)列表:英國,美國等。這些實體可以是通用的,由云計算提供商自動識別,或者云計算提供商提供可以提供或培訓(xùn)這些實體的機(jī)制(包括同義詞、隱喻等)。
o使用提取的實體執(zhí)行意圖所需的操作。例如,在上面的示例中,調(diào)用提供英國和美國作為“從”和“到”位置的航班API服務(wù)。
o提供響應(yīng)。
•通過端點測試并公開聊天機(jī)器人
o云計算供應(yīng)商通常提供通過端點(如REST API)公開聊天機(jī)器人功能的功能。
上述技術(shù)適用于簡單到中等復(fù)雜的流程,例如常見問題解答,針對客戶查詢的復(fù)雜問題和答案,固定的步驟(預(yù)訂出租車)等。任何需要復(fù)雜處理查詢的東西,例如購物顧問示例,需要使用自然語言處理(NLP)和其他技術(shù)定制開發(fā)。
微軟公司提供了一個問題和解答服務(wù),可讓開發(fā)者通過問題和解答創(chuàng)建機(jī)器人。
聊天機(jī)器人不是真實的嗎?
當(dāng)前一代聊天機(jī)器人可以被認(rèn)為是通過自然語言處理(NLP)和固定會話流等技術(shù)驅(qū)動的智能對話系統(tǒng)。
聊天機(jī)器人不了解任何域名。開發(fā)者需要訓(xùn)練聊天機(jī)器人以了解域名。此外,根據(jù)域的復(fù)雜性,將逐步訓(xùn)練和添加子域。例如,幫助客戶預(yù)訂出租車的聊天機(jī)器人是一個固定域名的示例,而幫助醫(yī)生進(jìn)行癌癥治療的聊天機(jī)器人將逐步接受各種類型的癌癥培訓(xùn)。
現(xiàn)在看看圍繞人工智能聊天機(jī)器人的一些營銷噱頭:
•掌握并了解所有聊天機(jī)器人——這些聊天機(jī)器人正在銷售,用戶可以在其中攝取數(shù)百萬份文檔,如醫(yī)學(xué)文獻(xiàn),并可以提出問題,這些問題可以提供疾病診斷等專家協(xié)助。除非經(jīng)過適當(dāng)?shù)挠?xùn)練,否則這類系統(tǒng)永遠(yuǎn)不會提供所需的準(zhǔn)確性。適當(dāng)是指訓(xùn)練這些系統(tǒng)可能需要數(shù)年時間。這些系統(tǒng)的根本問題在于它們?nèi)匀粺o法理解域的完整語言和復(fù)雜性。用戶通常最終會使用自定義域名和無限語言規(guī)則,從長遠(yuǎn)來看,這絕對不夠智能。這種系統(tǒng)的預(yù)測通常不準(zhǔn)確。
•自我學(xué)習(xí)聊天機(jī)器人。人們以前是否聽過這個術(shù)語?這又是一個誤解,據(jù)說聊天機(jī)器人可以自己學(xué)習(xí)。開發(fā)者必須訓(xùn)練聊天機(jī)器人需要學(xué)習(xí)的東西。通常,用戶可以通過與聊天機(jī)器人應(yīng)用程序的交互來捕獲用戶行為詳細(xì)信息。這將包括捕獲用戶分析信息,例如通過顯式或隱式方式以某種方式捕獲信息。顯式信息可以是產(chǎn)品的用戶評級,隱含的可以是用戶花在查看響應(yīng)上的時間。
一旦很好地了解用戶并獲得了他們的數(shù)據(jù),就會對開發(fā)者要向用戶推薦的內(nèi)容產(chǎn)生推薦問題。因此,開發(fā)者最終會構(gòu)建推薦算法來推薦一些東西。例如,對于金融科技應(yīng)用程序,這意味著根據(jù)他定期查看的股票或其投資組合推薦類似股票。
不同的域和用例需要不同的推薦算法,并且需要作為聊天機(jī)器人的一部分進(jìn)行開發(fā)。然而,學(xué)習(xí)是封閉的。例如,如果開發(fā)者有一個可以幫助用戶預(yù)訂餐廳的聊天機(jī)器人,它可以推薦類似的餐館,但它不能推薦住宿的地方,因為它只知道用戶喜歡的口味。有人可以建立一個推薦系統(tǒng),跟蹤用戶食宿問題,然后嘗試提出一個提供推薦的相關(guān)性,正如系統(tǒng)現(xiàn)在所知,“用戶吃XYZ很可能是冒險的。所以,推薦一個徒步旅行的地方。再次,在這種情況下,建議是根據(jù)用戶知道的和想要推薦的內(nèi)容。不知道是否存在任何此類假設(shè),只能通過可以推斷出的數(shù)據(jù)和反饋。關(guān)鍵是,所有這些假設(shè)、數(shù)據(jù)和反饋都需要設(shè)計和開發(fā),并說聊天機(jī)器人自己學(xué)習(xí)是非常誤導(dǎo)的。”
•通用的、可生成聊天機(jī)器人能夠從頭學(xué)習(xí)新概念,并提供人類響應(yīng)的聊天機(jī)器人。當(dāng)它從開放領(lǐng)域?qū)W習(xí)時,聊天機(jī)器人的行為將類似于著名的Microsoft Tay聊天機(jī)器人,而它在發(fā)布日被迫中止發(fā)布,因為它開始從推文中學(xué)習(xí)不需要的細(xì)節(jié),并開始發(fā)布煽動性和令人反感的推文。其生成的聊天機(jī)器人根據(jù)單詞的概率制定響應(yīng),并創(chuàng)建一個語法正確的句子,而不理解其真正的意義。
正如以前提到的,第一個重點應(yīng)該是正確地使用特定于域的聊天機(jī)器人,并且使用當(dāng)前的技術(shù),但遠(yuǎn)遠(yuǎn)沒有實現(xiàn)愿景。
聊天機(jī)器人會讓人工坐席過時嗎?
為了回答這個問題,需要了解聊天機(jī)器人目前提供的功能。
當(dāng)前的聊天機(jī)器人實例現(xiàn)可以很好地處理與用戶、重復(fù)任務(wù)和客戶服務(wù)任務(wù)的某些初始方面的固定對話框。只要有一組固定的流程和流程可以實現(xiàn)自動化,聊天機(jī)器人就可以用來為任何查詢提供全天候支持。如果使用人類專業(yè)知識來回答基本的問題集,并且答案很容易獲得,那么它最終將被替換。
但在現(xiàn)實生活中,大多數(shù)對話通常不遵循固定的流程范式。但是,如果會話從基本問題轉(zhuǎn)移到需要進(jìn)一步分析的問題,或者會話主題發(fā)生變化,那么用戶需要一個復(fù)雜的聊天機(jī)器人實例來處理各種會話流,識別場景切換,識別用戶的聊天機(jī)器人可能沒有的意圖,注意并創(chuàng)建查詢以從其知識源中查找該信息。用戶現(xiàn)在正在從一組固定的流程轉(zhuǎn)移到需要由聊天機(jī)器人解釋的更動態(tài)的流程。構(gòu)建這樣復(fù)雜的聊天機(jī)器人實例需要使用機(jī)器學(xué)習(xí)技術(shù)和自定義解決方案進(jìn)行復(fù)雜的特定領(lǐng)域。而現(xiàn)有的聊天機(jī)器人服務(wù)無法構(gòu)建這樣的聊天機(jī)器人實例。
即使擁有世界上所有數(shù)據(jù),使用當(dāng)前技術(shù)和研究時的無限處理和計算能力,開發(fā)者也永遠(yuǎn)無法建立一個可以與該領(lǐng)域的專家競爭的系統(tǒng)。從現(xiàn)在開始,即使是5年的時間,也不可能開發(fā)出如此高水平的智能聊天機(jī)器人。
例如,聊天機(jī)器人或助手可以幫助醫(yī)生準(zhǔn)確而一致地推薦癌癥治療嗎?答案是否定的。
聊天機(jī)器人提供的信息可以幫助醫(yī)生從提供的答案中獲取線索,這可能是對或錯。用戶永遠(yuǎn)不能證明這一點。聊天機(jī)器人總是可以幫助專家完成一些工作。最終,這些系統(tǒng)基于一些概率拋出了大量答案。其答案僅限于用戶輸入系統(tǒng)的內(nèi)容,無法動態(tài)推斷新知識或?qū)⑷祟悓<业刃畔㈥P(guān)聯(lián)起來得出任何結(jié)論。
雖然有研究試圖確定使用深層神經(jīng)網(wǎng)絡(luò)進(jìn)行會話流的能力,但離構(gòu)建真正的會話接口(能夠理解語言和領(lǐng)域的本質(zhì))還很遠(yuǎn)。此外,所提供的答案必須是可解釋的,并且,除非用戶有一種方法來回溯為什么提供了一個特定的答案,否則這種深層次的神經(jīng)系統(tǒng)不能用于需要可審計性和可解釋性的用例。
聊天機(jī)器人給人們帶來一種智慧的感覺,但達(dá)到真正的智能還有很長的路要走。
人工智能能否對問題產(chǎn)生動態(tài)響應(yīng)?
開發(fā)者可以使用深度學(xué)習(xí)來構(gòu)建聊天機(jī)器人。各種深度學(xué)習(xí)架構(gòu)可用于解決特定的各種用例。例如,對于計算機(jī)視覺(即圖像識別),用戶將使用卷積神經(jīng)網(wǎng)絡(luò)技術(shù)作為起點。對于語言翻譯或文本生成,可以使用循環(huán)神經(jīng)網(wǎng)絡(luò)等。
為了理解聊天對話,用戶將從一個循環(huán)神經(jīng)網(wǎng)絡(luò)的變體開始。將構(gòu)建序列到序列模型。簡單來說,序列到序列模型由兩個組件組成,第一個組件(編碼器)試圖通過其隱藏層理解輸入句子的場景,第二個組件(解碼器)接收來自編碼器的輸出并生成響應(yīng)。
上述技術(shù)要求開發(fā)者擁有大量的訓(xùn)練數(shù)據(jù),其中包含問題和答案。該技術(shù)在封閉域中工作,但由于響應(yīng)本質(zhì)上是動態(tài)的,因此將其直接放到最終用戶可能會有點風(fēng)險。其次,當(dāng)開發(fā)者想要解釋輸入句子以提取信息并自己制定響應(yīng)時,這些技術(shù)不起作用,例如以前討論過的購物顧問查詢用例。
在開放式域名的情況下,聊天機(jī)器人的行為類似于之前給出的Microsoft Tay聊天機(jī)器人示例。
對于循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),響應(yīng)/答案取決于其先前的狀態(tài)(或更早的狀態(tài))。因此,對于需要提供場景的深層會話用例,循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)不起作用。用戶需要在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)上使用名為長期短期記憶網(wǎng)絡(luò)(LSTM)的變體。該領(lǐng)域正在進(jìn)行大量研究。
總結(jié)
當(dāng)前的聊天機(jī)器人是一種弱形式的人工智能,它提供了理解輸入消息/問題意圖的能力。為了讓聊天機(jī)器人系統(tǒng)了解其意圖,需要對其進(jìn)行相應(yīng)領(lǐng)域的培訓(xùn)。用戶可以用多種方式問同一個問題,聊天機(jī)器人實例仍然可以推斷出其意圖。
對于對話框,當(dāng)前的技術(shù)提供了定義固定會話流的功能,因此交互是封閉和有限的。
聊天機(jī)器人可以很好地管理生產(chǎn)力和客戶服務(wù)任務(wù)的某些方面。但是,隨著域的復(fù)雜性增加,當(dāng)前的技術(shù)不足,即使經(jīng)過足夠的訓(xùn)練,用戶也無法達(dá)到所需的準(zhǔn)確度。用戶需要依賴其他機(jī)器語言技術(shù)和解決方案(如規(guī)則、推理和自定義域元數(shù)據(jù))的組合來提供解決方案。這些成為一次性解決方案,難以概括。在某些情況下,即使是一次性解決方案也會非常復(fù)雜,比如建立一個顧問來準(zhǔn)確一致地推薦癌癥治療方法。
雖然有關(guān)于使用深度神經(jīng)網(wǎng)絡(luò)的研究,但仍然遠(yuǎn)遠(yuǎn)沒有建立一個能夠理解語言和領(lǐng)域本質(zhì)的真正的會話聊天機(jī)器人。此外,所提供的答案需要解釋,除非有辦法回溯為什么提供特定答案,否則這種深度神經(jīng)系統(tǒng)不能用于需要可審計性和可解釋性的用例。