天天看點

容量是GPT-2的1.7倍!谷歌打造神經對話模型Meena

容量是GPT-2的1.7倍!谷歌打造神經對話模型Meena

容量是GPT-2的1.7倍!谷歌打造神經對話模型Meena

作者 | Daniel Adiwardana,Thang Luong編譯 | 陳思谷歌方面表示,這是“真正”對話式AI的一次嘗試。

Chatbots(對話式機器人)往往具有高度專業性,隻要回答與使用者的期望相差不遠,它們的性能就值得肯定。為了更好地處理不同的對話主題,開放域對話研究 探索了一種新的方法,研究人員試圖開發一種非聊天專用機器人,雖然不以聊天為主要功能,但仍然可以滿足使用者的任何對話需求。

谷歌的研究人員認為:開放域對話研究除了是一個引人入勝的研究課題之外,這種對話機制還可以産生許多有趣的應用程式,例如進一步人性化的計算機互動、改進外語練習以及制作可關聯的互動式電影和遊戲角色。

但是,目前的開放域聊天機器人有一個嚴重的缺陷:它們通常沒有實用意義,比如對同一個問題的回答前後不一緻,或者回答總是缺乏基本常識。此外,聊天機器人通常會給出并非特定于目前上下文的響應,例如,“我不知道”可以是對任何問題的回答,目前的聊天機器人比人類更經常這樣做,因為它涵蓋了許多可能的使用者輸入。

近日,在一篇名為《Towards a Human-like Open-Domain Chatbot》的論文中,谷歌的研究人員介紹了一個名為“Meena”的模型,它是一個包含了 26 億參數的端到端訓練型神經對話模型。

在論文中,研究人員表示:他們已經證明,與現有的最新聊天機器人相比,Meena 可以進行更聰明、更具體的對話。他們針對開放域聊天機器人提出了一項新的人類評估名額,即 敏感度和特異性平均值(SSA),該名額捕獲了人類對話的基本但重要的屬性。值得注意的是,研究人員證明了“困惑度”是一種易用于任何神經對話模型的自動名額,與 SSA 高度相關。

什麼是“Meena”

Meena 是一種端到端的神經對話模型,可以學會對給定的對話環境做出更加聰明的反應。據介紹,Meena 模型具有 26 億個參數,并經過 341 GB 的文本訓練,這些文本是從公共領域的社交媒體對話中過濾出來的,與現有的最新生成模型 OpenAI GPT-2 相比,Meena 具有 1.7 倍的模型容量,并且受過 8.5 倍的資料訓練。

該模型訓練的目标是最大程度地減少“困惑度”,即預測下一個标記(會話中的下一個單詞)的不确定性。它的核心是 Evolved Transformer seq2seq 體系結構,這是一種通過進化神經體系結構搜尋發現以改善困惑性的 Transformer 體系結構。

容量是GPT-2的1.7倍!谷歌打造神經對話模型Meena

Meena(左)與人類的對話

具體而言,Meena 具有單個 Evolved Transformer 編碼器塊和 13 個 Evolved Transformer 解碼器塊,如下所示。編碼器負責處理對話上下文,以幫助 Meena 了解對話中已經說過的内容,然後,解碼器使用該資訊來制定響應。通過調整超參數,研究人員發現:功能更強大的解碼器是提高對話品質的關鍵。

容量是GPT-2的1.7倍!谷歌打造神經對話模型Meena

用于訓練的對話被組織為樹線程,其中線程中的每個答複都被視為一個會話回合。研究人員提取了每個會話訓練示例(包含七次上下文轉換)作為通過樹線程的一條路徑,研究人員表示,選擇七次作為一個良好的平衡,是因為既要有足夠長的上下文來訓練會話模型,又要在記憶體限制内拟合模型(較長的上下文會占用更多的記憶體)。

敏感性和特異性平均值(SSA)

現有的關于聊天機器人品質的人工評估名額往往很複雜,并且未在審閱者之間達成一緻。這促使谷歌的研發人員設計了一種新的人類評估名額,即敏感度和特異度平均值(SSA),它捕獲了自然對話的基本但重要的屬性。

為了計算 SSA,研究人員與參與測試的聊天機器人(Meena 和其他知名的開放域聊天機器人共同參與測試,包括 Mitsuku,Cleverbot,小冰和 DialoGPT)進行了自由形式的對話衆包。

