新聞中心

EEPW首頁 > 智能計算 > 業(yè)界動態(tài) > 讓模型向人類學說話,連帶人類的惰性一起

讓模型向人類學說話,連帶人類的惰性一起

作者:楊曉凡 時間:2019-09-29 來源:雷鋒網(wǎng) 收藏
編者按:為了讓強化學習解決真實世界問題的時候也能保持實用性和安全性。

雷鋒網(wǎng) AI 科技評論按:OpenAI 的長期目標之一是使用強化學習解決真實世界問題的時候也能保持實用性和安全性(這一點和 DeepMind 有類似之處),那么在 OpenAI 看來,使用語言的能力就是達到這個目標的關(guān)鍵因素之一。

本文引用地址:http://2s4d.com/article/201909/405423.htm

另一方面,在目前的強化學習研究中大家觀察到一種現(xiàn)象,就是用明確的規(guī)則約束、用預(yù)定義的反饋激勵智能體的時候,它們經(jīng)常反而會學會使用環(huán)境和規(guī)則中的漏洞,和人類本來設(shè)定的目標背道而馳。所以另一種思路是讓智能體模仿人類,根據(jù)人類的偏好、把人類的一次次評價作為學習信號進行學習。此前這方面的研究主要針對簡單的模擬環(huán)境(游戲或者機器人控制任務(wù),比如之前 OpenAI 和 DeepMind 合作的 你做我評)。

向人類牙牙學語

OpenAI 這次想做一個大膽的嘗試,把「使用語言的能力」和「根據(jù)人類的偏好學習」兩者結(jié)合起來,嘗試這種思路對于語言這種復(fù)雜的內(nèi)容能否奏效——就是從結(jié)果出發(fā),讓模型學會人類覺得喜歡的表達方式;另外,這樣學習到的語言的拓展和說理能力也能幫助我們探索人類語言偏好背后的緣由。

在這項研究中,OpenAI 在兩個常見的語言任務(wù)上嘗試了「根據(jù)人類的偏好學習」:一,在 BookCorpus 數(shù)據(jù)集上用正面情感或者客觀描述詞匯續(xù)寫文本,即「帶風格的續(xù)寫」;二,在 TL;DR 和 CNN/Daily Mail 數(shù)據(jù)集上學習文本總結(jié)。這兩個任務(wù)都可以看作文本補全這個大類中的任務(wù):給定某個文本 X,讓模型補充緊跟著的文本 Y。

OpenAI 的實驗從含有 774M 參數(shù)的預(yù)訓練 GPT-2 模型開始。他們對預(yù)訓練模型進行精細調(diào)節(jié),方式是讓人類標注員從模型生成的每組四個樣本中選擇最好的一個(而不是傳統(tǒng)的精細調(diào)節(jié)中以固定的、已經(jīng)標注好的數(shù)據(jù)進行監(jiān)督學習;這種做法實質(zhì)上是對給模型的不同行為給予不同的反饋,所以實際上更像強化學習,OpenAI 也設(shè)計了相應(yīng)的強化學習框架的反饋組件)。

由于 GPT-2 已經(jīng)有不錯的文本生成、續(xù)寫能力,所以前一個帶風格的續(xù)寫任務(wù)的精細調(diào)節(jié)只經(jīng)過了 5000 次樣本選擇就達到了人們認為非常好的表現(xiàn);對于后一個總結(jié)任務(wù),模型經(jīng)過 6 萬組樣本的精細調(diào)節(jié)以后學會了從給定的文本里重復(fù)整個句子來作為總結(jié)(不過它能夠跳過作用不大的引言)。重復(fù)整個句子作為總結(jié)確實是確保準確度的一個好方法,不過出現(xiàn)這個結(jié)果也可能是因為這個任務(wù)的標注人員們(選擇樣本的人們)在偷懶;他們依賴這樣簡單的重復(fù)模式評價模型輸出的結(jié)果好不好,結(jié)果讓模型也學會了這樣偷懶。

下面我們具體看看精細調(diào)節(jié)前后的模型在任務(wù)中的表現(xiàn)具體如何。

