強化微調可以輕松創(chuàng)建具備強大推理能力的專家模型。
昨天關于 o1 和 200 美元一個月的 o1-pro 的新聞已經消化完了嗎?咱們該夸夸,該吐嘈就吐嘈,但也不得不說,OpenAI 是懂營銷宣傳的,至少這個 12 天連續(xù)發(fā)布的策略著實是賺足了眼球。?
現在,OpenAI 的 12 天計劃進入了第 2 天。凌晨兩點,我們迎來了一個開發(fā)者和研究者更感興趣的產品:Reinforcement Fine-Tuning,即強化微調。
今天參與發(fā)布的四人組是 OpenAI 研究副總裁 Mark Chen、OpenAI 技術員 John Allard 和 Julie Wang、Berkeley Lab 的環(huán)境基因組學和系統生物學研究者 Justin Reese。
Mark Chen 首先表示,今天發(fā)布的強化微調「允許你將你的黃金數據集轉化為獨特的產品,這將能讓你將我們具有的神奇能力提供給你自己的用戶和客戶?!沟?font cms-style="font-L">實際上要到明年才會真正公開推出。
OpenAI 微調團隊 Steven Heidel 也在 X 上給出了一句話總結:
什么是強化微調?
去年,OpenAI 就已經為自家產品推出了監(jiān)督式微調 API。簡單來說,監(jiān)督式微調要做的是讓模型模仿它在輸入文本或圖像中找到的特征。這種強大的技術可用于修改模型的語氣、樣式或響應格式等等。
強化微調(RFT)則是一種更進一步模型定制技術,可讓開發(fā)者使用強化學習針對具體任務對模型進行進一步的微調,并根據提供的參考答案對模型的響應進行評分。
也就是說,強化微調不僅會教模型模仿其輸入,更是會讓其學會在特定領域以新的方式進行推理。
具體來說,當模型發(fā)現問題時,要為它提供思考問題的空間,然后再對模型給出的響應進行打分。之后,利用強化學習的力量,可以強化模型得到正確答案的思維方式并抑制導向錯誤答案的思維方式。John Allard 表示:「只需幾十個例子,模型就能學會在自定義領域以新的有效方式進行推理。」看起來,這種技術既能提高其在該領域特定任務上的準確性,還能增強模型對類似問題的推理能力。
Allard 還指出,OpenAI 內部在訓練 GPT-4o 和 o1 系列模型時也使用了同樣的技術。
Julie Wang 表示:「開發(fā)者、研究人員和機器學習工程師將能夠使用強化學習來創(chuàng)建能夠在其領域內擅長其特定任務的專家模型。我們相信,任何需要在 AI 模型方面擁有深厚專業(yè)知識的領域都能受益,比如法律、金融、工程、保險。」她舉了個例子,OpenAI 最近與湯森路透合作,使用強化微調來微調 o1-mini,從而得到了好用的 AI 法律助理,能幫助他們的法律專業(yè)人員完成一些「最具分析性的工作流程」。
伯克利實驗室的 Justin Reese 也談到了強化微調對自己在罕見疾病方面的研究的幫助。他表示,罕見疾病其實并不罕見 —— 全球患有不同罕見疾病的人總數可達到 3 億人;而罕見疾病患者在確診之前往往需要數月乃至數年的漫長診斷過程。因為為了診斷出這些疾病,既需要醫(yī)學專業(yè)知識,還必須基于生物醫(yī)學數據進行系統性推理。而 o1 加上強化微調就能滿足這樣的需求。
如何實現強化微調?
OpenAI 通過一個根據癥狀推理預測可能基因的示例展現了強化微調的巨大潛力 —— 這實際上也正是伯克利實驗室與 OpenAI 的合作項目之一。結果發(fā)現,使用強化微調后,模型規(guī)模更小的 o1-mini 的表現可超過性能更加強勁的 o1。
下面將基于具體示例介紹如何實現強化微調。
首先來看訓練數據集。具體來說,這里的數據集是一個 .jsonl 文件,其中每一行都是一個訓練樣本。在這個示例中,數據集中包含 11 個樣本。
下面展示了一個具體數據樣本??梢钥吹狡渲邪棧翰±龍蟾妫ò拘畔?、癥狀以及沒有的癥狀)、指令和正確答案。
在強化微調的訓練過程中,模型并不能看到正確答案。在給模型提供病例報告和指令之后,模型會輸出如上圖底部所示的響應 —— 一個基因列表,其中排在第一位的基因是模型認為最可能的基因,以此類推。
接下來,還需要上傳一個驗證數據集。驗證數據與訓練數據的格式完全一樣,但內容沒有重疊。這樣才能驗證模型能否在該任務上進行泛化,而不僅僅是記住了訓練數據。
在訓練過程中,強化微調的「強化」部分就體現在評分器(Grader)的使用上。其設計思路很簡單,評分器會比較模型輸出與正確答案,然后返回一個 0 到 1 之間的分數。0 表示模型的輸出中不包含正確答案,而 1 表示正確答案在輸出的第一個位置。如下圖所示,正確答案在第 2 個位置,評分器給出了 0.7 的分數。
當然,有些任務的輸出結果并不是列表形式,因此 OpenAI 也提供了其它評分器,可以「相當有效地覆蓋你可能擁有的意圖的空間」。并且他們也在不斷增加更多評分器,未來也會支持用戶自己定制的評分器。
配置好評分器之后,用戶還可以選擇調整模型種子和一些超參數,包括批量大小、學習率乘數、epoch 數量。
接下來,點擊 Create,再等待一段時間,用戶就能得到經過強化微調的定制模型。Allard 表示,根據具體任務的不同,這個訓練過程可能需要數小時到數天時間。
接下來,他演示了一個之前已經微調好的模型,以下截圖展示了該模型的相關信息,可以看到基礎模型是 o1-mini,經過強化微調后會得到一個輸出模型。
同一個頁面中還能看到模型在驗證數據集上的分數變化情況。
那么,這個經過強化微調的 o1-mini 的表現究竟如何呢?評估結果表明,在 top@1(正確答案在列表第 1 個位置的概率)、top@5(正確答案在列表前 5 個位置的概率)和 top@max(輸出中包含正確答案的概率)指標上,其表現都明顯勝過性能更加強大的最新版 o1。
下面展示了一些運行過程示例:
當然,強化微調是一種通用技術。理論上,只要有合適的數據集和評估器,你就能將 o1 訓練成你的專業(yè) AI 助手。
目前,OpenAI 僅支持強化微調的 Alpha 測試申請,并且名額有限,「非常適合正在與專家團隊一起處理非常復雜任務的組織」,個人用戶至少得等到明年了。如果你有需求,可以在這里嘗試申請:
https://openai.com/form/rft-research-program/
同樣,今天的發(fā)布也在一個圣誕笑話中收尾:
圣誕老人正在努力制造一輛自動駕駛雪橇,但由于某種原因,他的模型一直無法識別樹木,導致雪橇老是撞樹。你猜原因是什么?
因為他沒有 pine-tune 自己的模型。
你看懂這個????諧音梗笑話了嗎?對強化微調又有何感想呢?