聊天機(jī)器人的體系結(jié)構(gòu)是怎樣的
掃描二維碼
隨時(shí)隨地手機(jī)看文章
分析聊天機(jī)器人,因其是在現(xiàn)實(shí)生活中利用人工智能最流行,被最廣泛采用和使用門(mén)檻最低的方式之一。
如果你曾經(jīng)使用過(guò)客戶支持的在線聊天服務(wù),你可能會(huì)發(fā)現(xiàn)你的“聊天對(duì)象”很“笨拙”和“呆板”,像個(gè)機(jī)器人?沒(méi)錯(cuò),正在和你聊天的“人”可能實(shí)際上就是一個(gè)機(jī)器人。
這是聊天機(jī)器人和人工智能的時(shí)代。有關(guān)這方面的最新進(jìn)展正在不斷涌現(xiàn),以至于聊天機(jī)器人正在客戶服務(wù)領(lǐng)域取代人類(lèi)。
人工智能已不再僅僅是單純的科幻夢(mèng)。你曾想過(guò)有一天人類(lèi)與智能機(jī)器進(jìn)行互動(dòng)和溝通嗎?
聊天機(jī)器人憑借其智能,擬人化的回答以及學(xué)習(xí)通過(guò)從機(jī)器學(xué)習(xí)中獲得的經(jīng)驗(yàn)的能力,使這個(gè)不切實(shí)際的想法變?yōu)榭赡堋?/p>
聊天機(jī)器人是在現(xiàn)實(shí)生活中利用人工智能最流行,被最廣泛采用和使用門(mén)檻最低的方式之一。企業(yè)將聊天機(jī)器人視為使客戶服務(wù)和業(yè)務(wù)流程自動(dòng)化的重要工具。
不同類(lèi)型的聊天機(jī)器人體系結(jié)構(gòu)模型
聊天機(jī)器人的體系結(jié)構(gòu)模型是根據(jù)開(kāi)發(fā)的核心目的決定的。聊天機(jī)器人有兩種可能的響應(yīng)類(lèi)型:依據(jù)機(jī)器學(xué)習(xí)模型從零開(kāi)始生成響應(yīng),或使用啟發(fā)式方法從預(yù)定義的響應(yīng)庫(kù)中選擇適當(dāng)?shù)捻憫?yīng)。
產(chǎn)生式模型
該模型用于開(kāi)發(fā)本質(zhì)上十分先進(jìn)的智能機(jī)器人。這種聊天機(jī)器人很少被使用,因其需要執(zhí)行復(fù)雜算法。
產(chǎn)生式模型相對(duì)難以構(gòu)建和開(kāi)發(fā)。培訓(xùn)此類(lèi)機(jī)器人需要為其提供數(shù)百萬(wàn)個(gè)示例,這將花費(fèi)大量時(shí)間和精力。這就是深度學(xué)習(xí)模型如何參與對(duì)話的方式。但是,模型將生成什么響應(yīng)仍不能確定。
基于檢索的模型
這種體系結(jié)構(gòu)模型的聊天機(jī)器人更易于構(gòu)建且更加可靠。雖不能保證100%準(zhǔn)確地響應(yīng),但可以知道可能的響應(yīng)類(lèi)型,并確保聊天機(jī)器人不會(huì)傳遞不適當(dāng)或不正確的響應(yīng)。
目前,基于檢索的模型更多地被使用。開(kāi)發(fā)人員可以很容易地使用幾種算法和API(應(yīng)用程序編程接口),以在此體系結(jié)構(gòu)模型上構(gòu)建聊天機(jī)器人。這種聊天機(jī)器人會(huì)考慮消息和會(huì)話的上下文,以從預(yù)定義的消息列表中提供最佳響應(yīng)。
聊天機(jī)器人的響應(yīng)生成機(jī)制
下面來(lái)討論聊天機(jī)器人理解用戶消息或獲取用戶消息意圖的兩種不同方式。
基于模式的啟發(fā)式算法
響應(yīng)可以通過(guò)兩種不同的方式生成:使用if-else條件邏輯或使用機(jī)器學(xué)習(xí)分類(lèi)器。最簡(jiǎn)單的方法是使用預(yù)定義的模式來(lái)定義一組規(guī)則,以充當(dāng)框架規(guī)則的條件。人工智能標(biāo)記語(yǔ)言(AIML)最常用于在聊天機(jī)器人開(kāi)發(fā)過(guò)程中編寫(xiě)模式和響應(yīng)。
《category》《pattern》What is your name《/pattern》《template》My name is Albert Smith《/template》《/category》
借助自然語(yǔ)言處理渠道和預(yù)定義的豐富模式,AIML可用于構(gòu)建智能聊天機(jī)器人。這些機(jī)器人解析用戶消息,查找同義詞和概念,標(biāo)記語(yǔ)音部分,并找出與用戶查詢匹配的規(guī)則。但是,除非特別編程,否則這些程序不會(huì)運(yùn)行機(jī)器學(xué)習(xí)算法或任何其他的API。
運(yùn)用機(jī)器學(xué)習(xí)進(jìn)行意圖分類(lèi)式
盡管基于模式的啟發(fā)式算法可提供良好的結(jié)果,但問(wèn)題在于,它需要手動(dòng)對(duì)所有模式進(jìn)行編程。這是一項(xiàng)單調(diào)乏味的任務(wù),尤其是當(dāng)聊天機(jī)器人必須區(qū)分?jǐn)?shù)百種針對(duì)不同場(chǎng)景的意圖時(shí)。
意圖分類(lèi)完全基于機(jī)器學(xué)習(xí)技術(shù),該技術(shù)可以訓(xùn)練機(jī)器人。通過(guò)聊天機(jī)器人最可能面對(duì)的數(shù)千個(gè)示例的培訓(xùn)合集,就可以訓(xùn)練機(jī)器人來(lái)識(shí)別數(shù)據(jù)模式并從中學(xué)習(xí)。
scikit-learn是一個(gè)常用的機(jī)器學(xué)習(xí)庫(kù),可以幫助執(zhí)行機(jī)器學(xué)習(xí)算法。開(kāi)發(fā)者甚至可以選擇使用api.ai,wit.ai和Microsoft LUIS中的一種云API。最近被Facebook收購(gòu)的wit.ai是第一個(gè)用于聊天機(jī)器人的機(jī)器學(xué)習(xí)API。
響應(yīng)生成
一旦聊天機(jī)器人理解用戶消息,下一步就是要生成一個(gè)響應(yīng)。一個(gè)方法是生成簡(jiǎn)單、不變的響應(yīng)。另一種方法是獲取基于意圖的模板并插入一些變量。聊天機(jī)器人開(kāi)發(fā)公司根據(jù)使用聊天機(jī)器人的目的選擇生成響應(yīng)的方法。
例如,使用API以獲取給定位置的天氣預(yù)報(bào)的天氣預(yù)報(bào)聊天機(jī)器人可能說(shuō):“今天很可能下雨”或“今天是雨天”或“下雨的可能性為80%,所以今天請(qǐng)帶上雨傘備用?!?/p>
響應(yīng)風(fēng)格因用戶而異。在這種情況下,機(jī)器人可以研究并分析先前的聊天及其關(guān)聯(lián)的指標(biāo),為用戶量身定制響應(yīng)。
從頭開(kāi)始構(gòu)建完全滿足目的的聊天機(jī)器人需要專(zhuān)業(yè)幫助。在購(gòu)買(mǎi)聊天機(jī)器人開(kāi)發(fā)服務(wù)時(shí),推薦從值得信賴的公司購(gòu)買(mǎi),且該公司在構(gòu)建能夠提供擬人化響應(yīng)的聊天機(jī)器人方面具有豐富的經(jīng)驗(yàn)就更好了。
以后勢(shì)必是聊天機(jī)器人普及的時(shí)代,提前了解,做好充足準(zhǔn)備。