高質(zhì)量數(shù)據(jù),由 ChatGPT「自我博弈」生成。
ChatGPT 出現(xiàn)之后,科技公司正在爭(zhēng)相追趕,學(xué)界也在不斷尋找開源且輕量的解決方案。
此前,人們基于 Meta 的 LLaMA 構(gòu)建了一系列參數(shù)較少的新模型,只用幾十億參數(shù)就可以獲得接近 GPT-3.5 的效果。然而從 ChatGPT 和 GPT-4 的發(fā)展中我們可以看到,高質(zhì)量的標(biāo)注數(shù)據(jù)至關(guān)重要,OpenAI 對(duì)數(shù)據(jù)和標(biāo)注工作下了很大力氣。
對(duì)于學(xué)界來說,很難在短期做同樣的事。最近,有研究者嘗試通過讓 ChatGPT 自我對(duì)話生成多輪對(duì)話的「數(shù)據(jù)集」,最終訓(xùn)練出了強(qiáng)大的語(yǔ)言模型。
4 月 4 日,來自加州大學(xué)圣迭戈分校、中山大學(xué)和微軟亞研的研究者提出了「白澤」。
論文《Baize: An Open-Source Chat Model with Parameter-Efficient Tuning on Self-Chat Data》:
論文鏈接:https://arxiv.org/abs/2304.01196
白澤目前包括四種英語(yǔ)模型:白澤 -7B、13B 和 30B(通用對(duì)話模型),以及一個(gè)垂直領(lǐng)域的白澤 - 醫(yī)療模型,供研究 / 非商業(yè)用途使用,并計(jì)劃在未來發(fā)布中文的白澤模型。
白澤的數(shù)據(jù)處理、訓(xùn)練模型、Demo 等全部代碼已經(jīng)開源。
Github:https://github.com/project-baize/baize/blob/main/README.md
在線 Demo:https://huggingface.co/spaces/project-baize/baize-lora-7B
在新研究中,作者提出了一個(gè)自動(dòng)收集 ChatGPT 對(duì)話的流水線,通過從特定數(shù)據(jù)集中采樣「種子」的方式,讓 ChatGPT 自我對(duì)話,批量生成高質(zhì)量多輪對(duì)話數(shù)據(jù)集。其中如果使用領(lǐng)域特定數(shù)據(jù)集,比如醫(yī)學(xué)問答數(shù)據(jù)集,就可以生成高質(zhì)量垂直領(lǐng)域語(yǔ)料。
白澤提出的訓(xùn)練方法。通過利用 ChatGPT 的功能自動(dòng)生成高質(zhì)量的多輪聊天語(yǔ)料,讓 ChatGPT 與自己進(jìn)行對(duì)話,模擬用戶和 AI 的響應(yīng)。
為了在資源匱乏的環(huán)境中微調(diào)大語(yǔ)言模型,作者采用了有效利用計(jì)算資源的參數(shù)高效調(diào)優(yōu)方法。該策略使最先進(jìn)的語(yǔ)言模型保持了高性能和適應(yīng)性。白澤改進(jìn)了開源大型語(yǔ)言模型 LLaMA,通過使用新生成的聊天語(yǔ)料庫(kù)對(duì) LLaMA 進(jìn)行微調(diào),該模型在單個(gè) GPU 上運(yùn)行,使其可供更廣泛的研究人員使用。
自聊天的過程是訓(xùn)練內(nèi)容的基礎(chǔ),為了讓 ChatGPT 能夠有效生成數(shù)據(jù),研究人員應(yīng)用一個(gè)模板來定義格式和要求,讓 ChatGPT 的 API 持續(xù)為對(duì)話雙方生成抄本,直到達(dá)到自然停止點(diǎn)。對(duì)話以「種子」為中心,「種子」可以是一個(gè)問題,也可以是設(shè)置聊天主題的關(guān)鍵短語(yǔ)。
通過這樣的方法,研究人員分別收集了 5 萬(wàn)條左右 Quora、StackOverflow(編程問答)和 MedQA(醫(yī)學(xué)問答)的高質(zhì)量問答語(yǔ)料,并已經(jīng)全部開源。
相比之下,Vicuna 使用從 sharegpt.com 上抓取的對(duì)話,這樣做的一個(gè)好處是收集到的數(shù)據(jù)質(zhì)量很高。但是,此來源可能存在嚴(yán)重的隱私和法律問題。值得注意的是,sharegpt.com 最近已經(jīng)禁止抓取,這意味著該數(shù)據(jù)源不再可用,Vicuna 難以復(fù)現(xiàn)。
在取得這些數(shù)據(jù)后,作者使用 LoRA(low-rank adaptation)方法在英偉達(dá) A100 單卡下訓(xùn)練了三種尺寸的白澤模型,最短訓(xùn)練時(shí)長(zhǎng)只需要 5 小時(shí)(醫(yī)療模型),最長(zhǎng)也只需要 36 小時(shí)(30B 通用對(duì)話模型)。訓(xùn)練的權(quán)重最大也僅有 54.6M 的參數(shù)量。
研究人員將白澤與 Alpaca-LoRA、ChatGPT 進(jìn)行比較,展示了常識(shí)問答、事件分析、解釋笑話、問題拒答、寫代碼,以及醫(yī)療模型的健康咨詢等能力。
表 5:解釋雷曼兄弟破產(chǎn)。總體而言,Baize-7B 提供了比 Alpaca-LoRA 更全面的答案,同時(shí)包含了 ChatGPT 答案中的大部分要點(diǎn)。另一方面,ChatGPT 提供了更長(zhǎng)更詳細(xì)的答案。
表 6:解釋笑話的示例。Baize-13B 和 ChatGPT 可以成功解釋這個(gè)笑話,Alpaca-LoRA 未能做到。
表 7:聊天模型如何響應(yīng)用戶不道德請(qǐng)求的示例。Baize 和 ChatGPT 拒絕回答不道德的問題,而 Alpaca-LoRA 提供答案。
除了一般模型外,研究人員還在醫(yī)療從業(yè)者的幫助下測(cè)試了 Baize-Healthcare,專業(yè)人員已確認(rèn)白澤有關(guān)醫(yī)療問題的回應(yīng)是適當(dāng)?shù)摹?/p>
目前,「白澤」支持 20 種語(yǔ)言,對(duì)于英語(yǔ)以外的內(nèi)容質(zhì)量有限,繼承了 LLaMA 的知識(shí),可能會(huì)出現(xiàn)幻覺,或用過時(shí)知識(shí)進(jìn)行回答。
下一步,研究人員計(jì)劃探索引入強(qiáng)化學(xué)習(xí)以進(jìn)一步提高白澤模型的性能。