【嵌牛導讀】:過去 3~4 年经磅,我們可以看到,連接互聯(lián)網的設備發(fā)生了很大變化钮追,設備已經從 PC 和智能手機延伸到更廣泛的智能設備预厌,比如智能音箱、智能電視元媚、機器人轧叽、智能汽車等設備。智能設備的快速發(fā)展正在改變著人和設備之間的交互方式刊棕。
【嵌牛鼻子】:交互方式炭晒;智能設備
【嵌牛提問】:新的交互方式特點有哪些?智能設備給我們生活帶來哪些變化甥角?
【嵌牛正文】:
過去 20 多年网严,互聯(lián)網及移動互聯(lián)網將人類帶到了一個全新的時代,如果用一個詞來總結和概括這個時代的話嗤无,「連接」這個詞再合適不過震束。這個時代主要建立了四種連接:第一,人和商品的連接当犯;第二垢村,人和人的連接;第三嚎卫,人和信息的連接嘉栓;第四,人和設備的連接拓诸。
「連接」本身不是目的侵佃,它只是為「交互」建立了通道。在人機交互(Human-Computer Interaction)中奠支,人通過輸入設備給機器輸入相關信號馋辈,這些信號包括語音、文本胚宦、圖像首有、觸控等中的一種模態(tài)或多種模態(tài)燕垃,機器通過輸出或顯示設備給人提供相關反饋信號枢劝。「連接」為「交互」雙方架起了橋梁卜壕。
「交互」的演進方向是更加自然您旁、高效、友好和智能轴捎。對人來說鹤盒,采用自然語言與機器進行智能對話交互是最自然的交互方式之一蚕脏,但這條路上充滿了各種挑戰(zhàn)。
如何讓機器理解人類復雜的自然語言侦锯?如何對用戶的提問給出精準的答案而不是一堆候選驼鞭?如何更加友好地與用戶閑聊而不是答非所問?如何管理復雜的多輪對話狀態(tài)和對話上下文尺碰?
在阿里巴巴挣棕,我們從 2014 年初開始對智能對話交互進行探索和實踐創(chuàng)新,研發(fā)成果逐步大規(guī)模應用在了智能客服(針對阿里巴巴生態(tài)內部企業(yè)的阿里小蜜亲桥、針對阿里零售平臺上的千萬商家的店小蜜洛心,以及針對阿里之外企業(yè)及政府的云小蜜等)和各種設備(如 YunOS 手機、天貓魔盒题篷、互聯(lián)網汽車等)上词身。
本文將對阿里巴巴在智能對話交互技術上的實踐和創(chuàng)新進行系統(tǒng)的介紹。首先簡要介紹智能對話交互框架和主要任務番枚;接下來詳細介紹自然語言理解法严、智能問答、智能聊天和對話管理等核心技術户辫;然后介紹阿里巴巴的智能對話交互產品渐夸;最后是總結和思考。
智能對話交互框架
典型的智能對話交互框架如圖 1 所示渔欢。其中墓塌,語音識別模塊和文本轉語音模塊為可選模塊,比如在某些場景下用戶用文本輸入奥额,系統(tǒng)也用文本回復苫幢。自然語言理解和對話管理是其中的核心模塊,廣義的自然語言理解模塊包括對任務類垫挨、問答類和閑聊類用戶輸入的理解韩肝,但在深度學習興起后,大量端到端(End-to-End)的方法涌現(xiàn)出來九榔,問答和聊天的很多模型都是端到端訓練和部署的哀峻,所以本文中的自然語言理解狹義的單指任務類用戶輸入的語義理解。在圖 2 所示的智能對話交互核心功能模塊中哲泊,自然語言理解和對話管理之外剩蟀,智能問答用來完成問答類任務,智能聊天用來完成閑聊類任務切威。在對外輸出層育特,我們提供了 SaaS 平臺、PaaS 平臺和 Bot Framework 三種方式先朦,其中 Bot Framework 為用戶提供了定制智能助理的平臺缰冤。
圖1 智能對話交互框架
智能對話交互核心技術
智能對話交互中的核心功能模塊如圖 2 所示犬缨,本部分詳細介紹智能對話交互中除輸出層外的自然語言理解、智能問答棉浸、智能聊天和對話管理四個核心模塊怀薛。
圖2 智能對話交互中的核心功能模塊
自然語言理解
自然語言理解是人工智能的 AI-Hard 問題 [1],也是目前智能對話交互的核心難題迷郑。機器要理解自然語言乾戏,主要面臨語言的多樣性、語言的多義性三热、語言的表達錯誤鼓择、語言的知識依賴和語言的上下文(示例見表 1)的五個挑戰(zhàn)。
智能問答
在具體的業(yè)務場景中有三種典型的問答任務就漾,一是用戶提供 QA-Pairs呐能,一問一答;二是建立結構化的知識圖譜抑堡,進行基于知識圖譜的問答摆出;三是針對非結構化的文本,進行基于閱讀理解的問答首妖。本文重點介紹我們在閱讀理解方面做的工作偎漫,比如利用閱讀理解解決淘寶活動規(guī)則的問答。
在閱讀理解的方法上有缆,目前針對斯坦福大學的數據集 SquAD象踊,有大量優(yōu)秀的方法不斷涌現(xiàn),比如 match-LSTM[15]棚壁、BiDAF[16]杯矩、DCN[17]、 FastQA[18] 等袖外。文獻 [18] 給出了目前的通用框架史隆,如圖 11 所示,主要分為 4 層:① Word Embedder曼验,對問題和文檔中的詞進行 embedding泌射;② Encoder,對問題和文檔進行編碼鬓照,一般采用 RNN/LSTM/BiLSTM熔酷; ③ Interaction Layer(交互層),在問題和文檔之間逐詞進行交互颖杏,這是目前研究的熱點纯陨,主流方法是采用注意力機制(attention)坛芽;④ Answer Layer(答案層)留储,預測答案的起始位置和結束位置翼抠。
模型的業(yè)務優(yōu)化
需要改進模型的結構設計,使得模型可以支持電商文檔格式的輸入获讳。電商規(guī)則文檔往往包含大量的文檔結構阴颖,如大小標題和文檔的層級結構等,將這些特定的篇章結構信息一起編碼輸入到網絡中丐膝,將大幅提升訓練的效果量愧。
模型的簡化
學術文獻中的模型一般都較為復雜,而工業(yè)界場景中由于對性能的要求帅矗,無法將這些模型直接在線上使用偎肃,需要做一些針對性的簡化,使得模型效果下降可控的情況下浑此,盡可能提升線上預測性能累颂,例如可以簡化模型中的各種 bi-lstm 結構。
多種模型的融合
當前這些模型都是純粹的 end-to-end 模型凛俱,其預測的可控性和可解釋性較低紊馏,要適用于業(yè)務場景的話,需要考慮將深度學習模型與傳統(tǒng)模型進行融合蒲犬,達到智能程度和可控性的最佳平衡點朱监。
智能聊天
面向 open domain 的聊天機器人目前無論在學術界還是在工業(yè)界都是一大難題,目前有兩種典型的方法:一是基于檢索的模型原叮,比如文獻 [19-20]赫编,其基本思路是利用搜索引擎通過計算相關性來給出答案;二是基于 Seq2Seq 的生成式模型
檢索模型的優(yōu)點是答案在預設的語料庫中奋隶,可控沛慢,匹配模型相對簡單,可解釋性強达布;缺點是在一定程度上缺乏對語義的理解团甲,且有固定語料庫的局限性,長尾問題覆蓋率較差黍聂。生成模型的優(yōu)點是通過深層語義方式進行答案生成躺苦,答案不受語料庫規(guī)模限制;缺點是模型的可解釋性不強产还,且難以保證回答一致性和合理性匹厘。
在我們的聊天引擎中,結合檢索模型和生成模型各自的優(yōu)勢脐区,提出了一種新的模型 AliMe Chat [23]愈诚,基本流程如圖 13 所示。首先采用檢索模型從 QA 知識庫中找出候選答案集合; 然后利用帶注意力的 Seq2Seq 模型對候選答案進行排序炕柔,如果第一候選的得分超過某個閾值酌泰,則作為最終答案輸出,否則利用生成模型生成答案匕累。其中帶注意力的 Seq2Seq 模型結構如圖 14 所示陵刹。經過訓練后,主要做了如下測試:如圖 15 所示欢嘿,利用 600 個問題的測試集衰琐,測試了檢索(IR)、生成(Generation)炼蹦、檢索+ 重排序(Rerank)及檢索+ 重排序+ 生成(IR+Rerank+Generation)四種方法的效果羡宙,可以看到在閾值為 0.19 時,IR+Rerank+Generation 的方法效果最好掐隐。
對話管理
對話管理根據語言理解的結構化語義表示結果以及上下文辛辨,來管理整個對話的狀態(tài),并決定下一步采取什么樣的動作瑟枫。
對話交互分成兩個階段斗搞,第一階段,通過多輪對話交互慷妙,把用戶的需求收集完整僻焚,得到結構化的信息(出發(fā)地、目的地膝擂、時間等)虑啤;第二階段就是請求服務,接著還要去做選擇架馋、確定狞山、支付、購買等后面一系列的步驟叉寂。
傳統(tǒng)的人機對話萍启,包括現(xiàn)在市面上常見的人機對話,一般都是只在做第一階段的對話屏鳍,第二階段的對話做得不多勘纯。對此,我們設計了一套對話管理體系钓瞭,如圖 17 所示驳遵,這套對話管理體系具有以三個特點。
第一山涡,設計了一套面向 Task Flow 的對話描述語言堤结。該描述語言能夠把整個對話任務流完整地表達出來唆迁,這個任務流就是類似于程序設計的流程圖。對話描述語言帶來的好處是它能夠讓對話引擎和業(yè)務邏輯實現(xiàn)分離竞穷,分離之后業(yè)務方可以開發(fā)腳本語言唐责,不需要修改背后的引擎。
第二来庭,由于有了 Task Flow 的機制,我們在對話引擎方帶來的收益是能夠實現(xiàn)對話的中斷和返回機制穿挨。在人機對話當中有兩類中斷月弛,一類是用戶主動選擇到另外一個意圖,更多是由于機器沒有理解用戶話的意思科盛,導致這個意圖跳走了帽衙。由于我們維護了對話完整的任務流,知道當前這個對話處在一個什么狀態(tài)贞绵,是在中間狀態(tài)還是成功結束了厉萝,如果在中間狀態(tài),我們有機會讓它回來榨崩,剛才講過的話不需要從頭講谴垫,可以接著對話。
第三母蛛,設計了對話面向開發(fā)者的方案翩剪,稱之為 Open Dialog,背后有一個語言理解引擎和一個對話引擎彩郊。面向開發(fā)者的語言理解引擎是基于規(guī)則辦法前弯,能夠比較好地解決冷啟動的問題,開發(fā)者只需要寫語言理解的 Grammar秫逝,基于對話描述語言開發(fā)一個對話過程恕出,并且還有對數據的處理操作。這樣违帆,一個基本的人機對話就可以完成了浙巫。
阿里智能對話交互產品
智能服務——小蜜家族
2015 年 7 月,阿里巴巴推出了自己的智能服務助理——阿里小蜜刷后,一個圍繞著電子商務領域中的服務狈醉、導購,以及任務助理為核心的智能對話交互產品惠险。通過電子商務領域與智能對話交互領域的結合苗傅,帶來傳統(tǒng)服務行業(yè)模式的變革與體驗的提升。在 2016 年的「雙十一」期間班巩,阿里小蜜整體智能服務量達到 643 萬渣慕,其中智能解決率達到 95%嘶炭,智能服務在整個服務量 ( 總服務量= 智能服務量+ 在線人工服務量+ 電話服務量) 占比也達到 95%,成為了「雙+ 十一」期間服務的絕對主力逊桦。阿里小蜜主要服務阿里國內業(yè)務和阿里國際化業(yè)務眨猎,國內業(yè)務如淘寶、天貓强经、飛豬睡陪、健康、閑魚匿情、 菜鳥等兰迫,國際化業(yè)務如 Lazada、PayTM炬称、AE 等汁果。
隨著阿里小蜜的成功,將智能服務能力賦能給阿里生態(tài)圈商家及阿里生態(tài)之外的企業(yè)和政府部門玲躯,便成了必然的路徑据德。店小蜜主要賦能阿里生態(tài)中的商家,云小蜜則面向阿里之外的大中小企業(yè)跷车、政府等棘利。整個小蜜家族如圖
智能設備,我們研發(fā)的智能對話交互平臺為各種設備提供對話交互能力朽缴,目前在 YunOS 手機赡译、天貓魔盒、互聯(lián)網汽車等設備上已經大量應用不铆。比如在天貓魔盒中蝌焚,用戶通過對話交互可以完成搜視頻、查音樂誓斥、問天氣等只洒,可以進行閑聊,還可以進行購物劳坑。
總結與思考
過去幾年中毕谴,結合阿里巴巴在電商、客服距芬、智能設備方面的剛性需求和場景涝开,我們在智能對話交互上做了大量的探索和嘗試,構建了一套相對完整的數據框仔、算法舀武、在線服務、離線數據閉環(huán)的技術體系离斩,并在智能服務和智能設備上得到了大規(guī)模的應用银舱,簡單總結如下瘪匿。
(1)自然語言理解方面,通過 CNN/Bi-LSTM-CRF 等深度學習模型寻馏、分布式表示和符號表示的融合棋弥、多粒度的 wordembedding、基于上下文的意圖排序等方法诚欠,構建了規(guī)則和深度學習模型有機融合的自然語言理解系統(tǒng)顽染。
(2)智能問答方面,成功的將機器閱讀理解應用在了小蜜產品中轰绵。
(3)智能聊天方面粉寞,提出了 AliMe Chat 模型,融合了搜索模型和生成模型的優(yōu)點藏澳,大大提高了閑聊的精度仁锯。
(4)對話管理方面耀找,設計了基于 Task Flow 的對話描述語言翔悠,將業(yè)務邏輯和對話引擎分離,并能實現(xiàn)任務的中斷返回和屬性的 carry-over 等復雜功能野芒。
在智能交互技術落地應用的過程蓄愁,我們也在不斷思考怎么進一步提高智能交互技術水平和用戶體驗。
第一狞悲,堅持用戶體驗為先撮抓。堅持用戶體驗為先,就是產品要為用戶提供核心價值摇锋。
第二丹拯,提高語言理解的魯棒性和領域擴展性。
第三荸恕,大力發(fā)展機器閱讀理解能力乖酬。
第四,打造讓機器持續(xù)學習能力融求。
第五咬像,打造數據閉環(huán),用數據驅動效果的持續(xù)提升生宛。
目前的人工智能領域仍然處在弱人工智能階段县昂,特別是從感知到認知領域需要提升的空間還非常大。智能對話交互在專有領域已經可以與實際場景緊密結合并產生巨大價值陷舅,尤其在智能客服領域(如阿里巴巴的小蜜)倒彰。隨著人工智能技術的不斷發(fā)展,未來智能對話交互領域的發(fā)展還將會有不斷的提升莱睁。