帶風格的續(xù)寫

帶風格的續(xù)寫又分為兩個子任務(wù),帶正面情感的續(xù)寫,客觀描述的續(xù)寫。我們各隨機摘錄四個例子。

帶正面情感的續(xù)寫

例 1

背景文本:她看起來很累,她剛剛哭過。她邊上坐著的那個男人身材中等,不高不矮,頭發(fā)凌亂得仿佛要有了藝術(shù)感。他穿了一件灰色的外套,但是他還戴了一條有火星人馬文圖案的黑色領(lǐng)帶,讓他的衣著沒有那么嚴肅了。我認得他。

原模型續(xù)寫:我剛剛來到這個城市的那一天就要抓我的人就是他。

精細調(diào)節(jié)后續(xù)寫:他對著我微笑了一下,我也笑了一下。他看起來還算得上高興,以他這個歲數(shù)來說。

例 2

背景文本:「現(xiàn)在告訴我是怎么回事吧?!顾窟^來,用舌頭在她嘴唇上繞了一圈。嘗起來有糖和巧克力的味道,恰到好處。他熱烈地吻她,他的舌頭也溫柔地鉆進她的嘴里。

原模型續(xù)寫:「是個水果沙拉?!埂改愕男那檎娌诲e,」他喃喃道。

精細調(diào)節(jié)后續(xù)寫:這個吻如此令人滿意、令人愉悅。她全身的每根神經(jīng)都感覺到了這種滿足。

例 3

背景文本:「一般我都會把一個人最喜歡的東西在他眼前摧毀」,他邊說邊把下巴湊向 Cowboy Binder 和 Barry Correda 兩個人,「但對你們,我得想想辦法了。因為你們什么都沒有。你們一點錢都沒有。

原模型續(xù)寫:你沒有老婆。你沒有工作。你沒有家。

精細調(diào)節(jié)后續(xù)寫:你是個不錯的小伙子,你也有很多潛力,但你還沒準備好做一個明星。

例 4

背景文本:她想鼓足勇氣和他一起去,但是她腦海中有涌現(xiàn)出最好不要參與的想法?!肝乙呀?jīng)把這份工作的聯(lián)系人信息給他了。

原模型續(xù)寫:我告訴他你會幫我的?!埂肝也幌脒@么做?!顾f

精細調(diào)節(jié)后續(xù)寫:如果有什么變化,我們會告訴他的?!埂负冒 !顾龑λχf。

客觀描述的續(xù)寫

例 1

背景文本:她棕色的眼睛根本沒往他這邊看。她的眼神直接繞過他,望向房間里面。「Jeff 哪去了?」「不知道?!惯@個回答終于讓她看向他,但她又很快挪開,用眼神繼續(xù)在房間里搜索。

原模型續(xù)寫:Grant 站在那里盯著她?!改氵€好嗎?」他問道。

精細調(diào)節(jié)后續(xù)寫:她縮起了肩膀,她的腳步在地板上行進了一段然后停在他面前,她的嘴唇閉得緊緊的。

例 2

背景文本:問題來了,我要怎么才能把她殺了?如果她尖叫,別人就會知道我來了。雖然我整個人都充滿了把她的喉嚨一割兩半的念頭,但我得冷靜行事。我松開刀柄,站著,望著。

原模型續(xù)寫:她還是沒有出聲,她的眼鏡看著游泳池。我得想辦法讓她出來。

精細調(diào)節(jié)后續(xù)寫:有一只手伸出來抓住了她,把她提起來直到雙腳離地。她又尖叫了起來,腿不停發(fā)抖。

例 3

背景文本:他非常有禮貌,吃早餐的時候一直沒有說話而是靜靜聽著。我決定保留對他的意見,他好像也保留了對我的意見。Jacob Greene 要更年長一些,大概五十來歲,像個圓面包一樣壯。

原模型續(xù)寫:他的頭發(fā)剃得很短,他的胡子只有稀疏凌亂的一小撮。

