最好7B模型再易主!打敗700億LLaMA2,蘋果電腦就能跑
花500刀“調教”的70億參數模型,打敗700億參數的Llama 2!
且筆記本就能輕松跑,效果媲美ChatGPT。
重點:免費、不要錢。
HuggingFace H4團隊打造的開源模型Zephyr-7B,鯊瘋了。
其底層模型是前段時間爆火、由有著“歐洲OpenAI”之稱的Mistral AI打造的開源大模型Mistral-7B。
要知道,Mistral-7B發布不到2周,各種微調版本相繼現世,大有Llama剛發布時迅速出現各種“羊駝”之風。
而Zephyr能夠在各變種中脫穎而出,關鍵是團隊在Mistral的基礎上,使用直接偏好優化(DPO)在公開數據集上微調了模型。
團隊還發現,刪除數據集的內置對齊,可以進一步提高MT Bench性能。初代Zephyr-7B-alpha的MT-Bench平均得分7.09 ,超越Llama2-70B-Chat。
△MT-Bench是評估模型處理多輪對話能力的基準測試,問題集涵蓋寫作、角色扮演、提取等8個類別。
關鍵是,它接著又升級了!
H4團隊推出二代Zephyr-7B-beta。他們補充道,探索了從GPT-4、Claude 2中提取對齊性,然后將其注入小模型中的想法,開發出了將蒸餾直接偏好優化(dDPO)用于小模型的方法。
二代Zephyr,MT-Bench平均得分升高至7.34。
在AlpacaEval上,Zephyr勝率為90.6%,優于ChatGPT(3.5):
趕來的網友們對Zephyr給予了一致好評,lmsys團隊還亮出了Zephyr-7b-beta的Elo評分,目前已飆升得很高??:
內部的Arena排行榜上已超過13B模型。
甚至有人表示:
在實際應用中看到DPO方法表現很好,可能是今年大語言模型發展中最令人興奮的事情。
更多網友紛紛上手測試Zephyr效果,結果都出奇的好。
Mistral這個單詞在法語里代表一種干燥、寒冷且強勁的風,而Zephyr意思則是溫和、宜人的西風。
Llama那邊是動物園,這邊是氣象局無疑了。
最好的7B模型再易主
先來說運行Zephyr對電腦配置的要求。網友實測后表示“泰褲辣”!,筆記本(Apple M1 Pro)就夠用,“結果非常好”。
效果方面,Llama Index(此前名為GPT Index)團隊也進行了測試。
結果發現,Zephyr是目前唯一一個在高級RAG/agentic任務上表現良好的開源7B模型。
數據也顯示,Zephyr高級RAG任務效果可以和GPT-3.5、Claude 2相抗衡。
他們還繼續補充道,Zephyr不僅在RAG上效果突出,而且在路由、查詢規劃、檢索復雜SQL語句、結構化數據提取方面也表現良好。
官方也給出了測試結果,在MT-Bench上,Zephyr-7B-beta與Llama2-Chat-70B等較大的模型相比具有強大的性能。
但在編碼和數學等更復雜的任務上,Zephyr-7B-beta落后于專有模型,需要更多的研究來縮小差距。
舍棄強化學習
大家都在紛紛測試Zephyr的效果,開發人員卻表示,最有趣的不是各項指標,而是模型的訓練方式。
亮點總結如下:
- 微調最好的小型開源預訓練模型:Mistral 7B
- 大規模偏好數據集的用法:UltraFeedback
- 不用強化學習,使用直接偏好優化(DPO)
- 意料之外的是,偏好數據集的過擬合會產生更好的效果
展開來說,正如開頭所提到的,Zephyr的效果之所以能夠超越70B的Llama 2,主要是因為使用了特殊的微調方法。
與傳統的PPO強化學習方法不同,研究團隊使用了斯坦福大學和CZ Biohub不久前合作提出DPO方法。
研究人員表示:
DPO要比PPO穩定得多。
DPO簡單來講可以這樣解釋:
要想使模型的輸出更加符合人類偏好,一直以來傳統方法是用一個獎勵模型來微調目標模型。輸出得好給獎勵,輸出不好不給獎勵。
而DPO的方法繞過了建模獎勵函數,相當于直接在偏好數據上優化模型。
總的來說,DPO解決了人類反饋的強化學習訓練難、訓練成本高的問題。
具體到Zephyr的訓練上,研究團隊最初是在UltraChat數據集精簡后的變種上對Zephyr-7B-alpha進行了微調,這個數據集包含了ChatGPT生成的160萬個對話(精簡后剩下約20萬個)。
(之所以要精簡過濾,是因為團隊發現Zephyr有時大小寫寫不對,比如“Hi. how are you?”;有時會以“I don’t have personal X”為開頭進行回應。)
之后,他們又通過TRL的DPO Trainer方法,用公開的openbmb/UltraFeedback數據集進一步對齊了該模型。
數據集中包含了64000個來自各種模型的提示-響應對。每個響應都由GPT-4根據有用性等標準進行排名,并賦予一個得分,從中推出AI偏好。
一個有趣的發現是,在用DPO的方法時,隨著訓練時間增加,過擬合后,效果居然更好了。研究人員認為這類似于SFT中的過擬合。
值得一提的是,研究團隊還介紹,用這種方法微調模型,成本只需500美元,也就是在16個A100上跑8小時。
在升級Zephyr為beta版本時,團隊又繼續解釋了他們的方法。
他們思考了大模型所用的蒸餾監督微調(dSFT),但用這種方法模型是不對齊的,不能很好地生成符合用戶意圖的輸出。
所以團隊嘗試使用來自AI反饋(AI Feedback,AIF)的偏好數據,用一個“教師模型”對輸出進行排名,形成一個數據集,然后應用蒸餾直接偏好優化(dDPO)來訓練一個與用戶意圖對齊的模型,且在微調期間不需要任何額外的抽樣。
研究人員還測試了不用SFT時的效果,結果性能大大降低,說明dSFT步驟至關重要。
目前模型除了已開源可商用,還有Demo可試玩,我們這就上手簡單體驗了一把。
Demo試玩體驗
首先就不得不搬出“弱智吧”問題來考一考了。
在“爸媽結婚不帶我”這個問題上,Zephyr總體回答較為準確。
ChatGPT在這道題目上,屬實打不過。
在測試中我們還發現Zephyr對OpenAI發布GPT-4等近期的事也知道:
這其實與其底層模型有關,Mistral官方雖然沒有具體說明訓練數據截止日期。
但之前就有網友測試過,今年三月份的事它也知道。
相比之下Llama 2的預訓練數據截止到2022年9月,只有部分微調數據最多到2023年6月。
此外,Zephyr的響應速度也非常快,寫代碼、編故事都不在話下。:
值得一提的是,Zephyr更擅長用英文回答問題,也會出現“幻覺”這一模型通病。
研究人員也有提到幻覺問題,輸入框的下方也標有一行小字,指明該模型生成的內容可能不準確或錯誤。
關鍵是因為Zephyr沒有用到人類反饋強化學習這樣的方法與人類偏好對齊,也沒有采用ChatGPT的回應過濾方式。
emmm魚和熊掌總要選一個。
Zephyr只有70B參數就能做到這樣的效果,讓《100頁的機器學習書》作者Andriy Burkov也很吃驚,甚至表示:
Zephyr-7B戰勝Llama 2-70B,用的基礎模型是上下文窗口為8k token的Mistral-7B,理論上它的注意力范圍可高達128K tokens。
如果Zephyr是一個70B模型會怎樣呢?它會勝過GPT-4嗎?看起來很可能。
如果你對Zephyr-7B感興趣,可在huggingface試玩。
https://huggingface.co/spaces/HuggingFaceH4/zephyr-chat
論文鏈接:https://arxiv.org/abs/2310.16944