ChatGPT作者John Schulman:我們成功的祕密武器

語言: CN / TW / HK

 

來源|TalkRL

OneFlow編譯
翻譯|楊婷、徐佳渝、賈川

 

除了OpenAI,外界可能很少有人知道ChatGPT模型成功的真正原因,實際上,OpenAI也會對ChatGPT擁有的巨大影響力感到不可思議 這種 困惑和驚喜 就像工程師們解bug時獲得的 意外成功 We don't know why, but it works.

 

一種普遍的看法是,ChatGPT沒有任何革命性技術,正如Meta 首席AI科學家Yann LeCun所説,“只是一些巧妙的技術組合而已”。當然,聽到這話的圍觀羣眾不免調侃LeCun這種同行評議是“吃不到葡萄説葡萄酸”,不過,從ChatGPT的締造者們後續的表態來看,恐怕也不會否認他的“酸話”。

 

早在2022年1月,OpenAI發佈了另一款GPT-3.5微調版本InstructGPT,這是ChatGPT的“兄弟模型”,如果用標準基準來評估它們的原始技術能力,兩個模型之間並沒有實質性不同。根據OpenAI科學家們的説法,ChatGPT用的微調方法稍有不同,並且添加了一些對話數據,這讓ChatGPT更易上手和易用,由此產生了很大的正面影響。

 

新增的對話數據固然重要,不過,讓ChatGPT更容易推斷出用户的意圖,產生質變的根本原因是已在InstructGPT使用的“人類反饋的強化學習(RLHF)”技術,OpenAI聯合創始人、研究科學家John Schulman認為,RLHF才是ChatGPT的祕密武器(secret sauce)。

 

簡單來説,強化學習是讓研究者像訓練狗一樣訓練AI智能體,併為其做出的正確響應提供獎勵,而RLHF的基本思路是,教會大型語言模型學習人類用户真正喜歡的回答偏好來進一步調整模型的響應。

 

RLHF技術背後的其中一個作者正是John Schulman,很多人不知道的是,他也是ChatGPT項目的主要負責人。

 

作為強化學習大牛,John在這一領域作出過許多重大貢獻,例如發明了TRPO算法(信賴域策略優化,Trust Region Policy Optimization)、GAE(廣義優勢估計,Generalized Advantage Estimation)以及TRPO的後代近端策略優化( Proximal Policy Optimization),也稱PPO算法。值得一提的是,其博士導師是強化學習領域的開拓者Pieter Abbeel,並且也在OpenAI創立初期工作過一段時間。

 

在ChatGPT發佈前一個月,John Schulman在Robin Ranjit Singh Chauhan主持的TalkRL播客節目中,詳細介紹了RLHF想法的產生源頭,InstructGPT以WebGPT的主要思想,並闡述了AI對齊以及對AGI實現的看法。從中,我們也可以看到ChatGPT技術演進的脈絡和不曾在論文中被描述的細節,以及OpenAI團隊的下一步研究方向。

 