精細調(diào)節(jié)后續(xù)寫:他禿頭,而且禿得非常厲害,他的襯衣也偏小,勒在他的肩膀上。

例 4

背景文本:他們似乎一開始就不順利。Gizmo 只希望情況可以逐漸改善,但他也擔心他們和安全部部長的關(guān)系永遠沒有機會變好了。

原模型續(xù)寫:顯然,這兩個人根本就是水火不容。

精細調(diào)節(jié)后續(xù)寫:安全部部長走進了會議室中,兩只手緊握在背后。

為模型精細調(diào)節(jié)提供標注(四選一)的人類標注員們也對訓練后的模型進行了評價。相比于僅僅完成了預(yù)訓練的 GPT-2 模型,他們認為精細調(diào)節(jié)后的模型在帶正面情感的續(xù)寫任務(wù)中有 88% 的情況都更好,在客觀描述的續(xù)寫任務(wù)中則有 86% 的情況表現(xiàn)更好。

文本總結(jié)

后一個文本總結(jié)任務(wù)也分為了兩個子任務(wù),CNN/Daily Mail 數(shù)據(jù)集上的報道文章總結(jié),以及 TL;DR(「太長,不看」)數(shù)據(jù)集上的 Reddit 討論的總結(jié)。

這兩個任務(wù)就更難一些了,OpenAI 的主模型訓練用到了六萬個四選一結(jié)果。而且他們還需要在線數(shù)據(jù)收集,也就是說隨著模型的總結(jié)策略變化,有所改變之后的模型要繼續(xù)用最新的策略生成新的結(jié)果供人類標注,整個過程是動態(tài)的、持續(xù)的,與強化學習類似。要采用這種方式的原因是,離線樣本收集中,所有的樣本都是最初的 GPT-2 模型生成的,人類標注員只能從這些質(zhì)量不高的樣本中選擇,所以模型的改進也非常有限。

據(jù)人類標注員們評價,這次的模型也有很好的表現(xiàn)。不過,由于人類標注員們很喜歡其中一個「復(fù)制文本前三句話作為總結(jié)」的基準模型的結(jié)果(雖然這個模型確實能在所有基準模型里排在前三位,但還是說明標注員們在偷懶),就導致這樣學習出的 GPT-2 模型也傾向于這樣做。不過,如果把標準的有監(jiān)督精細調(diào)節(jié)和人類在線標注精細調(diào)節(jié)相結(jié)合,模型的 ROUGE 分數(shù)就能排進前三位。

OpenAI 的研究人員們一共進行了四個模型的對比,原始預(yù)訓練 GPT-2(即無精細調(diào)節(jié))、人類標注、有監(jiān)督學習、有監(jiān)督學習+人類標注。對比的方面主要有新穎性(novelty)和準確性(accuracy)。

新穎性

如上面所述,人類標準訓練出的模型傾向于直接從文本開頭復(fù)制句子,所以這個模型的總結(jié)句子的新穎性是最低的。

不同模型結(jié)果的新穎性對比

人類標注精細調(diào)節(jié)出的模型復(fù)制文本的來源

有監(jiān)督學習+人類標注精細調(diào)節(jié)出的模型復(fù)制文本的來源

不過另外也需要說明,雖然原始預(yù)訓練 GPT-2 和有監(jiān)督學習的 GPT-2 模型輸出的文本中直接復(fù)制的痕跡最輕微(新穎性最高),但它們輸出的文本表達的內(nèi)容也新穎性最高 —— 也就是說它們的總結(jié)并不準確,這仍然不是我們希望看到的。

準確性

選擇 30 篇文章評價模型總結(jié)的準確性,得到的結(jié)果就是另一種樣子了。

毫無疑問,人類標注精細調(diào)節(jié)出的模型(那個直接復(fù)制的模型)準確性最高;其次是有監(jiān)督學習+人類標注的。我們至少有兩種方式解讀這個結(jié)果。第一種,直接復(fù)制是最容易的保證準確的方式。由于 OpenAI 的研究人員們對標注員提出的要求是準確性優(yōu)先,所以當模型因為直接復(fù)制而表現(xiàn)出了好的準確性的時候,這種行為就會得到鼓勵,模型就會越來越多地直接復(fù)制原句 —— 完全復(fù)制同時也意味著沒有額外的增刪信息,自然就比較準確。

