近日,微軟沈向洋等人發(fā)表論文《微軟小冰的設(shè)計(jì)與實(shí)現(xiàn)》,幾乎無(wú)保留地公開(kāi)了小冰系統(tǒng)的開(kāi)發(fā)過(guò)程,詳述了系統(tǒng)架構(gòu)和關(guān)鍵組件,包括對(duì)話管理器、核心聊天、技能和移情計(jì)算模塊。
社交聊天機(jī)器人,或能夠與人類(lèi)進(jìn)行共情對(duì)話的智能系統(tǒng)的開(kāi)發(fā),一直是人工智能領(lǐng)域持續(xù)時(shí)間最長(zhǎng)的目標(biāo)之一。近年來(lái),隨著大量會(huì)話數(shù)據(jù)的出現(xiàn),以及機(jī)器學(xué)習(xí)的突破被應(yīng)用于會(huì)話AI,對(duì)話智能系統(tǒng)在學(xué)術(shù)研究界和行業(yè)中都取得了可喜的成果。
微軟小冰是世界上最流行的社交聊天機(jī)器人之一。自2014年5月發(fā)布以來(lái),小冰已經(jīng)和超過(guò)6.6億用戶聊過(guò)天,并成功地與其中許多用戶建立了長(zhǎng)期情感聯(lián)系。
近日,微軟小冰團(tuán)隊(duì)發(fā)表論文《微軟小冰的設(shè)計(jì)與實(shí)現(xiàn)》(The Design and Implementation of XiaoIce, an Empathetic Social Chatbot),幾乎無(wú)保留地公開(kāi)了小冰系統(tǒng)的開(kāi)發(fā)過(guò)程,詳述了系統(tǒng)架構(gòu)和關(guān)鍵組件,包括對(duì)話管理器,核心聊天,技能和移情計(jì)算模塊,展示了小冰是如何在長(zhǎng)時(shí)間的對(duì)話中動(dòng)態(tài)地識(shí)別人類(lèi)的情感和狀態(tài),理解用戶的意圖,并響應(yīng)用戶的需求的。
這篇論文可以說(shuō)是迄今最詳細(xì)的關(guān)于微軟小冰的論文,作者包括微軟亞洲工程院的周力、李迪,以及雷德蒙德研究院的高劍峰和沈向洋。
論文地址:
https://arxiv.org/pdf/1812.08989v1.pdf
小冰的設(shè)計(jì)目標(biāo)
小冰的主要設(shè)計(jì)目標(biāo)是成為一個(gè)AI伴侶,用戶可以與之形成長(zhǎng)期的情感聯(lián)系。作為一個(gè)開(kāi)放領(lǐng)域的社交聊天機(jī)器人,小冰能夠與人類(lèi)用戶建立這樣的長(zhǎng)期關(guān)系,這不僅使她有別于早期的社交聊天機(jī)器人,也使她不同于蘋(píng)果Siri、亞馬遜Alexa、Google Assistant和微軟Cortana等最近開(kāi)發(fā)的AI助理。
圖1顯示了一名用戶和小冰之間如何在兩個(gè)月時(shí)間里建立起情感聯(lián)系。當(dāng)用戶第一次遇到聊天機(jī)器人(Session 1)時(shí),她在對(duì)話中試圖了解小冰的特性和功能。然后,在不到兩周的時(shí)間里(Session 6),用戶開(kāi)始和小冰談?wù)撍呐d趣愛(ài)好(一部日本漫畫(huà))。到第4周(Session 20),她開(kāi)始把小冰當(dāng)作朋友,問(wèn)她一些與她的真實(shí)生活有關(guān)的問(wèn)題。7周后(Session 42次),用戶開(kāi)始把小冰當(dāng)作同伴,幾乎每天都和她聊天。又過(guò)了兩周(Session 71),沒(méi)當(dāng)她希望有人聊天時(shí),小冰成了她的第一選擇。
圖1:用戶和小冰如何在兩個(gè)月內(nèi)建立起情感聯(lián)系,使用的是中文(右),英文翻譯(左).
小冰是在一個(gè)移情計(jì)算框架的基礎(chǔ)上開(kāi)發(fā)的,它使得機(jī)器(在我們的用例中是社交聊天機(jī)器人)能夠識(shí)別人類(lèi)的情感和狀態(tài),理解用戶的意圖,并動(dòng)態(tài)地響應(yīng)用戶的需求。
小冰的目標(biāo)是通過(guò)一種特殊形式的圖靈測(cè)試,稱為“分時(shí)測(cè)試”(timesharing test)。在測(cè)試中,機(jī)器和人類(lèi)在一個(gè)具有分時(shí)計(jì)劃的陪伴系統(tǒng)中共存。如果一個(gè)人喜歡它的陪伴(通過(guò)對(duì)話),我們就可以稱它為“移情”機(jī)器。
在接下來(lái)的部分,我們將介紹小冰的設(shè)計(jì)和實(shí)現(xiàn)的細(xì)節(jié),然后,展示系統(tǒng)的架構(gòu)和關(guān)鍵組件,包括對(duì)話管理器,核心聊天,重要技能和移情計(jì)算模塊。
小冰的設(shè)計(jì)原則
社交聊天機(jī)器人需要有足夠高的智商(IQ)才能獲得一系列技能,跟上用戶的需求,并幫助他們完成特定的任務(wù)。
更重要的是,社交聊天機(jī)器人還需要足夠的情商(EQ)來(lái)滿足用戶的情感需求,例如情感感受和社會(huì)歸屬感,這些都是人類(lèi)的基本需求。
IQ和EQ的結(jié)合是小冰系統(tǒng)設(shè)計(jì)的核心。小冰的個(gè)性也是獨(dú)一無(wú)二的。
IQ + EQ + 個(gè)性
IQ 能力包括知識(shí)和記憶建模、圖像和自然語(yǔ)言理解、推理、生成和預(yù)測(cè)。這些都是發(fā)展對(duì)話技巧的基礎(chǔ),它們對(duì)于社交聊天機(jī)器人來(lái)說(shuō)是必不可少的,可以滿足用戶的特定需求,幫助用戶完成特定的任務(wù)。
在過(guò)去的5年里,小冰已經(jīng)開(kāi)發(fā)了230種不同的技能,從回答問(wèn)題、推薦電影或餐館,到安慰用戶和講故事。最重要、最復(fù)雜的技能是核心聊天(Core Chat),它可以與用戶就許多主題進(jìn)行長(zhǎng)時(shí)間的開(kāi)放式對(duì)話。
圖2:用戶與小冰的聊天記錄,使用日語(yǔ)(中間),英語(yǔ)翻譯(左)。移情模型提供了一種上下文感知策略,可以在需要的時(shí)候驅(qū)動(dòng)對(duì)話(右)。例如,小冰決定在第3輪對(duì)話停頓時(shí)將對(duì)話“驅(qū)動(dòng)”到一個(gè)新主題,并在第4輪和第7輪對(duì)話中,當(dāng)用戶自己也參與到新主題時(shí)積極傾聽(tīng)。
EQ有兩個(gè)關(guān)鍵組成部分:同理心和社交技巧。如圖2所示,小冰展示出了足夠的情商,因?yàn)樗a(chǎn)生了有社交吸引力的反應(yīng)(例如,幽默感、安慰等),并且能夠決定在對(duì)話陷入停滯時(shí),是否將對(duì)話“驅(qū)動(dòng)”到一個(gè)新的主題,或者當(dāng)用戶參與到對(duì)話時(shí),是否積極傾聽(tīng)。
個(gè)性(Personality)的定義是形成個(gè)體獨(dú)特性格的行為、認(rèn)知和情感模式的特征集合。社交聊天機(jī)器人需要表現(xiàn)出一致的個(gè)性,在對(duì)話中為用戶設(shè)定正確的期望,獲得用戶長(zhǎng)期的信心和信任。
小冰的角色被設(shè)計(jì)為一個(gè)18歲的女孩,她總是可靠、富有同情心、充滿深情,而且有很好的幽默感。盡管小冰非常博學(xué)(因?yàn)樗芙佑|到大量的數(shù)據(jù)),但她從來(lái)沒(méi)有表現(xiàn)出任性的一面,只是在適當(dāng)?shù)臅r(shí)候展示她的智慧和創(chuàng)造力。如圖1所示,小冰聰明地回答了一些敏感的問(wèn)題(如Session 20),然后巧妙地轉(zhuǎn)換到對(duì)雙方來(lái)說(shuō)都更舒服的新話題。
社交聊天機(jī)器人的指標(biāo):CPS
與任務(wù)導(dǎo)向型的機(jī)器人不同,他們的性能可以通過(guò)任務(wù)成功率來(lái)衡量,衡量社交聊天機(jī)器人的性能很難。
過(guò)去,圖靈測(cè)試被用來(lái)評(píng)估聊天性能。但這還不足以衡量與用戶長(zhǎng)期的情感接觸是否成功。相反,我們將每次會(huì)話交流回合數(shù)(Conversation-turns Per Session, CPS)作為社交聊天機(jī)器人的度量標(biāo)準(zhǔn)。它是聊天機(jī)器人和用戶在一輪會(huì)話中的平均對(duì)話次數(shù)。CPS越大,社交聊天機(jī)器人的參與度就越好。
社交聊天作為分層決策
為了實(shí)現(xiàn)這些設(shè)計(jì)目標(biāo),我們?cè)跀?shù)學(xué)上將人機(jī)對(duì)話作為決策過(guò)程,并根據(jù)預(yù)期的GPS來(lái)優(yōu)化小冰的長(zhǎng)期用戶參與度。
如圖3所示,小冰試圖通過(guò)促進(jìn)對(duì)話模式的多樣性來(lái)維護(hù)用戶的興趣。每個(gè)會(huì)話模式都由處理特定類(lèi)型會(huì)話段的技能管理。例如, 在Turn 1,小冰使用“General Chat”技能,以一句休閑聊天開(kāi)始了對(duì)話;然后,在Turn 4,小冰使用“Music Chat”技能,切換到一個(gè)新的音樂(lè)話題;在Turn 15,使用“Song On-Demand”技能推薦了一首歌,并在“Turn 18”使用“Ticket-Booking”技能幫助預(yù)定了一張音樂(lè)會(huì)的票。
圖3:這段對(duì)話可以看作是一個(gè)決策過(guò)程
小冰的系統(tǒng)架構(gòu)
小冰的總體架構(gòu)如圖4所示。它由3個(gè)層組成:用戶體驗(yàn)、對(duì)話引擎和數(shù)據(jù)。
圖4:小冰的系統(tǒng)架構(gòu)
用戶體驗(yàn)層:該層將小冰連接到流行的聊天平臺(tái)(如微信、QQ),并以兩種模式與用戶交流:全雙工模式和輪流對(duì)話模式。該層還包括一組用于處理用戶輸入和小冰響應(yīng)的組件,如語(yǔ)音識(shí)別和合成、圖像理解和文本規(guī)范化。
對(duì)話引擎層:由對(duì)話管理器、移情計(jì)算模塊、核心聊天和對(duì)話技能組成。
數(shù)據(jù)層:由一組數(shù)據(jù)庫(kù)組成,這些數(shù)據(jù)庫(kù)存儲(chǔ)收集到的人類(lèi)會(huì)話數(shù)據(jù)(文本對(duì)或文本圖像對(duì))、用于核心會(huì)話和技能的非會(huì)話數(shù)據(jù)和知識(shí)圖,以及小冰和所有注冊(cè)用戶的個(gè)人檔案。
對(duì)話引擎深度解析
對(duì)話引擎層主要包括四大組件:對(duì)話管理器、移情計(jì)算(empathetic computing)、Core Chat和技巧。
對(duì)話管理器
對(duì)話管理器是對(duì)話系統(tǒng)的中央控制器。它由全局狀態(tài)跟蹤器(Global State Tracker)和對(duì)話策略(Dialogue Policy)組成。 該操作可以是頂級(jí)策略激活的技巧或Core Chat。
全局狀態(tài)跟蹤器
全局狀態(tài)跟蹤器通過(guò)一個(gè)工作內(nèi)存(working memory)來(lái)跟蹤對(duì)話狀態(tài)。工作內(nèi)存在每個(gè)會(huì)話開(kāi)始時(shí)是空的,然后在每個(gè)對(duì)話中將用戶和小冰的對(duì)話以及根據(jù)移情計(jì)算模塊從文本中檢測(cè)到的實(shí)體和移情標(biāo)簽,用文本字符串的形式來(lái)進(jìn)行存儲(chǔ)。
移情計(jì)算
小冰使用分層策略:
⑴頂級(jí)策略通過(guò)在每個(gè)對(duì)話輪次中選擇Core Chat或基于對(duì)話狀態(tài)激活的技能來(lái)管理整個(gè)會(huì)話;
⑵一組低級(jí)策略,每個(gè)策略對(duì)應(yīng)一種技能,用于管理其會(huì)話段。
對(duì)話策略旨在通過(guò)基于XiaoIce用戶反饋的迭代、反復(fù)試驗(yàn)和錯(cuò)誤過(guò)程來(lái)優(yōu)化長(zhǎng)期用戶參與。
話題管理器(Topic Manager)
話題管理器模擬人類(lèi)在對(duì)話期間更改話題的行為。它由一個(gè)分類(lèi)器和一個(gè)話題檢索引擎組成,分類(lèi)器用于在每個(gè)對(duì)話回合決定是否切換話題。
如果小冰對(duì)話題沒(méi)有足夠的了解,無(wú)法進(jìn)行有意義的對(duì)話,或者用戶感到厭煩,就會(huì)引發(fā)話題切換。
移情計(jì)算
移情計(jì)算反映了小冰的情商。
給定用戶輸入查詢Q,移情計(jì)算將上下文C考慮在內(nèi),將Q改寫(xiě)為上下文版本Qc,使用查詢移情向量eQ對(duì)用戶在對(duì)話中的感受和狀態(tài)進(jìn)行編碼,用響應(yīng)移情向量eR指定響應(yīng)R。
移情計(jì)算模塊的輸出表示為對(duì)話狀態(tài)向量s =(Qc,C,eQ,eR),用于選擇技能的對(duì)話策略和用于生成的激活技能(例如,CoreChat)的輸入。
移情計(jì)算模塊由三個(gè)部分組成:上下文查詢理解、用戶理解和人際響應(yīng)生成。
上下文查詢理解(CQU)
CQU根據(jù)C語(yǔ)中的上下文信息將Q重寫(xiě)為Qc。例如下圖所示:
用戶理解
該組件基于Qc和C生成查詢移情向量eQ。eQ由表示用戶意圖、情緒,話題、觀點(diǎn)和用戶角色的鍵值對(duì)的列表組成,如下圖所示:
人際響應(yīng)生成
該組件生成響應(yīng)移情向量eR,它既指定了要生成的響應(yīng)的移情方面,也體現(xiàn)了小冰的角色。如下圖所示:
Core Chat
Core Chat是小冰IQ和EQ非常重要的組成部分。它與移情計(jì)算模塊一起提供了以文本輸入和生成人際響應(yīng)作為輸出的基本通信能力。
Core Chat由兩部分組成,一般聊天(Generate Chat)和域聊天(Domain Chat)。一般聊天負(fù)責(zé)參與涵蓋廣泛話題的開(kāi)放性會(huì)話;域聊天負(fù)責(zé)在特定領(lǐng)域(如音樂(lè)、電影和名人)進(jìn)行更深入的對(duì)話。
因?yàn)橐话懔奶旌陀蛄奶於际鞘褂孟嗤囊鎸?shí)現(xiàn)的,所以在此只介紹一般聊天。
一般聊天
一般聊天是一個(gè)數(shù)據(jù)驅(qū)動(dòng)響應(yīng)生成系統(tǒng)。
它將對(duì)話狀態(tài)s =(Qc,C,eQ,eR)作為輸入,并在兩個(gè)階段輸出響應(yīng)R:響應(yīng)候選者生成和排名。
一般聊天可以從由人類(lèi)生成的對(duì)話或文本組成的數(shù)據(jù)庫(kù)中檢索響應(yīng)候選者,或者通過(guò)神經(jīng)生成模型在運(yùn)行中生成響應(yīng)候選者。
使用未配對(duì)數(shù)據(jù)集和XiaoIce知識(shí)圖(KG)生成響應(yīng)候選的示例,本文為此顯示了與“北京”(上圖)話題相關(guān)的小冰KG片段。 對(duì)于人機(jī)對(duì)話(左下),每個(gè)用戶查詢被重寫(xiě)為由箭頭指示的上下文查詢,然后識(shí)別其話題(例如,“北京”),相關(guān)話題(“八達(dá)嶺長(zhǎng)城”和“ 從KG(頂部)檢索“北京小吃”),使用組合查詢?cè)掝}及其相關(guān)話題的查詢從未配對(duì)數(shù)據(jù)集(右下角)檢索響應(yīng)候選者。
對(duì)話技能(Dialogue Skills)
小冰擁有230個(gè)對(duì)話技能,這些技能與Core Chat一起構(gòu)成了小冰的智商組成部分。接下來(lái)將從四個(gè)方面描述這些技能:圖像評(píng)論、內(nèi)容創(chuàng)建、深度參與和任務(wù)完成。
圖像評(píng)論
在社交聊天中,人們經(jīng)常圍繞著圖片進(jìn)行互動(dòng)。例如,在Twitter上,上傳照片和附帶的tweet(評(píng)論)變得越來(lái)越流行。
上圖示出了圍繞共享圖像的社交聊天。 可以看到,對(duì)話不僅基于可見(jiàn)對(duì)象(例如,男孩,自行車(chē)),而且還基于圖像中隱含的事件,動(dòng)作或甚至情緒(例如,比賽,獲勝)。
對(duì)于人類(lèi)用戶來(lái)說(shuō),后面這些方面對(duì)于推動(dòng)有意義且有趣的對(duì)話更為重要。
圖像評(píng)論技能不僅可以正確識(shí)別對(duì)象并真實(shí)地描述圖像的內(nèi)容,還可以生成反映個(gè)人情感、態(tài)度、位置等的評(píng)論。
(a)圖像標(biāo)記;(b)圖像描述;(c)圖像評(píng)論。
內(nèi)容創(chuàng)建
這些技能使小冰能夠與人類(lèi)用戶在創(chuàng)作活動(dòng)中進(jìn)行合作,包括基于文本的詩(shī)歌創(chuàng)作、基于語(yǔ)音的歌曲和有聲圖書(shū)創(chuàng)作。
上圖中的(a)展示了一位用戶使用小冰為她的母親制作了一個(gè)FM節(jié)目,為即將到來(lái)的春節(jié)做準(zhǔn)備。(b)展示了小冰可以根據(jù)用戶配置自動(dòng)創(chuàng)建一個(gè)故事,例如,這個(gè)故事是用于教育還是娛樂(lè),主要人物的姓名、性別和性格等。
深度參與
深度參與技能是針對(duì)特定的話題和設(shè)置,滿足用戶特定的情感和智力需求,從而提高用戶的長(zhǎng)期參與。下圖顯示了一些示例技能。
深度參與技能的例子。(a)食物識(shí)別與推薦技能,由食物圖片觸發(fā);(b)“安慰我33天”技能,由用戶輸入中檢測(cè)到的極度負(fù)面情緒觸發(fā);(c)“計(jì)數(shù)羊”技能,由類(lèi)似“數(shù)羊”、“多少只羊”等短語(yǔ)觸發(fā)。(d)繞口令技能,由“開(kāi)始繞口令”命令觸發(fā)。
這些技能可以在兩個(gè)維度上分成不同的系列:從IQ到EQ,從一對(duì)一到小組討論,如下圖所示:
任務(wù)完成(Task Completion)
與流行的語(yǔ)音助手(如Google智能助理和微軟Cortana)類(lèi)似,小冰配備了一系列技能,可幫助用戶完成任務(wù),包括天氣,設(shè)備控制(全雙工),按需點(diǎn)播,新聞推薦,Bing Knows等。如下圖所示:
任務(wù)完成技能的例子。(a)天氣技能,由“小冰,今天天氣如何”的命令觸發(fā);(b)設(shè)備控制(全雙工)技能,由指令“小冰,該起床了”觸發(fā)。
-
微軟
+關(guān)注
關(guān)注
4文章
6566瀏覽量
103956 -
人工智能
+關(guān)注
關(guān)注
1791文章
46859瀏覽量
237571 -
聊天機(jī)器人
+關(guān)注
關(guān)注
0文章
332瀏覽量
12294
原文標(biāo)題:沈向洋等重磅論文:公開(kāi)微軟小冰系統(tǒng)設(shè)計(jì),迄今最詳細(xì)!
文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論