(以下內容經授權後由OneFlow編譯發佈,譯文轉載請聯繫OneFlow獲得授權。來源:https://www.talkrl.com/episodes/john-schulman)

 

 

1

為什麼要關注RLHF

 

Robin Chauhan:作為深度強化學習的早期開拓者之一,你為什麼去關注“人類反饋的強化學習(RLHF)”?

 

John Schulman: GPT-3訓練完成後,它的智能程度讓我十分吃驚。我意識到AI領域的下一個前沿在於真正發揮語言模型的作用。我仍然對RL非常感興趣,但解決RL基準測試並不是我們的最終目的。

 

要使用RL算法,必須通過獎勵函數,但是獎勵函數從何而來?在RL基準測試中,我們可以自己編寫獎勵函數,但這種方法必須要在模擬環境(simulator environment)中才行得通。所以在現實世界用例中,我們必須要人工監督AI的行為,以分辨好壞。所以如何定義獎勵是一件極具挑戰性且至關重要的問題,尤其是在任務評估難度逐漸加深的情況下。

 

另一方面,雖然現在語言模型非常聰明,但卻難以將它們用在有價值的事情上。因為它們不會按照我們的意願去工作,只是在單純地模仿訓練語料庫,但這也説明只要給語言模型一個正確的目標,它們就很有可能改進上述問題,也就是説,我們可以在語言模型中應用強化學習,使用人類反饋去定義獎勵。

 

Robin Chauhan:相比合成獎勵(synthetic reward),人工反饋是否更難,或者説這兩者之間在一定程度上大有不同?

 

John Schulman: 使用人工反饋會遇到很多新問題。現在,我們必須要動態收集數據集,所以要花很多時間去建立人類偏好的數據集,相比各種算法細節,數據集的質量更加重要。另外我們還要考慮如何將任務分配給人工訓練師等問題,如果有程序化的獎勵函數,這些問題我們本不用考慮。

 

Robin Chauhan:人工評分員之間的差異或獎勵信號的噪音是否會造成問題?

 

John Schulman: 實際上,噪音並不是我最擔心的問題,比較而言,我更擔心人們的慣有偏見。例如,在問題回答或模型編寫文本等設置中,人們通常更偏向於較長的答案,這會導致模型給出的答案日漸宂長。所以我們要注意指導人工評分員,讓他們獎勵簡潔的答案,如果對這一問題不加註意,可能會激勵模型的錯誤行為。

 

2

 

用RLHF實現指令跟隨模型InstructGPT

 

Robin Chauhan:2022年3月,你與Long Ouyang、Jeff Wu等人發表了論文《Training language models to follow instructions with human feedback》,你能簡要介紹下InstructGPT的主要思想嗎?

 

John Schulman: InstructGPT是一種經過微調以遵循指令的語言模型。OpenAI的官網上有一個大文本框,在文本框中輸入內容後點擊提交就可以完成一個指令。語言模型非常有用,只需輸入提示詞就可以使其來完成自己想做的事情。

 

比如你可以先在文本框中輸入問答示例,然後你提出另外一個問題,InstructGPT就可以相同的方式予以回答,人們可以讓語言模型通過提示來做一些很棒的事情。但“提示”本身也是一門藝術,很難做到準確無誤,模型也不一定能完美識別提示的內涵。如果你只是採用原始模型與之對話,那麼你得到的答案可能就有點不盡如人意了。

 

通過InstructGPT,我們發現要對語言模型進行一些小的改動,就可以使它們更容易使用。具體來説,我們要對它們進行訓練,以便當你的一段文本包含指令時,模型可以盡力按照指令進行操作。幾乎任何東西都可以作為指令。例如,指令可以是繼續聊天,對這段文本進行總結,或者是提供一份銷售某個小部件公司的名單。

 

這就是指令跟隨模型(instruction following model),可以執行任何你給定的指令。不過我並不是這項工作的核心貢獻者,我主要參與了強化學習基礎設施和完成強化學習的訓練細節。

 

在這個項目中我們所做的就是:在指令跟隨設置中運行了RLHF中的整套方法論。所以我們進行了有監督微調(supervised fine tuning),收集偏好數據,訓練了一個獎勵模型(reward model),然後根據該獎勵模型進行了強化學習。

 

在訓練之初,我們使用的數據是由外包商收集的。但後來我們有了API和官網上的Playground(一個大文本框,可以在其中使用模型),我們就使用在Playground中收集到的指令來進行訓練(用户在使用之時就會收到提示:你的指令可能會用於訓練)。這樣既可以收集偏好數據,又可以進行強化學習。同時需要注意:訓練時不能存儲prompt中的任何信息。我們有一套相當複雜的流程來確保沒有私人信息泄露到模型中。

 

結果表明,這種方法非常有效。原始的語言模型通常很難按照指令執行。但是,通過強化學習訓練後的指令跟隨模型要好得多。如果僅從改進程度來看,那麼幾乎能媲美比這大100倍的模型。這是相當大的一個進步。

 

Robin Chauhan:看來你想要得到可信任的模型,這是你的標準之一嗎?

 

John Schulman: 對於一個大型語言模型來説,真實性是重要標準之一。但是,這個模型是如何通過示例學習真實性的?難道真實性在模型內部被表示了嗎?因為模型沒有外部參考來確認某些東西是真實的還是虛假的,那麼它如何知道什麼是真實的?

 

某種程度上,模型內部是有真實性表示的。 我們可以將語言模型看作是對整個互聯網的模仿,而互聯網是由許多不同的人編寫的,包含各種類型的內容,從小説到非小説,到技術文獻、笑話以及論壇帖子等。因此,該模型實際上是由所有這些編寫內容的人組成的“合奏團”。

 

當我們輸入一個prompt時,模型在內部必須要做的就是確定prompt是由誰編寫的,並試圖以該風格繼續生成文本。 比如,如果它認為正在閲讀的內容是華爾街交易論壇上的東西,那麼就繼續以這種風格生成文本。但是如果它認為正在閲讀紐約時報的內容,它又會以不同的方式寫作。

 

因此,模型必須在某個地方進行計算,例如計算當前的風格是什麼,或者正在模仿哪種較為小眾的風格集合。至少,在進行監督微調或完全基於人類反饋的訓練時,我們可以縮小模型生成的文本風格範圍,嘗試模仿訓練集中最好的人或最好的風格。

 

當然,“最好”會有很大的差異,最終得到的內容將取決於我們的指令。如果我們要求模型生成內容時不要太過於有爭議,又要“企業化(corporate)”一點,那麼生成的內容也就是這樣。因此,我們至少可以將模型限定到一個特定的風格,而不是互聯網上所有的風格。

 

但我認為,這裏面可能還有更多的內容。模型不僅僅是在學習文本風格,模型內部可能還在試圖確定一些語句是否正確。當然,我上面所説的是關於原始預訓練模型。我認為“預測下一個token”的目標會為我們提供很多信息,這將迫使模型確定語句是否正確。

 

對於強化學習微調而言,我認為還會賦予模型更多的潛力去生成可信任的東西,而不是僅僅模仿某種風格,但現在還很難確定模型是否在這樣做。現在還是prompt在引導着模型去獲取互聯網上那些我們想要的東西,模仿我們想模仿的內容。而我們想使InstructGPT更多地關注互聯網上那些更可信任的東西。

 

 

 

3

語言模型的泛化能力

 

Robin Chauhan:無論如何,我們應該模仿出互聯網上最真實的一面。你能否談一下泛化,以及這種模型在分佈外(out of distribution)的表現如何?

 

John Schulman: 總的來説,語言模型整體上具有驚人的泛化能力。我認為,像這些在互聯網上受過多元化數據訓練的預訓練模型,它們通常泛化得相當好。至少對於那些在機器學習早期就接觸過這些技術的人來説,這很令人驚訝。例如,即使是用其他語言,甚至是一種相對罕見的語言提供指令,模型通常也能夠很好地遵循,即使整個訓練過程中沒有任何數據是用該語言編寫的指令。這就是從預訓練中延續下來的能力。

 

這實際是一個關於獎勵模型的問題,舉個例子:如果問題有點不同於它所接受的訓練,比如在獎勵模型的訓練數據中稍微偏離一點,那麼會發生什麼呢?

 

我認為,RLHF的一個棘手問題是:對獎勵模型進行訓練時,也就是在訓練policy以獲得高獎勵,意味着這會利用獎勵模型中的錯誤。它最終會找到針對獎勵模型的對抗示例,但這比正常的分佈外行為(out of distribution behavior)更糟糕。因此,在將獎勵模型儘可能地泛化到訓練集之外確實存在一些挑戰。

 

當這些類型的Agent遇到某些難題時會提醒它不知道嗎?我認為,如果你問一個模型知識核心的問題,它會知道答案,而且它也知道自己知道答案(這裏指的是Instruct類的模型)。但如果你問它關於其知識邊緣的問題,那可能回答起來會有困難,必然會出現不準確的情況。有幾篇論文還討論過這個問題,比如Anthropic發表的Language Models, mostly know what they know,OpenAI發表的Teaching Models to Express Their Uncertainty in Words。這些語言模型以及機器學習中許多其他模型都是為了最大化可能性而進行訓練的。

 

鑑於已經訓練過Agent始終預測輸出的分佈(distribution of outputs),因此,對於語言模型,只要給定前綴,它就會預測下一個token的分佈,而且通常預測的相當準確。如果它在預測某項任務有80%的概率,而且每次都是80%,那麼它的正確率就為80%。

 

這只是訓練目標的結果。訓練目標鼓勵對模型進行校準,這是因為模型校準可以提高不確定性估計的準確性。

 

因此,對於單個token級別,模型肯定經過校準。問題是,模型校準是否準確?校準後的模型是否能應用於多個token輸出的情境中?又或是它們是否可以判斷多個token語句的正確性?

 

因為模型通過單個token級別進行校準,所以我認為它們在不同環境中需要校準的信息確實不同。這就是我認為模型不難準確表達出校準信息的原因,或者至少讓模型像人一樣很好地表達不確定信息,這個問題也並非無法解決,但在實踐中,需要解決一些實際的困難。

 

 

 

4

AI對齊工作進入第二階段

 

Robin Chauhan:人們對於“AI對齊( AI alignment)”有不同的理解方式,你如何看待RLHF方面的對齊工作?

 

John Schulman: 在我看來,AI對齊的主要目標是讓模型通過訓練知道人類的意圖,並在執行任務時做出符合人類期望的行為。因此,我們需要分辨模型的能力。例如,當我們給一個原始語言模型提出一個問題時,它可能並不知道我們希望它給出一個完美的答案。相反,它可能會假設我們只是希望得到一個符合語法和語義規則的回答。

 

Robin Chauhan:OpenAI的一篇博客討論了對齊序列(sequence in alignment),一共包括三個階段:第一階段是使用人類反饋訓練AI系統,第二階段是訓練AI系統協助人類反饋,第三階段是訓練AI系統進行對齊研究。所以你目前的工作主要是使用人類反饋訓練AI系統,那何時以及如何才能進入其他階段?

 

John Schulman: 我現在正在做第二階段的工作,即訓練AI系統以協助人類反饋。當我們開始嘗試讓系統解決更具挑戰性的問題時,第二階段的工作就變得越來越重要。當模型的性能遠低於人類水平或在某些任務上達到人類水平時,監督它們非常容易。但是,當模型處理的任務非常困難,需要大量不同的技術知識時,就很難提供有效的監督信號。

 

為了解決這個問題,我們可以採取一些措施,比如利用兩個模型:針對某個問題,一個模型給出相應的答案,然後另一個模型對該答案提出批評意見,指出不足之處。這樣,人們在看完批評意見後,就只需要判斷答案是否正確,批評有助於人類更準確地評估答案。這一想法十分重要,我和同事們正在探索。此外,OpenAI也正在做一些工作來協助對齊研究,不過完成這項工作任重而道遠。

 

Robin Chauhan:Stuart Russell是OpenAI博士委員會的成員之一,我非常喜歡他的《人類兼容性(Human Compatible)》一書。他指出,標準強化學習框架通常是基於固定獎勵信號的,而這種框架存在一定的問題。針對該問題,我們需要培養強大的Agent,使其嘗試做我們想做的事情,同時對我們的意圖保持一種懷疑態度,因為確定的Agent會存在一定問題。你如何看待這一觀點?

 

John Schulman: 我完全贊同Stuart Russell的觀點。首先,編寫一個簡單的獎勵函數來捕捉我們的意圖是非常困難的。我們希望Agent能夠理解我們的意圖,並以最好的方式來實現這些意圖,而不是盲目地追求某些極端的結果。

 

在構建Agent時,我們應該確保它們保持一種懷疑態度,以便更好地理解我們的意圖和目標。這也可以幫助Agent更加謹慎地採取行動,以確保它們在實現目標的同時也考慮到其他重要的因素。

 

Stuart Russell提出了一個很好的問題定義,即讓AI與人類共同玩一個遊戲,該遊戲的目標是讓AI嘗試理解人類的意圖,並採取行動嘗試滿足這一意圖,同時保持一定的懷疑態度。

 

我認為,如果我們開始思考如何將Russell所描述的目標應用到實踐中,就會發現實際上這與OpenAI以及其他組織正在進行的RLHF研究非常相似。我們正在努力實現這一目標。

 

5

 

WebGPT的想法從何而來

 

Robin Chauhan:2021年,你和Nakano等人共同發表論文《WebGPT:基於人類反饋的瀏覽器輔助問答》,能解釋下WebGPT主要想解決的問題嗎?

 

John Schulman: 在WebGPT中,我們將語言模型與網絡瀏覽器相連,以便從網絡中檢索信息。這些語言模型可以通過總結網絡上的相關信息來寫答案,這樣一來,如果你對時事熱點提問,或者詢問一些需要詳細科學或技術知識的問題,AI就可以在網絡上查找答案,並詳細引用其來源。

 

在文中,我們主要探討了兩個問題。首先,我們曾試圖將語言模型變成一種Agent,人們在網絡上編寫了很多不同類型的文本數據,但關於如何實際執行多步驟過程的數據卻很少,因此,我們不確定語言模型是否可以實際執行某些迭代過程,我們有很多數據,但這些數據基本上都和寫論文、聊天等相關,這是我們在論文中探討的第一個問題。

 

對於這個問題,我認為答案是肯定的。在這種情況下,我們可以讓Agent使用我們提供的工具,比如説搜索、滾動、單擊鏈接等瀏覽命令。

 

其次,我們還探討了信息的真實性問題,這是語言模型面臨的一大難題。 雖然語言模型掌握着海量知識,但如果我們向模型中輸入錯誤的提示,它們可能會輸出很多似是而非的廢話。在語言模型領域,如何解決這一問題很值得研究,問題的解決與否也關係着語言模型的發展。

 

這個問題很有挑戰性,最重要的是,我們要讓模型檢索、編寫帶有引用的答案,同時要確保引用來源的可信度。這樣人們就不必再花時間去尋找模型答案的來源,他們可以直接點擊引用鏈接,查看模型答案是否可信。

 

在WebGPT中,我們試圖弄清楚如果我們確實給語言模型提供了靈活的Web界面,它能否在引用的幫助下如實回答問題,搞清楚這一點非常重要。人們搜索的問題五花八門,這些問題可能與科學、歷史、時事等相關,人工評分員不一定具備這些問題的相關知識,但他們需要判斷細節信息,如果沒有引用,這就會成為一件難事。所以,在一定程度上,我們證明了在引用的幫助下可以在艱深領域內獲得良好反饋。

 

 

Robin Chauhan:WebGPT的想法從何而來?是深思熟慮之後的結果,還是在論文發表前突然冒出來的?結果怎麼樣?

 

John Schulman: 這個想法其實由來已久。很久以前,我們在OpenAI有一個叫作World of Bits的項目(譯者注:OpenAI Universe項目的前身)。在那時,我們想要控制Web瀏覽器來執行涉及互聯網的任務,不過當時還為時過早,所以這個想法擱置了幾年。

 

我們嘗試過完整的視覺輸入,那時的想法是給Agent輸入類似“找出大樓地址”等指示,然後Agent會通過Web、谷歌地圖等方法尋找答案,當時我們試圖以像素的方式來完成這一切,但顯然這種方式並不好,現在我們可以用大型語言模型來處理這些文本信息。

 

我們可以從網頁中提取文本以獲取大部分信息,但暫時還不能與動態網站進行真正地交互,因為這些網站中有大量JavaScript和圖片等內容,除了這些內容之外,我們可以很順暢地瀏覽和閲讀文本。因為我們的模型足夠好,所以重新考慮將互聯網作為環境來使用。

 

另一個動機是,在開始使用GPT-3進行嘗試之後,我們注意到它在事實準確性和提供的信息可靠性方面存在問題。因此,我們又開始研究如何使語言模型更具真實性。我們先進行了頭腦風暴,最終決定嘗試使用網絡進行問答,查找網絡上的知識來協助回答問題。

 

該項目的原始版本實際上使用了一些常見的問答數據集,例如Trivia QA(其中包含一些基本的常識問題)。我們在該數據集上進行了一些嘗試,試圖通過給模型提供網絡搜索來提高模型的準確性。工作開展得很順利,所以我們又轉向了長篇問答,使該項目的工作更進一步。

 

Robin Ranjit:看起來WebGPT想讓語言模型能訪問外部知識。問題是,你認為哪些東西是語言模型可以知道或者允許搜索到的?哪些東西又不能讓語言模型訪問?這之間有明確的界限嗎?

 

John Schulman: 有人提倡使用只包含語言的小型模型,我認為這種立場有點極端;還有人建議允許使語言模型知道一切東西,但不能授權其獲得外部知識的途徑。我認為,很難將知識、事實性知識與理解區分開來。人類記不住所有東西,但在需要用到某項知識時,我們可以去查詢。

 

對於特定領域的工作者來説,進行事實內化是很有用的,這樣可以在需要用時快速調用,並在腦海中將其進行組合。

 

所以這兩種説法我都不贊同,我認為,檢索至少對當前事務很有用,而且我們也沒想過要使神經網絡涵蓋人類所有的知識。

 

另一方面,人類很幸運,已經擴大了模型。隨着吸收的事實知識越來越多,模型在推理和其他事情上也會做得越來越好。截止目前,我還沒有看到任何微型模型可以做大量檢索並保存所有權重以進行推理。

 

6

 

行為克隆、獎勵模型、強化學習和拒絕採樣

 

Robin Chauhan:在這個項目中,你好像使用了多個不同的數據集和不同的訓練方法,包括行為克隆(behavior cloning)、獎勵模型(reward modeling)、強化學習(reinforcement learning)和拒絕採樣(rejection sampling)。

 

John Schulman: 我們使用的是一種相當標準的方法,該方法實際上是從以前的RLHF工作中改編而來的。具體流程是,首先使用監督學習來訓練一個模型,在這個過程中,人類演示者展示如何完成任務,例如如何從觀察映射到動作。這個過程就是所謂的監督學習或者行為克隆。

 

接下來,我們就會訓練一個獎勵模型或偏好模型。它會比較兩個動作或兩條軌跡,然後決定哪一個更好。在問答的情境下,我們會比較兩個答案並判斷哪一個更好。我們使用這個模型來訓練一個獎勵模型,該模型會給回答打分,回答的好,分就高,反之則低。

 

然後我們根據這個獎勵函數進行強化學習。當然,在進行少量的強化學習之後,你可以迭代執行最後兩個步驟。如此一來,就可以利用獎勵模型中的一些缺陷或噪聲。如果新數據分佈不準確,就需要重新收集更多的樣本對,並重新擬合這個偏好模型。然後再進行一輪強化學習。這就是完整的RLHF的流水線。

 

另外還有一個叫做拒絕採樣或者最優端採樣(best of end sampling)的想法。一般來説,你也可以進行其他類型的搜索。當有了獎勵模型後,你可以對一堆樣本進行重新排序,並選擇最好的做法。

 

Robin Chauhan:這有點像MPC(Model Predictive Control,模型預測控制)?

 

John Schulman: 是的。這取決於我們所處的環境以及所做的事情。如果處於交互式環境中,就必須模擬環境動態,這一點和MPC很像。在我們的案例中,唯一需要學習的模型是人類偏好。比如在問答環境中,我們可以輕易地對一堆操作(actions)進行採樣,其中每個操作都是一個完整的答案,並且可以將它們重新排名或搜索答案。

 

Robin Chauhan:就動作空間(action space)而言,它是否只是命令列表?還是説它仍然像常規生成模型一樣生成tokens?

 

John Schulman: 我們正在生成tokens。在我們的RL任務中,每一回合都有兩個階段。首先是瀏覽階段,模型會搜索、點擊並引用相關信息。比如模型在網頁上看到了有用的信息,就會使用quote命令對信息進行引用。

 

瀏覽完成後,模型會發出結束瀏覽的命令,這都會用token來表示。但是,我們將這個過程整合到了大的RL任務中,一個大的回合(episode)包含了瀏覽網頁和給出答案兩個階段。

 

Robin Chauhan:這種方法的效果如何?

 

John Schulman: 最開始我們不知道它是否會成功。在我們用Trivia QA做了最初的實驗後,很快就開始運行了,很明顯瀏覽部分起了作用,另外如果給模型一些可以引用的文本片段,它們就可以生成優質的長文本。

 

7

 

為什麼不能使用外部反饋

 

Robin Chauhan:人工評分員的任務非常複雜,有很長的評分指南和多種類型的反饋。但是論文最後表示只有最終評級才有用。我想知道為什麼模型不能使用外部反饋,是因為外部反饋太多了還是因為樣本不夠?

 

John Schulman: 是的,這一發現確實讓人沮喪。在對比一組答案時,評分員的每次對比都要經歷一個很長的過程,但是我們只會用到整個過程中的小部分信息,而這一小部分信息的對比時間可能長達半小時左右。

 

如果我們能提取出更多信息,瞭解更多他們得出答案的過程,那麼可能會更好一點。所以我們收集了各種其他信息,比如不同維度給出的評分、連貫性和事實準確性等。

 

因此,我覺得應該還能做得更好。但不幸的是,這種看似有點愚蠢的方法其實很難超越。人們已經嘗試了各種辦法,比如以人類反饋來代替偏好分數。此外還有其他的事情可以做,比如可以讓模型進行批判性寫作或編輯回答。

 

Robin Ranjit:是的,我認為其中一些事情也有可能實現,而且這種收集偏好數據的方法很有效。

 

John Schulman: 是的,我認為這仍然是一個開放的研究領域。

 

Robin Ranjit:再談談那些宂長的指令吧。

 

John Schulman: 在完成任何任務時,都需要遵循許多微妙的規則和細節。因此,在編寫指南時,我們不斷添加了更多細節,比如你在這種情況下會做什麼?在另一種情況下又會怎麼做?然而,隨着細節的不斷增加,這些指令變得非常宂長。

 

不過,這個問題還是有辦法解決。DeepMind發表了相關文章,使用Sparrow將任務分解成更小的部分並進行訓練,人們一次只關注一個部分,以便更好地理解和掌握每個部分的細節和規則。此外,研究者還訓練了多個規則,特定的獎勵模型,以更好地捕捉任務的不同方面和細節,並在最後進行合併。

 

8

 

強化學習與AGI的未來

 

Robin Chauhan:自從你發佈TRPO和PPO算法以來,強化學習領域取得了哪些重要的進展?

 

John Schulman: 在PPO算法之後,出現了基於價值的TD3和SAC算法,這些算法都表現出了相當高的可靠性。MuZero和Efficient Zero是有效的強化學習算法,Efficient Zero的樣本效率表現令人印象深刻,它能夠在使用更少樣本的情況下達到很好的效果。這些算法可能在一些簡單的任務(toy task)或基準測試中表現較好,也開始被應用到一些實際問題中,這是非常有意思的。

 

近來,離線強化學習(offline RL)備受關注。我認為,RLHF就是一種離線強化學習。因為在訓練過程中,它使用的是預先收集的數據集和獎勵模型數據集,而無需實時與環境進行交互。

 

Robin Chauhan:RLHF和傳統的離線強化學習算法確實有些相似,但是其方法和技術有所不同。傳統的離線強化學習算法通常使用Off-policy算法,而基於RLHF算法通常使用On-policy算法和一種獎勵模型。這些差異是否影響了正在執行的任務?

 

John Schulman: 我們正在做一項類似基於模型的強化學習(model-based RL)的任務 ,而獎勵模型就是對系統的未知部分的建模。 我們需要考慮到人類因素的影響,而不是僅僅關注機器的輸出結果。

 

這項任務也類似於使用環境的動力學模型(dynamics model of the environment),並運行一些策略評估算法(policy grading algorithm)來評估模型的效果。雖然對抗機器學習模型的在線算法已經是一種成熟的想法,但之前的研究所處的情境與現在已經大不同。現在我們可以利用訓練好的預訓練模型,只需進行一些小幅度的策略更新即可實現目標,而不必進行大規模的模型更改。因此,我們採用了這些在線算法,這也與我們一直在研究上下文賭博機(contextual bandit)的問題有關。

 

由於只有一個時間步,例如,收到一個查詢並輸出一個響應,然後該響應會獲得獎勵。因此,在多步驟(multi-step)過程中,不能立即獲得獎勵分配。對話就是一個例子,其中涉及到多個步驟,不能在每個步驟中對其進行獎勵分配。相反,必須在對話結束後才能分配獎勵。

 

另外,當模型與一些難以模擬的真實世界系統進行交互時,不能完全使用相同的方法來解決問題。為了提高方法的採樣效率,可能需要採用一些略有不同的方法。例如,可以訓練一個Q函數或類似的函數來解決問題。

 

我們即將開始探索上述問題。然而,到目前為止,在我所關注的領域中,尚未發現需要採用該方法的情況。但據我估計,這種方法在未來會變得十分重要。

 

Robin Chauhan:AGI、RL及大型語言模型之間的關係是什麼?它們又是如何相互配合的?

 

John Schulman: 強化學習(RL)是訓練人工通用智能(AGI)關鍵方法之一,它可以用來優化Agent的行為,以達到某種目標。在強化學習中,任何目標通常被視為Agent行為函數的一部分。與語言模型預訓練類似,強化學習也需要選擇一個目標並利用大量的訓練數據(如互聯網文本)來優化Agent的行為。

 

此外,我們會選擇最大似然目標函數(maximum likelihood objective)來作為Agent的訓練目標,雖然還有其他的目標函數可供選擇,但最大似然目標函數是明智之選。如果真的想通過優化Agent行為以達到特定目標,那麼強化學習是最適合的框架。

 

Robin Chauhan:AGI是一種抽象目標嗎?還是説我們有望在某一天看到AGI模型問世?模型問世之時,人們會驚歎,“這是首個AGI模型”。那麼,人們對該模型的評價又會如何?

 

John Schulman: 我認為當AGI真正問世的時候,經過多次試用,人們會意識到它並非完全符合我們的預期。雖然我們可能會看到很多模型在某些領域或某類任務上超越人類,但它們仍然存在一些失效模式和弱點。例如,可能會出現多個自稱AGI的模型,但只有在與其交互一段時間後,人們才會發現它們無法完全達到AGI的水平。

 

Robin Chauhan:據你估計,AGI還有多久問世?

 

John Schulman: 距AGI的問世不會太遙遠,不過過程中肯定會出現許多誤判。預計在未來的五年時間裏,AI能夠在大多數人類目前從事的工作上表現得比人類更好。當然,並非所有工作都會被AI取代,人類仍然會在某些領域享有控制權。因此,在未來的10到15年中,我們會見證AI逐步推進的整個過程。

 

相關參考鏈接

 

1. https://www-technologyreview-com.cdn.ampproject.org/c/s/www.technologyreview.com/2023/03/03/1069311/inside-story-oral-history-how-chatgpt-built-openai/amp/

2. WebGP T: https://arxiv.org/abs/2112.09332

3. Instruct GPT: https://arxiv.org/abs/2203.02155

4. Our approach to alignment research , OpenAI 2022

5.  Training Verifiers to Solve Math Word Problems , Cobbe et al 2021

6. UC Berkeley Deep RL Bootcamp Lecture 6: Nuts and Bolts of Deep RL Experimentation , John Schulman 2017

7. Proximal Policy Optimization Algorithms , Schulman 2017

8. Optimizing Expectations: From Deep Reinforcement Learning to Stochastic Computation Graphs , Schulman 2016

 

 

其他人都在看

歡迎Star、試用OneFlow新版本:https://github.com/Oneflow-Inc/oneflow/

 


 

本文分享自微信公眾號 - OneFlow(OneFlowTechnology)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閲讀的你也加入,一起分享。