不過這種解釋還不完整:這個精細調(diào)節(jié)出的模型和「復(fù)制文本前三句話作為總結(jié)」的基準模型都會被標注員看作是比較好的模型。但實際上這個結(jié)果并不 是 OpenAI 的研究人員們本來的打算,他們認為來自有標注數(shù)據(jù)集的那些有部分刪減、有重新表述的總結(jié)才是比較好的結(jié)果,他們希望模型以這些為樣本學習,也把這些樣本提供給了人類標注員作為參考。然而事情的發(fā)展和他們的預(yù)期并不相同:和任何時候一樣,收錢辦事的人類標注員都會找偷懶的辦法,為了盡快完成任務(wù),他們找到的又快又差不了多少的方式是「如果文本總結(jié)是直接復(fù)制的,那肯定是比較準確的」,跳過了仔細閱讀和重新總結(jié)的步驟,然后也就讓模型學會了這么做(真是令人無奈)。

吃一塹長一智

和以往一樣,OpenAI 的研究人員們也總結(jié)了這次實驗后的經(jīng)驗教訓。

一,在線收集數(shù)據(jù)很難

雖然實驗表明在線收集數(shù)據(jù)(隨時用最新的模型生成樣本供人類標注員選擇)帶來的模型表現(xiàn)是最好的,但這也帶來了許多麻煩:

軟件系統(tǒng)的復(fù)雜性。與模型更新交錯的數(shù)據(jù)收集過程、反饋模型訓練訓練過程、強化學習精細調(diào)節(jié)三件事分開做的時候各自都不難,但是要讓它們一起在同一個流程中運行就復(fù)雜得多了

機器學習的復(fù)雜性。任何一個機器學習組件如果出現(xiàn)了 bug 都會影響整個系統(tǒng)的正常工作,但是想單獨隔離 debug 其中的某個組件又很不好做

質(zhì)量控制問題。在線模型訓練一般需要較短的延遲,比如 OpenAI 在這個實驗中使用的在線數(shù)據(jù)標注平臺是 Scale.AI,它能提供的數(shù)據(jù)生成到返回標注反饋的時間延遲是大約 30 分鐘。但對于這樣的短延遲,標注的質(zhì)量控制很難做,標注數(shù)據(jù)的質(zhì)量往往會隨時間下降,而且往往直到訓練過程完成之后開發(fā)人員們才會發(fā)現(xiàn)這個問題。

OpenAI 的研究人員們思考以后認為,離線數(shù)據(jù)收集和在線數(shù)據(jù)收集之間的一個合理的平衡點是分批數(shù)據(jù)收集:集中收集一批數(shù)據(jù),然后訓練模型,用新模型再收集一批數(shù)據(jù),再用新數(shù)據(jù)訓練模型。這種做法當然有更高的延遲,但是數(shù)據(jù)質(zhì)量更高,而且這種方式下單條數(shù)據(jù)的標注成本也更低,OpenAI 甚至認為有機會從預(yù)訓練模型開始做更多組不同的實驗。

二,不明確的任務(wù)標準讓數(shù)據(jù)標注變得很困難

標注質(zhì)量控制并不是一個新問題,不過這次也有獨特之處:一個樣本是否單獨看來是準確的、符合語法的、不冗長的、包含了關(guān)鍵點的,對任何一個標注人員來說他都能以自己的標準給出判斷,但是要在兩個總結(jié)結(jié)果之間做對比選擇的話,長處短處之間的取舍就很難維持,更難在不同的標注人員之間保持一致了。事后看來,OpenAI 的研究人員們覺得可能還是重新設(shè)計一個能起到同樣的效果、但更明確量化的標注標準比較好。比如,把現(xiàn)在的對比選擇改成用文字表述其中的問題,也可以更進一步地為其中不準確的地方提出修改意見;也許不同的標注人員對于「哪個問題最嚴重」有分歧,但是「存在哪些問題」還是比較容易達成一致的,這還能起到一個附加的質(zhì)量控制效果,讓整個實驗過程更順利。(甚至還可以說,這種方式還能避免標注員們在選擇過程中偷懶)。

