POST TIME:2018-05-02 17:05
01 智能人機(jī)交互領(lǐng)域的介紹
1.1 行業(yè)分類及目前的應(yīng)用狀況
在全球人工智能領(lǐng)域不斷發(fā)展的今天,包括Google、Facebook、Microsoft、Amazon、Apple等互聯(lián)公司相繼推出了自己的智能私人助理和機(jī)器人平臺。
智能人機(jī)交互通過擬人化的交互體驗(yàn)逐步在智能客服、任務(wù)助理、智能家居、智能硬件、互動聊天等領(lǐng)域發(fā)揮巨大的作用和價(jià)值。因此,各大公司都將智能聊天機(jī)器人作為未來的入口級別的應(yīng)用在對待。今天隨著市場的進(jìn)一步發(fā)展,聊天機(jī)器人按照產(chǎn)品和服務(wù)的類型主要可分為:客服,娛樂,助理,教育,服務(wù)等類型。
圖1截取了部分聊天機(jī)器人。
圖1:一些chat-bot的匯總
1.2 阿里小蜜在電商領(lǐng)域的狀況
2015年7月,阿里推出了自己的智能私人助理-阿里小蜜,一個(gè)圍繞著電子商務(wù)領(lǐng)域中的服務(wù)、導(dǎo)購以及任務(wù)助理為核心的智能人機(jī)交互產(chǎn)品。通過電子商務(wù)領(lǐng)域與智能人機(jī)交互領(lǐng)域的結(jié)合,帶來傳統(tǒng)服務(wù)行業(yè)模式的變化與體驗(yàn)的提升。
在去年的雙十一期間,阿里小蜜整體智能服務(wù)量達(dá)到643萬,其中智能解決率達(dá)到95%,智能服務(wù)在整個(gè)服務(wù)量(總服務(wù)量=智能服務(wù)量+在線人工服務(wù)量+電話服務(wù)量)占比也達(dá)到95%,成為了雙十一期間服務(wù)的絕對主力。
02 電商領(lǐng)域下阿里小蜜的技術(shù)實(shí)踐
2.1 阿里小蜜技術(shù)的overview
智能人機(jī)交互系統(tǒng),俗稱:chatbot系統(tǒng)或者bot系統(tǒng)。圖2是人機(jī)交互的流程圖:
圖2:人機(jī)交互的流程
核心是NLU(自然語言理解),通過對話系統(tǒng)處理后,最后通過自然語言生成的方式給出答案。一段語言如何理解對于計(jì)算機(jī)來說是非常有難度的,例如:“蘋果”這個(gè)詞就具備至少兩個(gè)含義,一個(gè)是水果屬性的“蘋果”,還有一個(gè)是知名互聯(lián)網(wǎng)公司屬性的“蘋果”。
2.1.1 意圖與匹配分層的技術(shù)架構(gòu)體系
在阿里小蜜這樣在電子商務(wù)領(lǐng)域的場景中,對接的有客服、助理、聊天幾大類的機(jī)器人。這些機(jī)器人,由于本身的目標(biāo)不同,就導(dǎo)致不能用同一套技術(shù)框架來解決。因此,我們先采用分領(lǐng)域分層分場景的方式進(jìn)行架構(gòu)抽象,然后再根據(jù)不同的分層和分場景采用不同的機(jī)器學(xué)習(xí)方法進(jìn)行技術(shù)設(shè)計(jì)。首先我們將對話系統(tǒng)從分成兩層:
1、意圖識別層:識別語言的真實(shí)意圖,將意圖進(jìn)行分類并進(jìn)行意圖屬性抽取。意圖決定了后續(xù)的領(lǐng)域識別流程,因此意圖層是一個(gè)結(jié)合上下文數(shù)據(jù)模型與領(lǐng)域數(shù)據(jù)模型不斷對意圖進(jìn)行明確和推理的過程;
2、問答匹配層:對問題進(jìn)行匹配識別及生成答案的過程。在阿里小蜜的對話體系中我們按照業(yè)務(wù)場景進(jìn)行了3種典型問題類型的劃分,并且依據(jù)3種類型會采用不同的匹配流程和方法:
問答型:例如“密碼忘記怎么辦?”→ 采用基于知識圖譜構(gòu)建+檢索模型匹配方式
任務(wù)型:例如“我想訂一張明天從杭州到北京的機(jī)票”→ 意圖決策+slots filling的匹配以及基于深度強(qiáng)化學(xué)習(xí)的方式
語聊型:例如“我心情不好”→ 檢索模型與Deep Learning相結(jié)合的方式
圖3表示了阿里小蜜的意圖和匹配分層的技術(shù)架構(gòu)。
圖3:基于意圖于匹配分層的技術(shù)架構(gòu)
2.1.2 意圖識別介紹:結(jié)合用戶行為deep-learning模型的實(shí)踐
通常將意圖識別抽象成機(jī)器學(xué)習(xí)中的分類問題,在阿里小蜜的技術(shù)方案中除了傳統(tǒng)的文本特征之外,考慮到本身在對話領(lǐng)域中存在語義意圖不完整的情況,我們也加入了用實(shí)時(shí)、離線用戶本身的行為及用戶本身相關(guān)的特征,通過深度學(xué)習(xí)方案構(gòu)建模型,對用戶意圖進(jìn)行預(yù)測, 具體如圖4:
圖4:結(jié)合用戶行為的深度學(xué)習(xí)意圖分類
在基于深度學(xué)習(xí)的分類預(yù)測模型上,我們有兩種具體的選型方案:一種是多分類模型,一種是二分類模型。多分類模型的優(yōu)點(diǎn)是性能快,但是對于需要擴(kuò)展分類領(lǐng)域是整個(gè)模型需要重新訓(xùn)練;而二分類模型的優(yōu)點(diǎn)就是擴(kuò)展領(lǐng)域場景時(shí)原來的模型都可以復(fù)用,可以平臺進(jìn)行擴(kuò)展,缺點(diǎn)也很明顯需要不斷的進(jìn)行二分,整體的性能上不如多分類好,因此在具體的場景和數(shù)據(jù)量上可以做不同的選型。
小蜜用DL做意圖分類的整體技術(shù)思路是將行為因子與文本特征分別進(jìn)行Embedding處理,通過向量疊加之后再進(jìn)行多分類或者二分類處理。這里的文本特征維度可以選擇通過傳統(tǒng)的bag of words的方法,也可使用Deep Learning的方法進(jìn)行向量化。具體圖:
圖5:結(jié)合用戶行為的深度學(xué)習(xí)意圖分類的網(wǎng)絡(luò)結(jié)構(gòu)
2.1.3 匹配模型的overview:介紹行業(yè)3大匹配模型
目前主流的智能匹配技術(shù)分為如下3種方法:
1、基于模板匹配(Rule-Based)
2、基于檢索模型(Retrieval Model)
3、基于深度學(xué)習(xí)模型(Deep Learning)
在阿里小蜜的技術(shù)場景下,我們采用了基于模板匹配,檢索模型以及深度學(xué)習(xí)模型為基礎(chǔ)的方法原型來進(jìn)行分場景(問答型、任務(wù)型、語聊型)的會話系統(tǒng)構(gòu)建。
2.2 阿里小蜜的3大領(lǐng)域場景的技術(shù)實(shí)踐
2.2.1 智能導(dǎo)購:基于增強(qiáng)學(xué)習(xí)的智能導(dǎo)購
智能導(dǎo)購主要通過支持和用戶的多輪交互,不斷的理解和明確用戶的意圖。并在此基礎(chǔ)上利用深度強(qiáng)化學(xué)習(xí)不斷的優(yōu)化導(dǎo)購的交互過程。圖6展示了智能導(dǎo)購的技術(shù)架構(gòu)圖。
圖6:智能導(dǎo)購的架構(gòu)圖
這里兩個(gè)核心的問題:
a)在多輪交互中理解用戶的意圖。
b)根據(jù)用戶的意圖結(jié)果,優(yōu)化排序的結(jié)果和交互的過程。
下面主要介紹導(dǎo)購意圖理解、以及深度增強(qiáng)學(xué)習(xí)的交互策略優(yōu)化。
2.2.1.1 智能導(dǎo)購的意圖理解和意圖管理
智能導(dǎo)購下的意圖理解主要是識別用戶想要購買的商品以及商品對應(yīng)的屬性,相對于傳統(tǒng)的意圖理解,也帶來了幾個(gè)新的挑戰(zhàn)。
第一,用戶偏向于短句的表達(dá)。因此,識別用戶的意圖,要結(jié)合用戶的多輪會話和意圖的邊界。
第二,在多輪交互中用戶會不斷的添加或修改意圖的子意圖,需要維護(hù)一份當(dāng)前識別的意圖集合。
第三,商品意圖之間存在著互斥,相似,上下位等關(guān)系。不同的關(guān)系對應(yīng)的意圖管理也不同。
第四,屬性意圖存在著歸類和互斥的問題。
針對短語表達(dá),我們通過品類管理和屬性管理維護(hù)了一個(gè)意圖堆,從而較好的解決了短語表示,意圖邊界和具體的意圖切換和修改邏輯。同時(shí),針對較大的商品庫問題,我們采用知識圖譜結(jié)合語義索引的方式,使得商品的識別變得非常高效。下面我們分別介紹下品類管理和屬性管理。
基于知識圖譜和語義索引的品類管理
智能導(dǎo)購場景下的品類管理分為品類識別,以及品類的關(guān)系計(jì)算。下圖是品類關(guān)系的架構(gòu)圖。
圖7:品類管理架構(gòu)圖
品類識別:
采用了基于知識圖譜的識別方案和基于語義索引及dssm的判別模型。
a) 基于商品知識圖譜的識別方案:
基于知識圖譜復(fù)雜的結(jié)構(gòu)化能力,做商品的類目識別。是我們商品識別的基礎(chǔ)。
b) 基于語義索引及dssm商品識別模型的方案:
知識圖譜的識別方案的優(yōu)勢是在于準(zhǔn)確率高,但是不能覆蓋所有的case。因此,我們提出了一種基于語義索引和dssm結(jié)合的商品識別方案兜底。
圖8:基于語義索引和dssm的商品識別方案
語義索引的構(gòu)造:
通常語義索引的構(gòu)造有基于本體的方式,基于LSI的方式。我們用了一種結(jié)合搜索點(diǎn)擊數(shù)據(jù)和詞向量的方式構(gòu)造的語義索引。主要包括下面幾步:
第一步:利用搜索點(diǎn)擊行為,提取分詞到類目的候選。
第二步:基于詞向量,計(jì)算分詞和候選類目的相似性,對索引重排序。
基于dssm的商品識別:
dssm是微軟提出的一種用于query和doc匹配的有監(jiān)督的深度語義匹配網(wǎng)絡(luò),能夠較好的解決詞匯鴻溝的問題,捕捉句子的內(nèi)在語義。本文以dssm作為基礎(chǔ),構(gòu)建了query和候選的類目的相似度計(jì)算模型。取得了較好的效果,模型的acc在測試集上有92%左右。
圖9:dssm模型的網(wǎng)絡(luò)結(jié)構(gòu)圖
樣本的構(gòu)造:訓(xùn)練的正樣本是通過搜索日志中的搜索query和點(diǎn)擊類目構(gòu)造的。負(fù)樣本則是通過利用query和點(diǎn)擊的類目作為種子,檢索出來一些相似的類目,將不在正樣本中的類目作為負(fù)樣本。正負(fù)樣本的比例1:1。
品類關(guān)系計(jì)算:
品類關(guān)系的計(jì)算主要用于智能導(dǎo)購的意圖管理中,這里主要考慮的幾種關(guān)系是:上下位關(guān)系和相似關(guān)系。舉個(gè)例子,用戶的第一個(gè)意圖是要買衣服,當(dāng)后面的意圖說要買水杯的時(shí)候,之前衣服所帶有的屬性就不應(yīng)該被繼承給水杯。相反,如果這個(gè)時(shí)候用戶說的是要褲子,由于褲子是衣服的下位詞,則之前在衣服上的屬性就應(yīng)該被繼承下來。
上下位關(guān)系的計(jì)算2種方案:
a)采用基于知識圖譜的關(guān)系運(yùn)算。
b)通過用戶的搜索query的提取。
相似性計(jì)算的兩種方案:
a)基于相同的上位詞。比方說小米,華為的上位詞都是手機(jī),則他們相似。
b)基于fast-text的品類詞的embedding的語義相似度。
基于知識圖譜和相似度計(jì)算的屬性管理
下圖是屬性管理的架構(gòu)圖:
圖10:屬性管理架構(gòu)圖
整體上屬性管理包括屬性識別和屬性關(guān)系計(jì)算兩個(gè)核心模塊,思路和品類管理較為相似。這里就不在詳細(xì)介紹了。
2.2.1.2深度強(qiáng)化學(xué)習(xí)的探索及嘗試
強(qiáng)化學(xué)習(xí)是agent從環(huán)境到行為的映射學(xué)習(xí),目標(biāo)是獎(jiǎng)勵(lì)信號(強(qiáng)化信號)函數(shù)值最大,由環(huán)境提供強(qiáng)化信號評價(jià)產(chǎn)生動作的好壞。agent通過不斷的探索外部的環(huán)境,來得到一個(gè)最優(yōu)的決策策略,適合于序列決策問題。圖11是一個(gè)強(qiáng)化學(xué)習(xí)的model和環(huán)境交互的展示。
圖11:env-model的交互圖
深度強(qiáng)化學(xué)習(xí)是結(jié)合了深度學(xué)習(xí)的強(qiáng)化學(xué)習(xí),主要利用深度學(xué)習(xí)強(qiáng)大的非線性表達(dá)能力,來表示agent面對的state和state上決策邏輯。
目前我們用DRL主要來優(yōu)化我們的交互策略。因此,我們的設(shè)定是,用戶是強(qiáng)化學(xué)習(xí)中的env,而機(jī)器是model。action是本輪是否出主動反問的交互,還是直接出搜索結(jié)果。
狀態(tài)(state)的設(shè)計(jì):
這里狀態(tài)的設(shè)計(jì)主要考慮,用戶的多輪意圖、用戶的人群劃分、以及每一輪交互的產(chǎn)品的信息作為當(dāng)前的機(jī)器感知到的狀態(tài)。
state= ( intent1, query1, price1, is_click,query_item_sim, …, power, user_inter, age)
其中intent1表明的是用戶當(dāng)前的意圖,query1表示的用戶的原始query。price1表示當(dāng)前展現(xiàn)給用戶的商品的均價(jià),is_click表示本輪交互是否發(fā)生點(diǎn)擊,query_item_sim表示query和item的相似度。power表示是用戶的購買力,user_inter表示用戶的興趣, age 表示用戶的年齡。
reward的設(shè)計(jì):
由于最終衡量的是用戶的成交和點(diǎn)擊率和對話的輪數(shù)。因此reward的設(shè)計(jì)主要包括下面3個(gè)方面:
a) 用戶的點(diǎn)擊的reward設(shè)置成1
b) 成交設(shè)置成[1 + math.log(price + 1.0) ]
c) 其余的設(shè)置成0.1
DRL的方案的選型:
這里具體的方案,主要采用了 DQN, policy-gradient 和 A3C的三種方案。
2.2.2 智能服務(wù):基于知識圖譜構(gòu)建與檢索模型的技術(shù)實(shí)踐
智能服務(wù)的特點(diǎn):有領(lǐng)域知識的概念,且知識之間的關(guān)聯(lián)性高,并且對精準(zhǔn)度要求比較高。
基于問答型場景的特點(diǎn),我們在技術(shù)選型上采用了知識圖譜構(gòu)建+檢索模型相結(jié)合的方式來進(jìn)行核心匹配模型的設(shè)計(jì)。
知識圖譜的構(gòu)建我們會從兩個(gè)角度來進(jìn)行抽象,一個(gè)是實(shí)體維度的挖掘,一個(gè)是短句維度進(jìn)行挖掘,通過在淘寶平臺上積累的大量屬于以及互聯(lián)網(wǎng)數(shù)據(jù),通過主題模型的方式進(jìn)行挖掘、標(biāo)注與清洗,再通過預(yù)設(shè)定好的關(guān)系進(jìn)行實(shí)體之間關(guān)系的定義最終形成知識圖譜。基本的挖掘框架流程如下:
圖12:知識圖譜的實(shí)體和短語挖掘流程
挖掘構(gòu)建的知識圖譜示例如圖13:
圖13:具體的知識圖譜的示例
基于知識圖譜的匹配模式具備以下幾個(gè)優(yōu)點(diǎn):
(1) 在對話結(jié)構(gòu)和流程的設(shè)計(jì)中支持實(shí)體間的上下文會話識別與推理
(2) 通常在一般型問答的準(zhǔn)確率相對比較高(當(dāng)然具備推理型場景的需要特殊的設(shè)計(jì),會有些復(fù)雜)
同樣也有明顯的缺點(diǎn):
(1) 模型構(gòu)建初期可能會存在數(shù)據(jù)的松散和覆蓋率問題,導(dǎo)致匹配的覆蓋率缺失;
(2) 對于知識圖譜增量維護(hù)相比傳統(tǒng)的QA Pair對知識的維護(hù)上的成本會更大一些;
因此我們在阿里小蜜的問答型設(shè)計(jì)中,還是融入了傳統(tǒng)的基于檢索模型的對話匹配。
其在線基本流程分為:
(1) 提問預(yù)處理:分詞、指代消解、糾錯(cuò)等基本文本處理流程;
(2) 檢索召回:通過檢索的方式在候選數(shù)據(jù)中召回可能的匹配候選數(shù)據(jù);
(3) 計(jì)算:通過Query結(jié)合上下文模型與候選數(shù)據(jù)進(jìn)行計(jì)算,通過我們采用文本之間的距離計(jì)算方式(余弦相似度、編輯距離)以及分類模型相結(jié)合的方式進(jìn)行計(jì)算;
(4) 最終根據(jù)返回的候選集打分閾值進(jìn)行最終的產(chǎn)品流程設(shè)計(jì);
離線流程分為:
(1) 知識數(shù)據(jù)的索引化;
(2) 離線文本模型的構(gòu)建:例如Term-Weight計(jì)算等;
檢索模型整體流程如圖14:
圖14:檢索模型的流程圖
2.2.3 智能聊天:基于檢索模型和深度學(xué)習(xí)模型相結(jié)合的聊天應(yīng)用
智能聊天的特點(diǎn):非面向目標(biāo),語義意圖不明確,通常期待的是語義相關(guān)性和漸進(jìn)性,對準(zhǔn)確率要求相對較低。
面向open domain的聊天機(jī)器人目前無論在學(xué)術(shù)界還是在工業(yè)界都是一大難題,通常在目前這個(gè)階段我們有兩種方式來做對話設(shè)計(jì):
一種是學(xué)術(shù)界非常火爆的Deep Learning生成模型方式,通過Encoder-Decoder模型通過LSTM的方式進(jìn)行Sequence to Sequence生成,如圖15:
圖15:seq2seq網(wǎng)絡(luò)結(jié)構(gòu)圖
GenerationModel(生成模型):
優(yōu)點(diǎn):通過深層語義方式進(jìn)行答案生成,答案不受語料庫規(guī)模限制
缺點(diǎn):模型的可解釋性不強(qiáng),且難以保證一致性和合理性回答
另外一種方式就是通過傳統(tǒng)的檢索模型的方式來構(gòu)建語聊的問答匹配。
RetrievalModel(檢索模型):
優(yōu)點(diǎn):答案在預(yù)設(shè)的語料庫中,可控,匹配模型相對簡單,可解釋性強(qiáng)
缺點(diǎn):在一定程度上缺乏一些語義性,且有固定語料庫的局限性
因此在阿里小蜜的聊天引擎中,我們結(jié)合了兩者各自的優(yōu)勢,將兩個(gè)模型進(jìn)行了融合形成了阿里小蜜聊天引擎的核心。先通過傳統(tǒng)的檢索模型檢索出候選集數(shù)據(jù),然后通過Seq2Seq Model對候選集進(jìn)行Rerank,重排序后超過制定的閾值就進(jìn)行輸出,不到閾值就通過Seq2Seq Model進(jìn)行答案生成,整體流程圖16:
圖16:小蜜的閑聊模塊
03 未來技術(shù)的發(fā)展與展望
目前的人工智能領(lǐng)域任然處在弱人工智能階段,特別是從感知到認(rèn)知領(lǐng)域需要提升的空間還非常大。智能人機(jī)交互在面向目標(biāo)的領(lǐng)域已經(jīng)可以與實(shí)際工業(yè)場景緊密結(jié)合并產(chǎn)生巨大價(jià)值,隨著人工智能技術(shù)的不斷發(fā)展,未來智能人機(jī)交互領(lǐng)域的發(fā)展還將會有不斷的提升,對于未來技術(shù)的發(fā)展我們值得期待和展望:
1、數(shù)據(jù)的不斷積累,以及領(lǐng)域知識圖譜的不斷完善與構(gòu)建將不斷助推智能人機(jī)交互的不斷提升;
2、面向任務(wù)的垂直細(xì)分領(lǐng)域機(jī)器人的構(gòu)建將是之后機(jī)器人不斷爆發(fā)的增長點(diǎn),open domain的互動機(jī)器人在未來一段時(shí)間還需要不斷提升與摸索;
3、隨著分布式計(jì)算能力的不斷提升,深度學(xué)習(xí)在席卷了圖像、語音等領(lǐng)域后,在NLP(自然語言處理)領(lǐng)域?qū)^續(xù)發(fā)展,在對話、QA領(lǐng)域的學(xué)術(shù)研究將會持續(xù)活躍;
在未來隨著學(xué)術(shù)界和工業(yè)界的不斷結(jié)合與積累,期待人工智能電影中的場景早日實(shí)現(xiàn),人人都能擁有自己的智能“小蜜”。
參考文獻(xiàn):
[1] : Huang P S, He X, Gao J, et al. Learningdeep structured semantic models for web search using clickthrough data[C]// ACMInternational Conference on Conference on Information & KnowledgeManagement. ACM, 2013:2333-2338.
[2] Minghui Qiu and Feng-Lin Li. MeChat: A Sequence to Sequence andRerank based Chatbot Engine. ACL 2017
[3] Dzmitry Bahdanau, Kyunghyun Cho, and YoshuaBen- gio. 2015. Neural machine translation by jointly learning to align andtranslate. In Proceedings of ICLR 2015
[4]Matthew Henderson. 2015. Machine learning fordialog state tracking: A review. In Proceedings of The First InternationalWorkshop on Machine Learning in Spoken Language Processing.
[5] Mnih V, Badia A P, Mirza M, et al.Asynchronous Methods for Deep Reinforcement Learning[J]. 2016
[6] Li J, Monroe W, Ritter A, et al. DeepReinforcement Learning for Dialogue Generation[J]. 2016.
[7] Sordoni A, Bengio Y, Nie J Y. Learning concept embeddings for queryexpansion by quantum entropy minimization[C]// Twenty-Eighth AAAI Conference onArtificial Intelligence. AAAI Press, 2014:1586-1592.