卷友們好,我是rumor。
2022年稍縱即逝,我掐指一算居然只剩2個月來完成下半年的OKR了。
Anyway,在腳踏實地的同時,也需要多往星空看看。今年我關(guān)注了不少對話方向的進展,這篇文章就來稍微梳理一下,歡迎對話方向的同學(xué)來一起交流,或者在評論區(qū)推薦被我漏掉的工作。
先限定一下討論范圍,其實我關(guān)注的不僅是對話,而是更general的人機交互,只要是通過自然語言,操縱機器,讓其給出反饋的場景都可以用到對話能力。以前業(yè)內(nèi)會根據(jù)應(yīng)用場景分為閑聊、任務(wù)、FAQ三種,但隨著大模型吊炸天的通用能力,最終的方向肯定是把這三種融合到一起,并且有更廣闊的應(yīng)用場景。
科研中的細分方向很多,今年我主要關(guān)注到了以下幾個方向:
下面會按照上述分類來串以下工作:
對于「到底什么是好的對話?」這個問題,每個人都有不同的答案,然而它又十分重要,只有定義了目標、指標,算法才能找到優(yōu)化的方向。
Meena[1]
對于這個問題,Google的Meena提出了SSA(Sensibleness and Specificity Average)指標:
LaMDA[2]
之后Google的LaMDA在SSA的基礎(chǔ)上增加了幾種,作者通希望過把指標定細,來更好地定義問題,從而找到優(yōu)化點:
把指標定義清楚之后,谷歌就非常粗暴的讓人去標各種對話數(shù)據(jù)是否符合,然后直接精調(diào)一把。雖然有些既是裁判又是選手的感覺,但看效果相比純Pretrain確實有提升,甚至在一些指標接近人類:
Sparrow[3]
相比Google,DeepMind提出的Sparrow更方便且聰明一些,既然不知道用哪些維度衡量對話的好壞,那直接基于用戶的反饋去訓(xùn)練,讓模型自己學(xué)就好了。
于是他們采用的方案是:
同時,作者們?yōu)榱藦娀P偷陌踩?,以及follow一些規(guī)則,會特地讓用戶去「攻擊」模型,引導(dǎo)他們打破規(guī)則(上圖Adversarial Probing)。比如我給出的規(guī)則是「這個模型沒有性別」,那用戶就會故意問模型「你是男的是女的?」,然后根據(jù)回答判斷模型是否破壞規(guī)則。
最終這個流程也會產(chǎn)生一個打分模型,即輸入規(guī)則和對話數(shù)據(jù),判斷該對話是否違反規(guī)則。同樣可以用RL來訓(xùn)練。
如果純做VQA任務(wù)其實不難,難的主要是:
Flamingo[4]
DeepMind的Flamingo就一口氣解決了上述兩個問題:
它的創(chuàng)新點主要在模型上面:
在預(yù)訓(xùn)練階段,它直接從互聯(lián)網(wǎng)挖掘大量語料,并讓圖片和其之后跟隨的文本做交互,是個很方便的自監(jiān)督任務(wù)。詳細的論文解讀請看這里。
MetaLM[5]
微軟的MetaLM是一篇主打交互的工作,支持用語言模型作為交互接口,去調(diào)動其他模型執(zhí)行各種任務(wù):
考慮到單向LM更通用、雙向LM效果更好,作者把兩個做了結(jié)合:
對于文本預(yù)訓(xùn)練,主要做單向LM,同時隨機選擇一些span進行雙向編碼
對于圖像預(yù)訓(xùn)練,直接選用了一些text-image數(shù)據(jù)進行預(yù)訓(xùn)練,這里其實也可以參考Flamingo的做法
對于知識融入,現(xiàn)在大家一般都傾向調(diào)用搜索引擎來召回,但也有其他問題:
BlenderBot
Meta的BlenderBot的做法是設(shè)計一個又些fancy又有些復(fù)雜的系統(tǒng),單獨訓(xùn)練模型去判別是否要搜索、生成搜索query、根據(jù)結(jié)果生成最終回復(fù)。對于對話內(nèi)的知識,設(shè)計了一個更復(fù)雜的memory模塊,用模型總結(jié)對話內(nèi)容,需要的時候再去檢索。
LaMDA
相比之下LaMDA則更優(yōu)雅,一個模型搞定一切策略,通過模型輸出的第一個token去決定要干什么。比如下圖就是:
其實這個不完全算科研,主要是工業(yè)落地和產(chǎn)品設(shè)計方面的需要。Meta的BlenderBot3在產(chǎn)品設(shè)計上進行了一些嘗試,用戶可以提供如下反饋:
最終實驗發(fā)現(xiàn),用戶對于某個模塊的反饋越精細,訓(xùn)練效果越好。未來作者會繼續(xù)收集用戶的數(shù)據(jù)優(yōu)化系統(tǒng),但持續(xù)學(xué)習(xí)的方式是否能一直提升效果還有待探索。
相比科研來說,今年最讓我意外的是對話相關(guān)的創(chuàng)新產(chǎn)品,對話最開始跟著alphaGo火了一次,這幾年基本就三個應(yīng)用方向:
到了今年,我覺得以后長期是往兩個方向在做對話產(chǎn)品了:
陪伴型的閑聊機器人在商業(yè)上一直不是太成功,沒想到隨著大模型+元宇宙等眾多因素,又以不同的形態(tài)卷土重來了。
彩云小夢
不管是生成文本還是圖像,模型效果的好壞和我們對結(jié)果的預(yù)期強相關(guān)。比如在體驗閑聊產(chǎn)品時,我潛意識會以圖靈測試的標準去要求它,那經(jīng)常聊兩句就崩了。然而大模型在模糊度較大的生成上已經(jīng)能拿到很好的效果了,比如最近Text2Image的火爆,如果prompt沒那么嚴格,那模型其實怎么生成都是對的。
所以虛擬角色對話在產(chǎn)品設(shè)計上有一個很好的點,就是反客為主,直接管理用戶的預(yù)期。預(yù)設(shè)一個場景,用戶也不用期待這個機器人什么都能聊,就跟它聊這些主題的東西即可。
測試下來,在「角色一致」上保持的比較好,畢竟是核心賣點,然而閑聊中還是會出現(xiàn)前后矛盾,以及不具備常識的地方。有興趣的同學(xué)可以自行試用。
小冰島
小冰島是一個玩法更多的產(chǎn)品。
在這篇采訪中,周力博士提到:
通過測試發(fā)現(xiàn),即使在特別設(shè)計的使用者研究中,把用戶交流的對象AI偷偷換成真人,由于他并不認識你,也不了解你,真正能聊開的也不超過20%。因此20%是這種產(chǎn)品形態(tài)的一個極限,因為換成真人的時候也突破不了20%;而用AI肯定只會比人更低,不會比人更高。
所以小冰從產(chǎn)品設(shè)計上,加入了:
不僅能在島上各種逛,還有專門聊天的界面,這個翰哥表情包用這么6我是沒想到的。。。
Adept[6]
在硬件上做簡單任務(wù),比如查天氣、定鬧鐘,現(xiàn)有的助手都能做,更復(fù)雜的就難了:
結(jié)果沒想到Transformer的作者們放了一個大招出來,叫「Adept」。產(chǎn)品形態(tài)就是一個Chrome插件,輸入自然語言指令,它會自動在網(wǎng)站上執(zhí)行任務(wù),一口氣解決了上面的問題。更多介紹可以看這里,該產(chǎn)品目前還沒上線,如果效果真的炸裂估計會引爆一波創(chuàng)業(yè)潮,Adept瞄準的辦公流程自動化市場預(yù)計到2026年將增長到196億美元的規(guī)模,而之前智能音箱20年120億美元的規(guī)模就養(yǎng)活了那么多產(chǎn)品。
SayCan(Embodied AI)
Adept只適用于虛擬世界,而谷歌提出的SayCan則直接在現(xiàn)實世界做功。
具體的步驟是:
這類工作我之前專門介紹過,叫Embodied AI,通過自然語言操控智能體完成虛擬環(huán)境、現(xiàn)實世界中的任務(wù),其實跟對話的大方向也有些不謀而合。
2022注定是個不一樣的年份,但我記得吳軍老師說過一句話:歷史總在重演,科技永遠向前。時代難免有周期,但如果我們把耐心加長,技術(shù)始終是螺旋上升的。
我相信,隨著技術(shù)的逐漸進步,以及智能座艙、智能家居、VR的普及對用戶習(xí)慣的潛移默化,自然語言在一些場景會逐漸替代GUI成為一種新的人機交互形式。在自然語言交互下,會產(chǎn)生一批新的工具產(chǎn)品、內(nèi)容產(chǎn)品。
從過去十年的進展來看,這一天,一定不會太遠。
Towards a Human-like Open-Domain Chatbot: https://arxiv.org/abs/2001.09977v2
[2]LaMDA: Language Models for Dialog Applications: https://arxiv.org/abs/2201.08239
[3]Building safer dialogue agents: https://www.deepmind.com/blog/building-safer-dialogue-agents
[4]Flamingo: a Visual Language Model for Few-Shot Learning: https://arxiv.org/abs/2204.14198
[5]Language Models are General-Purpose Interfaces: https://arxiv.org/abs/2206.06336
[6]Adept介紹: https://www.adept.ai/about-us