就說程序員的手速有多快吧,首個開源 ChatGPT 項目已經出現了!
基于谷歌語言大模型 PaLM 架構,以及使用從人類反饋中強化學習的方法(RLHF),華人小哥Phillip Wang複刻了一個 ChatGPT 出來。
項目 GitHub 星已經超過 1.7k 了,而且還在一路飙升 ing。
不過一反常态的是,網友們看到 " 開源 ChatGPT" 卻沒有火速開沖,反倒齊刷刷在發問:
這……有人能 run?
項目的核心内容,是在 PaLM 架構上實現基于人類反饋的強化學習。
其中,PaLM(Pathways Language Model)是谷歌在今年 4 月發布的5400 億參數全能大模型,基于 Pathways 系統訓練,BERT 之父 Jacob Devlin 為主要貢獻者之一。
PaLM 可以完成寫代碼、聊天、語言理解等任務,并且在大多數任務上實現了 SOTA 少樣本學習性能。
另一個核心點是 RLHF"從人類反饋中強化學習"。
OpenAI 提出 InstructGPT 時就用到了這一方法,它能讓 AI 的回答更加符合情景要求,降低 " 有害性 "。
具體分三步:
第一步,找一些人寫下示範答案,來微調 GPT-3 模型,訓練監督模型 baseline。
第二步,收集某個問題的幾組不同輸出數據,由人類對幾組答案進行排序,在此數據集上訓練獎勵模型。
第三步,使用 RM 作為獎勵函數,近端策略優化(PPO)算法微調 GPT-3 策略,以強化學習方法最大化獎勵。
ChatGPT使用的 GPT-3.5,其中 text-davinci-002 就是在 code-davinci-002 的基礎上,采用了 InstructGPT 訓練方法改進得到。
正是基于如上兩方面核心内容,作者實現了 ChatGPT 的複刻。
大緻步驟有 3 步:
首先來訓練一下 PaLM,就和其他自回歸 Transformer 一樣。
第二……
等等,訓練 PaLM???這确定不是在開玩笑?
現在明白為啥大家都覺得這個開源項目完全不能 run 了……
打個不恰當的比方,這就像如果想吃熊肉,那先自己去打頭熊來。
項目中隻有 PaLM 架構和代碼,沒有預先訓練好的權重。
所以完成第一步,大概效果就是……
話雖如此,但還是繼續接着往下看看……
第二步,就要訓練基于 RLHF 的獎勵模型了。作者使用的是一種輕量級訓練大語言模型方法 LoRA,這種方法是開源的。
然後,再把之前訓練好的模型和獎勵模型用強化學習進行微調。
經過這三步後,就能得到一個開源版的 ChatGPT 了。
這中間面臨的問題包括巨大的計算量、超大模型和難收集的文本……所以有人也不免發問:
有沒有一種可能,它也沒啥用?
不過有網友覺得這本質上還是一件好事啦。
AI 的一個關鍵區别就是,每有一個重大突破,很快就會出現一個開源版本。
實際上,開源項目作者小哥 Philip Wang 一直都熱衷于複刻各種明星項目,過去還嘗試過 Dall · E 2、AlphaFold 2 等。
以及 LAION 也發起了一個類似項目Open Assistant,他們将通過 " 衆籌腦力 " 的方式,共同開發一個開源的聊天 AI。
Stable Diffusion 用的開放數據集,就是這一組織做的。
感興趣的童鞋不妨去試試看 ~
PaLM-rlhf-pytorch 主頁:
https://github.com/lucidrains/PaLM-rlhf-pytorch
Open Assistant 主頁:
https://github.com/LAION-AI/Open-Assistant
參考鍊接:
[ 1 ] https://twitter.com/rasbt/status/1608133663937495041
[ 2 ] https://twitter.com/omarsar0/status/1608143718460055552