AI Frontiers | 微软首席 AI 科学家邓力演讲:口语对话系统的分类及三代演变
編者按:鄧力博士原為加拿大滑鐵盧大學教授,1999 年加入微軟,2016 年起擔任微軟首席人工智能科學家,負責微軟深度學習技術中心應用趨向的深度學習研究。
在上周的 AI Frontiers 會議上,鄧力博士為參會嘉賓做了口語對話系統的專題演講。雷鋒網(公眾號:雷鋒網)與會記者將現場演講記錄下來,結合 PPT 為大家整理出這份演講實錄。此次鄧老師介紹了口語對話系統的分類,三代演變史,以及三大研究前沿領域,可謂干貨滿滿。NLP 領域的童鞋們不可錯過。
鄧力:
今天,我想講一講口語對話系統(Spoken Dialogue System)。 “Spoken Dialogue System” 成為一個術語已經有 30 年了,現在我們也稱其為對話式交互界面(conversational UI),或者稱為“bots”。所以它有好幾個術語,但基本指的是同一件事。開發這類系統,需要能夠與人對話,要么通過語音,要么通過文字。這次我專門講語音,以及這兩類 bots 之間的根本性區別。
 
語音識別 vs 基于文字
語音識別技術在最近五年中飛速進步,這兩類對話系統之間的差距在縮小,這是一個很重要的信號。但在另一方面,許多情況下我們仍然有許多語音識別錯誤。在某種程度上,我們可以把對話系統看作:
對話系統=語音識別+基于文字(text-based,或翻譯為“語義理解”)的系統
語音識別向基于文字的對話系統,提供了一些低延遲的文字輸入。因此你可以把它們放在一起(認為它們對等),這是較傳統的觀點。
如今,你可以超出傳統觀點,來思考怎么做出整合的系統設計。相比把這兩類系統一起放進管道(pipeline),你可以事實上做得更好。這就是整合學習(integrated learning)的概念。我會聚焦在這個方向。
語音提供了語言之外的信息(Para-linguistic cues),比如語氣、情緒。這在基于文字的對話系統里是沒有的——后者沒有提供這些信息,或者說線索。從這個方面來說,兩個系統不是對等的。取決不同的用戶,語音輸入可能會比文字輸入更簡單——但也可能更復雜。對我個人而言,由于對語音比較了解,我傾向于使用語音來表述復雜事實,它的錯誤率未必會那么高。語音使得我能更快地提供更多信息。但對于大多數人而言,當使用基于文字的對話,他們傾向于使用復雜句式。原因要么是這樣做更快,要么更可能的是,他們會擔心對方的語音識別能力,然后不想重復、或者說太多,尤其在噪聲大的環境下。取決于用戶的個人特質,這兩種情況都可能發生。我認為,隨著時間流逝,語音識別系統越來越成熟,語音和文字對話在這方面的差距會越來越小。
另一個很重要的方面是窄領域 vs 寬領域(narrow domain vs wide domain)。基于語音的對話傾向于聚焦在窄領域。但現在正變得不一樣,因為語音識別技術的進步。
幾個月前,Venturebeat 發表了一篇很不錯的文章“Introducing the Bots Landscape”,對口語對話系統作了概括(再次提醒,有些人稱其為 Bots,有時稱之為對話式交互界面),以及它們的業界現狀。
Bots 領域的景觀一覽
上欄:有吸引力的 Bots;左欄(由上至下):連接器/分享服務,發現 Bot ,分析;右欄(由上至下):AI 工具:NLP、ML、語音識別;Bot 開發者框架和工具,短訊
對話系統可被看作是一個連接器,來把你的技術與第三方相連。然后你有一系列開發框架和工具來實現這點。微軟在這方面有大動作:11 個月前,微軟 Build 開發者大會上有一個重大的宣布,即 Microsoft Bot Framework(微軟 Bot 框架),它讓大家、第三方都能使用。
Bots 的分類
由于時間限制,今天我只會聚焦于 AI 工具,在自然語言處理(NLP)、語音識別這方面。從這個角度,我會回顧自 1990 年代初以來,相關技術經歷的三代發展。
幾個月前,我寫了這篇文章“How deep reinforcement learning can help chatbots”,討論 bots的價值。今天的話題以該文章為基礎。文章中,我首先談到了app 和網絡模型(web models)遇到的問題;其次,對話作為一個新生的、正不斷壯大的移動交互界面(mobile UI),以及在這之中,bots 扮演的人機之間智能代理的角色。我會對技術細節作更深入的討論。
我把 bots 歸納為三個類別:
-  
社交機器人(social chatbot)。這方面,微軟在中國開發的“小冰”相當成功,是個很好的例子。在美國,幾個月前我們發布了聊天機器人 Tay(雷鋒網注,這就是學會了罵人、在推特上發布不到一天就被緊急撤下的那個,入選年度十大 AI 事件)。
 -  
