語言模型可以完成不同任務,例如將一種語言翻譯成另一種語言,將長文檔總結為簡短的摘要等。在眾多任務中,開放域對話可能是最困難的任務之一,因為開放域對話需要模型覆蓋不同的主題。在對話任務中,模型應該遵循負責任 AI(Responsible AI)實踐,并避免做出沒有外部信息源支持的事實陳述。
近日,超過 50 多位谷歌研究者參與撰寫的論文《 LaMDA: Language Models for Dialog Applications 》介紹了語言模型 LaMDA 的最新進展。論文概括了他們如何在安全、可靠和高質量的對話應用程序方面取得進展。LaMDA 通過微調一系列專門用于對話的、基于 Transformer 的神經語言模型構建的,具有多達 137B 個參數,模型還可以利用外部知識源進行對話。
OpenAI在昨天悄然放出了GPT第三代——《Language Models are Few-Shot Learners》。刷遍Twitter!史無前例!論文介紹了GPT-3這是一種由1750億個參數組成的最先進的語言模型。論文由32位作者72頁pdf。
最近的工作表明,通過對大量文本進行預訓練,然后對特定任務進行微調,在許多NLP任務和基準測試方面取得了巨大的進展。盡管這種方法在架構中通常與任務無關,但它仍然需要成千上萬個特定于任務的實例微調數據集。相比之下,人類通常只需要幾個例子或簡單的指令就可以完成一項新的語言任務——這是目前的NLP系統仍然難以做到的。在這里,我們展示了擴展語言模型極大地提高了任務無關性、低命中率的性能,有時甚至達到了與先前最先進的微調方法的匹配性能。具體來說,我們訓練了一個帶有1750億個參數的自回歸語言模型GPT-3,比以前任何非稀疏語言模型都多10倍,并在小樣本設置下測試了它的性能。對于所有任務,GPT-3的應用沒有任何梯度更新或微調,任務和小樣本演示指定純粹通過與模型的文本交互。GPT-3在許多NLP數據集上實現了強大的性能,包括翻譯、問答和完形填空任務,以及一些需要即時推理或領域適應的任務,如整理單詞、在句子中使用新單詞或執行3位算術。同時,我們還確定了一些數據集,其中GPT-3的小樣本學習仍然效果不佳,以及一些數據集,其中GPT-3面臨著與大型web語料庫上的訓練有關的方法問題。最后,我們發現GPT-3可以生成新聞文章的樣本,這些文章是人類評價者難以區分的。我們討論了這個發現和一般的GPT-3的更廣泛的社會影響。
GPT-3的主要目標是用更少的領域數據、且不經過精調步驟去解決問題。
為了達到上述目的,作者們用預訓練好的GPT-3探索了不同輸入形式下的推理效果。
這里的Zero-shot、One-shot、Few-shot都是完全不需要精調的,因為GPT-3是單向transformer,在預測新的token時會對之前的examples進行編碼。
作者們訓練了以下幾種尺寸的模型進行對比:
實驗證明Few-shot下GPT-3有很好的表現:
最重要的是,GPT-3在Few-shot設定下,在部分NLU任務上超越了當前Fine-tuning的SOTA。
機器學習模型在自然語言處理中的應用最近的進展是由評估各種任務模型的基準驅動的。然而,這些覆蓋范圍廣泛的基準測試主要局限于英語,盡管人們對多語言模型的興趣越來越大,但是仍然缺少一個基準測試來全面評估這些方法對各種語言和任務的影響。為此,我們引入了多語言編碼器XTREME基準的跨語言轉換評估,這是一個多任務基準,用于評估40種語言和9個任務的多語言表示的跨語言泛化能力。我們證明,雖然英語測試的模型在許多任務上達到了人類的表現,但在跨語言遷移模型的表現上仍然有相當大的差距,特別是在句法和句子檢索任務上。在不同的語言之間也有廣泛的結果。我們發布基準測試是為了鼓勵對跨語言學習方法的研究,這種方法可以將語言知識傳遞到不同的、有代表性的語言和任務中。
?【導讀】最近全國人們都在眾志成城抗擊新冠毒肺炎疫情,春節馬上過去,疫情還比較嚴重,還是呆在家里好好學習吧!今天Google大腦研究團隊發布了最新對話AI的研究成果,一個有26億參數的端到端訓練的神經會話模型-Meena聊天機器人,能夠產生比肩人類的會話質量,可達到79%的開放域聊天滿意度。來看看這篇研究成果,然后利用假期看下這篇論文。
摘要
我們介紹了Meena,一個多回合的開放域聊天機器人,它根據從公共域社交媒體對話中挖掘和過濾的數據進行端到端的訓練。這個26億的參數神經網絡被訓練來最小化困惑度,這是一個我們用來與人類判斷的多回合對話質量進行比較的自動度量。為了捕捉這種判斷,我們提出了一種新的人工評價指標,稱為意義度Sensibleness 和具體度平均(SSA),它捕捉了良好交談的關鍵元素。有趣的是,我們的實驗顯示了perplexity和SSA之間很強的相關性。如果我們能夠更好地優化perplexity,端到端訓練的最佳perplexity在SSA中的得分(多輪評估中為72%)表明86%的人類水平SSA是可以達到的。此外,完整版的Meena(帶有過濾機制和調諧解碼)得分79%,比我們評估的排名第二的聊天機器人高23%。
現代會話代理(聊天機器人)趨向于高度專門化——只要用戶聊的內容不偏離其設定范圍太遠,它們就會表現得很好。為了更好地處理各種會話主題,開放域對話研究探索了一種互補的方法,試圖開發一個聊天機器人,它不是專門的,但仍然可以談論幾乎任何用戶想聊的東西。除了是一個令人著迷的研究課題外,這種對話機器人還可以帶來許多有趣的應用,如進一步使計算機交互更加人性化,提高外語實踐,以及制作相關的交互式電影和視頻游戲角色。
然而,當前的開放域聊天機器人有一個嚴重的缺陷——它們說的很多通常沒有意義。他們有時會說一些與目前所說的不一致的事情,或者缺乏對世界的常識和基本知識。此外,聊天機器人通常給出的響應并不與當前上下文相關。例如,“我不知道”是對任何問題的合理回答,但并不具體。目前的聊天機器人相比人類的表現經常這樣做,因為它能夠涵蓋許多用戶會話的回應。
在“向類人開放域聊天機器人”中,我們介紹了Meena,一個有26億參數的端到端訓練的神經會話模型。我們證明Meena可以進行比現有的最先進的聊天機器人有更明智和具體的對話。這種改進反映在我們為開放域聊天機器人提出的一種新的人類評價指標——意義度Sensibleness 和具體度平均(SSA)上,它捕捉了人類對話的基本但重要的屬性。值得注意的是,我們證明了perplexity與SSA高度相關,perplexity是任何神經會話模型都可以使用的自動度量。
Meena 與用戶聊天
Meena
Meena是一種端到端的神經會話模型,它學習對給定的會話上下文做出合理的響應。訓練目標是最小化困惑度(perplexity),即預測下一個詞碼(在本例中是會話中的下一個單詞)的不確定性。它的核心是演化的Transformer seq2seq架構,這是一種通過演化神經架構搜索來改進perplexity的Transformer架構。
具體來說,Meena有一個單演化Transformer編碼器塊和13個演化變壓器譯碼塊,如下圖所示。編碼器負責處理對話上下文,以幫助Meena理解對話中已經說過的內容。然后解碼器利用這些信息來形成一個實際的響應。通過調整超參數,我們發現更強大的解碼器是提高會話質量的關鍵。
Meena編碼一個7輪對話上下文并生成一個響應“下一代”的例子。
用于訓練的對話被組織成樹線程,其中線程中的每個回復都被視為一個對話輪。我們提取了每一個會話訓練樣本,其中包含了七次上下文轉換,作為一條通過樹線程的路徑。我們選擇7作為一個良好的平衡,既要有足夠長的上下文來訓練會話模型,又要在內存約束內擬合模型(更長的上下文占用更多內存)。
Meena模型有26億個參數,從公共領域的社交媒體對話中得到的341 GB的文本上訓練。與現有的最先進的生成模型OpenAI GPT-2相比,Meena擁有1.7倍的模型容量,并接受了8.5倍的數據訓練。
人工評價指標: Sensibleness 意義度和具體度平均(SSA)
現有的聊天機器人質量的人工評價指標往往比較復雜,并且不能得到評估者之間的一致同意。這促使我們設計了一個新的人工評價指標,意義度和具體度平均(SSA),它捕捉了自然對話的基本但重要的屬性。
為了計算SSA,我們與被測試的聊天機器人(Meena和其他著名的開放域聊天機器人,特別是Mitsuku、Cleverbot、XiaoIce和DialoGPT)進行了眾包自由形式的對話。為了確保評估之間的一致性,每次談話都以相同的問候語“嗨!”開始。對于每個話語,群體工作者回答兩個問題,“這有意義嗎?”和“它是具體的嗎?”評價者被要求用常識來判斷一個回答在上下文中是否完全合理。如果有什么東西看起來是錯的——令人困惑、不合邏輯、斷章取義或事實上是錯誤的——那么它應該被評為“沒有意義”。如果回應有意義,話語就會被評估,以確定它是否特定于給定的上下文。例如,如果A說:“我喜歡網球”,而B回答說:“那很好”,那么這個表達應該標記為“不具體”。該回復可以用于許多不同的上下文中。但如果B回應說:“我也是,我對羅杰·費德勒是欲罷不能!”然后它被標記為“特定的”,因為它與正在討論的內容密切相關。
對于每個聊天機器人,我們收集了1600到2400個單獨的對話,通過大約100個對話。每一個模型回應都被眾包工人貼上標簽,以表明它是否有意義和具體。聊天機器人的意義度是標記為“sensible”的響應的分數,而具體度是標記為“specific”的響應的分數。這兩個的平均值是SSA分數。下面的結果表明,在SSA分數方面,Meena比現有的最先進的聊天機器人表現要好得多,并且正在縮小與人類表現的差距。
與人類、Mitsuku、Cleverbot、XiaoIce和DialoGPT相比,Meena意義度和具體度平均值(SSA)較低。
自動的度量: Perplexity 困惑度
研究人員長期以來一直在尋找一種與更準確的人類評估相關聯的自動評估指標。這樣做可以更快地開發對話模型,但是到目前為止,找到這樣一個自動的度量標準是很有挑戰性的。令人驚訝的是,在我們的工作中,我們發現perplexity(一種任何神經seq2seq模型都可以使用的自動度量)與人類評價(如SSA值)有很強的相關性。Perplexity度量了語言模型的不確定性。復雜程度越低,模型在生成下一個標記(字符、子單詞或單詞)時就越有信心。從概念上講,perplexity表示模型在生成下一個詞碼時試圖選擇的選項的數量。
在開發過程中,我們用不同的超參數和架構對八個不同的模型版本進行了基準測試,例如層數、注意力頭數、總訓練步驟、使用演進的Transformer還是常規的Transformer、使用硬標簽訓練還是使用精餾訓練。如下圖所示,模型的perplexity越低,SSA得分越高,相關系數越大(R2 = 0.93)。
互動SSA vs. Perplexity。每個藍點都是Meena模型的不同版本。一條回歸曲線顯示了SSA與perplexity之間的強相關性。虛線對應于人、其他機器人、Meena (base)、我們的端到端訓練模型的SSA性能,最后是帶有過濾機制和調優譯碼的完整Meena。
我們最好的端到端訓練的Meena模型,稱為Meena (base),達到了10.2的perplexity(越小越好),轉換成SSA分數72%。與其他chabots所取得的SSA分數相比,我們72%的SSA分數與普通人86%的SSA相差無幾。完整版的Meena具有過濾機制和調諧解碼,進一步將SSA分數提高到79%。
未來研究與挑戰
正如前面所提倡的,我們將繼續通過改進算法、體系結構、數據和計算來降低神經會話模型的復雜性。
雖然我們在本工作中只關注了意義度和具體度,但在后續的工作中,個性和真實性等其他屬性也值得考慮。此外,解決模型中的安全性和偏差是我們的一個關鍵重點領域,鑒于與此相關的挑戰,我們目前不會發布外部研究演示。然而,我們正在評估與外部化模型檢查點相關的風險和收益,并可能選擇在未來幾個月提供它,以幫助推進這一領域的研究。
致謝
Several members contributed immensely to this project: David So, Jamie Hall, Noah Fiedel, Romal Thoppilan, Zi Yang, Apoorv Kulshreshtha, Gaurav Nemade, Yifeng Lu. Also, thanks to Quoc Le, Samy Bengio, and Christine Robson for their leadership support. Thanks to the people who gave feedback on drafts of the paper: Anna Goldie, Abigail See, YizheZhang, Lauren Kunze, Steve Worswick, Jianfeng Gao, Scott Roy, Ilya Sutskever, Tatsu Hashimoto, Dan Jurafsky, Dilek Hakkani-tur, Noam Shazeer, Gabriel Bender, Prajit Ramachandran, Rami Al-Rfou, Michael Fink, Mingxing Tan, Maarten Bosma, and Adams Yu. Also thanks to the many volunteers who helped collect conversations with each other and with various chatbots. Finally thanks to Noam Shazeer, Rami Al-Rfou, Khoa Vo, Trieu H. Trinh, Ni Yan, Kyu Jin Hwang and the Google Brain team for their help with the project.
參考地址:
//ai.googleblog.com/2020/01/towards-conversational-agent-that-can.html