為了確定評估之間的一緻性,每個對話都以相同的問候語“ 嗨!”開始,人類評估員會在對話過程中重點關注兩個問題:“回答是否有意義”以及“回答是否具體”,每輪對話都要求評估者使用常識來判斷機器人的響應是否完全合理。如果出現任何問題,比如混淆,不合邏輯,脫離上下文或有事實性錯誤的,則應将其評定為“沒有意義”;如果響應是有意義的,則需要評估其回答以确定是否基于給定的上下文。

例如,如果 A 回答“ 我愛網球 ”,而 B 回答“ 很好 ”,那麼這段對話應标記為“不具體”,因為這樣的答複可以在許多不同的上下文中使用;但是如果 B 回應:“我也是,我太喜歡羅傑·費德勒了!”那麼就可以将其标記為“特定”,因為它的回答與前文所讨論的内容密切相關。

對于每個聊天機器人,研究人員通過大約 100 個對話收集了 1600 至 2400 種個人對話,每個模型響應都由評估人員标記,以表明其回答是否合理和具體。聊天機器人的敏感度是标記為“敏感”的響應的一部分,而特異性是标記為“特定”的響應的一部分,這兩個數值的平均值是 SSA 分數。

下面的結果表明,就 SSA 分數而言,Meena 的表現大大優于現有的最新聊天機器人,并且正在縮小與人類的差距。

容量是GPT-2的1.7倍!谷歌打造神經對話模型Meena

自動評估度量:困惑度

研究人員長期以來一直在尋求一種與更準确的人工評估相關的自動評估度量,這樣做可以更快地開發對話模型,但是迄今為止,找到這樣的自動度量标準一直是一個挑戰。出乎意料的是,谷歌研究人員發現,在他們的工作中,“困惑度”似乎符合這一種自動度量标準,它可随時用于任何神經 seq2seq 模型,表現出與人工評估(如 SSA 值)的強烈相關性。

谷歌研究人員關于“困惑度”的解釋是這樣的:困惑度用于衡量語言模型的不确定性,困惑度越低,模型就越有信心生成下一個标記(如字元、子詞或單詞)。從概念上講,困惑度表示模型在生成下一個回答時試圖選擇的選項數量。

在開發過程中,研發人員對具有不同超參數和體系結構的八個不同模型版本進行了基準測試,例如層數、關注頭(attention heads)、總訓練步驟、是否使用 Evolved Transformer 或正常 Transformer 以及是否使用硬标簽或“蒸餾”進行訓練。如下圖所示,困惑度越低,模型的 SSA 評分越好,相關系數也很強(R 2 = 0.93)。

編者注:知識蒸餾(有時也稱為師生學習)是一種壓縮技術,要求對小型模型進行訓練,以使其擁有類似于大型模型(或者模型集合)的行為特征。

容量是GPT-2的1.7倍!谷歌打造神經對話模型Meena

互動式 SSA 與困惑度。每個藍點都是 Meena 模型的不同版本,通過繪制一條回歸線,表明 SSA 和困惑之間存在很強的相關性。虛線分别對應人類、其他機器人、Meena(base)、端到端訓練模型的 SSA 性能,以及最終的具有過濾機制和已調諧解碼的完整 Meena。

谷歌表示,他們研發的最好的端到端 Meena 模型(稱為 Meena(base))的困惑度為 10.2(越小越好),并且 SSA 分數轉換為 72%,完整版的 Meena 具有過濾機制和經過解碼的解碼功能,可将 SSA 分數進一步提高到 79%。

未來的研究與挑戰

對于未來的規劃,谷歌的研發人員表示将繼續通過改進算法,體系結構,資料和計算來降低神經對話模型的困惑度。雖然目前研發人員隻專注于這項工作中的明智性和特殊性,但其他屬性(例如事實性等)在後續工作中也值得考慮。此外,解決模型中的安全性和偏差是谷歌關注的重點領域。

參考連結:

https://ai.googleblog.com/2020/01/towards-conversational-agent-that-can.html

https://venturebeat.com/2020/01/28/meena-is-googles-attempt-at-making-true-conversational-ai/

https://mp.weixin.qq.com/s/Qcce6xbaR1l9ZefQNrzxiQ

繼續閱讀