信息機器人 (infobot)。它們其實是搜索引擎部分功能的替代——它們允許用戶不再需要點擊網頁鏈接,而能夠直接獲得想要搜索的答案。這減少了一部分麻煩。如果問題比較復雜,你也許只需要兩三輪解釋來是回答更明確。
 -  
任務完成機器人(task completion bot),它們能為你做事情。相比只能交談、對話的社交機器人,它們能處理實際問題,所以一般需要第三方的幫助。
 
口語對話系統的三代發展
現在,我開始講過去一些年技術的進步。近幾年,我們經歷了不少次公眾對于 AI 技術的興奮高潮(hype)。但現實是,相關技術的基礎在 1980 年代末、1990 年代初就已經開發出來了。我會對這些技術如何從第一代發展到最新一代作個概括。
第一代:基于符號規則、模板
首先,第一代技術從 1980 年代末開啟,在流行度上面,幾年前這一波技術就可以說是結束了,雖然你能夠發現一些商用系統和 bot 初創企業還在使用它們。這代技術依賴于專家人工制定的語法規則和本體設計(ontological design)。這些規則很容易解釋、理解,比較透明,這就是這代技術為什么能催生出一系列的成功商業應用的原因。修補漏洞很容易,系統更新也很容易。
它的局限性:
-  
依賴于專家。如果沒有懂得編寫這類應用的專家,開發會極其困難。
 -  
跨領域的擴展性不足
 -  
數據用來設計規則,而不是學習
 
早期有相當多的高校、政府機關、商業公司研發這類系統。它們可分為語音識別和語言理解系統。它們全都由符號規則組成,需要付出極大的努力來開發。
由于這些局限,第一代技術只能應用于極狹窄的領域,而這也許是一件好事。有一個非常好的、關于這類技術的論文,它的研究對象是伯克利的餐廳。雷鋒網獲知,普通餐廳反而是不行的,因為需要寫的規則太多。
第二代:數據驅動、淺層學習
第二代技術是數據驅動型的。
從業者不愿意把這代技術稱之為淺層學習(shallow learning),但事實如此,它們是傳統的淺層學習方法。對了,用于對話規則(dialogue policy)的強化學習就是這時候研究出來的(1990 年代)。今天我們看到的強化學習高潮,在那時就打下了基礎。如今深度學習的進步進一步起到了幫助。
這種基于淺層學習的數據驅動方式,不容易理解和修補漏洞,但確實有學習能力。
這篇論文(“POMDP-based statistical spoken dialogue systems:a review”)對第二代技術做了整體歸納,它發表的時間是 4 年前(2013),恰恰在深度學習登場之前。這篇論文是劍橋大學的成果,他們做了很多努力來把該系統商業化。
第三代:數據驅動的深度學習
 
第三代技術用深度學習取代了淺層學習的部分。和第二代技術一樣,數據被用來學習對話系統中的所有東西。第三代的神經模型和表示遠遠比前兩代要強大,端到端的學習也變得可行。從兩年前開始,它吸引了全世界范圍內巨大的研究興趣。但它也有許多局限性:
-  
解釋、修補漏洞、更新系統仍然不容易。
 -  
在神經網絡學習和符號自然語言之間缺乏交互界面
 -  
跨領域的擴展,但相當多的研究在想辦法利用深度遷移學習和強化學習來實現
 -  
尚無明確的商業成功案例。
 
這三代技術有各自的強項,如何把這些優點整合起來,是一項主要的挑戰。很多研究聚焦于此。
強化學習
如何用強化學習來明確地表達這類系統?
如果你仔細考慮“什么是 state (狀態)?什么是action(行動)?什么是reward(獎勵)?”你就可以把上文提到這三種類型的 Bots (社交機器人、信息機器人、任務完成機器人)用強化學習表示出來。
研究前沿
這里我列出了三項前沿研究領域:
 
-  
基于語音 vs 基于文字
 -  
針對對話的深度強化學習
 -  
符號-神經之間的整合
 
語音識別的未來
語音識別已經取得巨大進展。這里我的觀點是,語音問題不僅僅是一個信號識別問題,而是信息處理問題。
| 本文作者:三川 | 2017-01-19 20:46 | 
總結
以上是生活随笔為你收集整理的AI Frontiers | 微软首席 AI 科学家邓力演讲:口语对话系统的分类及三代演变的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 孙剑亲自撰文:我在 Face++ 的这半
 - 下一篇: 互联网金融下半场 BAT谁是老大?