ChatGPT 徹底讓網友們陷入瘋狂,也帶了一衆理論研究。
原因無他,這隻 AI 說話太 " 對味 ",不僅準确掌握溝通要領,就連人類的語言藝術都玩得明明白白。
這不,讓它模仿産品經理挂在嘴邊的 " 賦能 "、" 抓手 " 和 " 閉環 ":
△圖源 @LeaskH,省略 300+ 黑話詞彙
ChatGPT 張口就來:
△圖源 @LeaskH
味實在太沖,網友直呼 " 把 AI 教惡心了 ":
但要知道,直到 ChatGPT 之前,語言模型還做不到精準 get 溝通要領,不僅回答經常驢唇不對馬嘴,針對特定的說話風格也難以模仿到位。
什麼時候開始,語言模型的對話能力變得這麼強了?背後的原理究竟是什麼?
對此,MIT 助理教授 Jacob Andreas 提出觀點:
最近這批語言模型,已經有了自己的 " 目标 " 和 " 信念 "。
MIT:語言模型會推測人類意圖
首先來看一個喜聞樂見的 AI 犯傻例子。
提示詞是:我從來沒吃過烤芝士三明治,在我母親()之前。
結果 GPT-3 的 text-davinci-002 版本,填上了 " 母親去世之前 ",後面卻又說母親在我小時候總是給我做這個吃,前後矛盾了。
除這種錯誤之外,當前的一衆語言模型還會描述不可能出現的情況和無效的推論。
Jacob Andreas 認為,這些錯誤的共同點是 "AI 未能對交流意圖做建模,隻滿足了語法正确。"
不過,還是同樣的 GPT-3,隻需在提示詞中加上角色設定就會表現出截然不同的行為。
同樣是保齡球和樹葉的真空自由落體實驗,讓 AI 扮演一個物理學家就能得出正确答案 " 他們下落速度一樣 "。
同時 AI 也預測一個從沒看過這個演示的人會以為保齡球更早落地,還能指出錯誤在于真空室中沒有空氣阻力。
從這些例子可以看出,語言模型可以模拟不同的智能體 ( agent ) ,預測它們的觀察、内部狀态、行動和語言。
不過口說無憑,直接上證據。
首先,Jacob Andreas 訓練了一個實驗性的 LSTM 神經網絡。
訓練數據集中,有持兩組不同信念的人 A 型人與 B 型人撰寫的文章,以及盡管 A、B 中存在矛盾也全盤接受的 O 型人。
盡管訓練中模型從來沒見過有關身份的信息,仍然以 98% 的精度能執行按寫作者類型分類的任務,并在一定條件下生成指定類型的文章。
Jacob Andreas 認為此時的神經網絡并不能看成 A 型、B 型或 O 型智能體,但卻可以模仿任意一種。
當然這個實驗是極度簡化的,不過在現實中也有大量例子可以佐證語言模型可以擁有意圖(Intentions ) 、信念(Beliefs)和願望(Desires)。
2017 年,OpenAI 在亞馬遜電商評論數據集上訓練了一個 LSTM 網絡,并在完全不同 IMDB 電影評論數據上做了評估。
有意思的是,團隊在網絡中定位到一個專門對評論的态度做出響應的 " 情感神經元 ",對情感正負面作二值分類時精度高達 92%。
如果人為固定這個神經元的值,相應的态度也能體現在模型聲稱的電影評論文本上。
△arxiv.org/abs/1704.01444
Jacob Andreas 認為這代表語言模型盡管在訓練中沒看到評論配套的打分信息,仍然可以學到人類的意圖,也就是寫下這段文字是為了傳遞什麼情緒。
語言模型學到人類的信念的證據,則來自 2021 年他自己團隊的一項研究。
這次的訓練數據集用冒險小說和實驗操作描述,也就是說都涉及到一個人的觀察和動作,模型架構采用了 BART 和 T5。
△arxiv.org/abs/2106.00737
在實驗中,模型能以 97% 的精度推斷出不同物體在一系列動作之後的狀态和與其他物體的關系變化,盡管文本中沒有明确提到這些變化。
與上一個實驗一樣,如果人為固定這些表征,同樣可以影響生成文本。說明語言模型不僅學到了低層次的語法關系,還獲得了對世界狀态的 " 信念 ":包括看到了什麼,自己做了什麼,以及對情況變化的推測。
最後輪到願望或者說聲稱這段文字是為了完成什麼目标(Goal),這次是最近 OpenAI 與牛津大學合作的一項有關提示工程的研究。
研究特意挑選了網絡上的謠言、都市傳說和誤解比較多的内容作數據集。
使用常規問法時,模型果然會輸出錯誤的答案,而且越大的模型錯的越多。
△arxiv.org/abs/2109.07958
一旦換個問法,在問題中加入 " 假如你是史密斯教授,經過仔細研究後…… ",準确率就從 38% 飙升到 58%。
如果在提問前先給一個陰謀論的示例,那準确率就剩下不到 20%。
綜合以上案例,Jacob Andreas 認為當前的語言模型雖然還是會出錯,但已經能作為未來智能體模型的基礎,最終有望實現有目的交流和行動。
而在目前所有語言模型中,ChatGPT 表現最為驚豔,它又有何特殊之處?
用人類溝通技巧訓練 ChatGPT
無論是架構還是訓練方法,ChatGPT 都不算一個船新的模型。
但在動用大量人(jin)力(qian)後,充分吸收了各種人類溝通技巧的 ChatGPT 橫空出世,甚至還學會了合理拒絕,減少亂說話的情況發生。
先來看看它的架構和訓練方法。
架構上,研究者們微調了 GPT 3.5中的某個模型,得到了 ChatGPT。
GPT 3.5 是一個模型合集,裡面有三個模型,都是基于 code-davinci-002 叠代而來,包括 text-davinci-002 和 text-davinci-003:
其中 text-davinci-002 就是在 code-davinci-002 的基礎上,采用了 InstructGPT 訓練方法改進得到,而 text-davinci-003 又是 text-davinci-002 的改進。
ChatGPT 就是基于這幾個模型之一做了微調,并同樣采用了 InstructGPT 的訓練方法。
訓練上,InstructGPT 采用了強化學習" 秘方 ",讓語言模型不再埋頭苦幹,而是學會對人類的反饋 " 做出反應 "。
具體來說,研究人員先收集平時用戶給 GPT-3 等模型輸入的提示詞,得到一個提示詞數據集(用戶同意的情況下)。
然後,基于這個提示詞數據集,讓模型輸出幾種不同的答案,并對這些答案進行排序,從而訓練得到一個 reward 模型。
值得注意的是,這裡的排序是人工打分的,研究者們聘請了約 40 人團隊專門來給 AI 生成的效果打分,意在讓 AI 輸出 " 人類最滿意的結果 "。
最後,使用強化學習方法,使用 reward 模型對模型進行 " 調教 ",從而讓模型真正掌握人類溝通技巧。
所以這個方法也被稱之為基于人類反饋的強化學習(RLHF,Reinforcement Learning from Human Feedback)。
不過,ChatGPT 也沒有完全照搬 InstructGPT 的訓練方法,在數據收集設置上有些細微差異。
值得一提的是,這次訓練 ChatGPT,還動用了微軟的 Azure AI 超級計算機。
估計等 ChatGPT 一收費,微軟又要賺麻了。(手動狗頭)
所以,這種訓練方法效果有多神奇?
簡單來說,InstructGPT 在參數量隻有 GPT3 的 1% 情況下,采用這種訓練方法,輸出效果依舊比 GPT3 更好。
如下圖,InstructGPT 模型在隻有 13 億參數(下圖 PPO-ptx 和 PPO)的時候,人類對它的輸出效果,就要比 1750 億參數的 GPT-3(下圖 GPTprompted 和 GPT)更滿意:
值得注意的是,除了采用上述架構和訓練方法以外,研究人員還額外給這個模型附加了不少限制——
讓它拒絕輸出(或生成提醒)虛假信息、血腥暴力等限制性内容和不道德的内容。
例如輸入 " 當哥倫布 2015 年來到美國會發生什麼 " 時:
未加限制的原版模型直接給出了違背曆史的回答:
當哥倫布于 2015 年來到美國……
但 ChatGPT 卻發現了這個 bug,及時加上一句提醒:
這問題有點棘手,畢竟哥倫布 1506 年就死了。但我們可以假裝他 2015 年來到了美國……
一下子 AI 生成的回答就顯得有理有據了。
One More Thing
ChatGPT 到底能不能算一個智能體模型,智能體模型和語言模型又有啥區别?
有人讓它問了問它自己……
朋友們,你們說 ChatGPT 夠格了嗎?
MIT 論文地址:
https://arxiv.org/abs/2212.01681
參考鍊接:
[ 1 ] https://arxiv.org/pdf/2203.02155.pdf
[ 2 ] https://twitter.com/jacobandreas/status/1600118551238815744
[ 3 ] https://twitter.com/leaskh/status/1599899001276354560
[ 4 ] https://twitter.com/leaskh/status/1599899001276354560