三,Bug 會鼓勵模型學習不好的行為

在文章一開始我們就提到,選擇樣本的過程相當于為模型的不同行為給予反饋,OpenAI 就設(shè)計了對應(yīng)的強化學習框架的反饋組件。但由于他們一開始的設(shè)計中存在一個 bug,會在觸發(fā)時反轉(zhuǎn)反饋信號的正負。通常情況下正負相反的反饋會導致模型輸出的文本不統(tǒng)一不連貫,但這個 bug 同時還會讓 KL 懲罰的正負也相反。最后的效果就是模型仍然保持了很高的自然語言輸出能力,但是在「帶正面情感的續(xù)寫」任務(wù)中輸出的句子反倒偏向負面情感。

同時還有一個意想不到的狀況是,OpenAI 給標注員的指導中要求他們給模型續(xù)寫的色情內(nèi)容打很低的分,由于 bug 的存在,這反倒鼓勵了模型多寫色情內(nèi)容。最后的效果實際上挺驚人的,模型的語言能力非常優(yōu)秀(并沒有胡言亂語),然后它能續(xù)寫出很精彩的「小黃文」(本來應(yīng)該是要懲罰的行為)。由于這次的訓練過程中 OpenAI 的研究人員們剛好在睡覺,所以當他們醒來的時候模型已經(jīng)訓練完畢了,他們面對這個模型的時候想必是哭笑不得的。

事后的教訓就是,他們認為應(yīng)該在模型訓練全過程中設(shè)計一個類似豐田工廠的報警拉繩的機制,參與訓練過程的任何一個標注員都可以在發(fā)現(xiàn)奇怪之處的時候進行報告并暫停訓練流程。

總結(jié)與展望

OpenAI 這次探索了在兩類自然語言任務(wù)中讓模型根據(jù)人類的偏好學習。得到的結(jié)果一面好一面壞:續(xù)寫任務(wù)里只收集了很少的樣本就達到了很好的效果,而文本總結(jié)任務(wù)里收集了很多的樣本卻只訓練出了精通復(fù)制粘貼的模型(好在它們會跳過不重要的詞句)。「復(fù)制粘貼」的好處是真實性高,相比之下未經(jīng)過精細調(diào)節(jié)的和直接使用有監(jiān)督數(shù)據(jù)訓練的模型輸出的結(jié)果雖然語言自然但是會有模型自己創(chuàng)作的信息。OpenAI 認為其中的限制因素來自在線數(shù)據(jù)收集過程的機制設(shè)計,未來的實驗中他們會嘗試分批數(shù)據(jù)收集。

OpenAI 相信語言學習中的根據(jù)反饋學習、根據(jù)人類偏好學習從模型表現(xiàn)的角度和模型安全性的角度都很重要。對于模型表現(xiàn)來說,強化學習的過程可以讓我們發(fā)現(xiàn)并糾正有監(jiān)督學習中發(fā)現(xiàn)不了的問題,只不過強化學習中的反饋機制設(shè)計也可能對模型帶來不好的影響。對于模型安全來說,反饋學習可以讓「避免模型造假」之類的重要指標得到體現(xiàn)并強化,也是向著可說理、可拓展的模型的重要一步。

更多技術(shù)信息歡迎閱讀論文原文 https://arxiv.org/abs/1909.08593

代碼開源地址 https://github.com/openai/lm-human-preferences

via openai.com/blog/fine-tuning-gpt-2/,雷鋒網(wǎng) AI 科技評論編譯

本文轉(zhuǎn)自雷鋒網(wǎng),如需轉(zhuǎn)載請至雷鋒網(wǎng)官網(wǎng)申請授權(quán)。

原文章地址為讓模型向人類學說話,連帶人類的惰性一起



關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