北大、西湖大學(xué)等開源「裁判大模型」PandaLM:三行代碼全自動(dòng)評(píng)估LLM,準(zhǔn)確率達(dá)ChatGPT的94%
ChatGPT發(fā)布后,自然語言處理領(lǐng)域的生態(tài)徹底發(fā)生了變化,很多之前無法完成的問題都可以利用ChatGPT解決。
不過也帶來了一個(gè)問題:大模型的性能都太強(qiáng)了,光靠肉眼很難評(píng)估各個(gè)模型的差異。
比如用不同的基座模型和超參數(shù)訓(xùn)練了幾版模型,從樣例來看性能可能都差不多,無法完全量化兩個(gè)模型之間的性能差距。
目前評(píng)估大語言模型主要有兩個(gè)方案:
1、調(diào)用OpenAI的API接口評(píng)估。
ChatGPT可以用來評(píng)估兩個(gè)模型輸出的質(zhì)量,不過ChatGPT一直在迭代升級(jí),不同時(shí)間對(duì)同一個(gè)問題的回復(fù)可能會(huì)有所不同,評(píng)估結(jié)果存在無法復(fù)現(xiàn)的問題。
2、人工標(biāo)注
如果在眾包平臺(tái)上請(qǐng)人工標(biāo)注的話,經(jīng)費(fèi)不足的團(tuán)隊(duì)可能無力負(fù)擔(dān),也存在第三方公司泄露數(shù)據(jù)的情況。
為了解決諸如此類的「大模型評(píng)估問題」,來自北京大學(xué)、西湖大學(xué)、北卡羅來納州立大學(xué)、卡內(nèi)基梅隆大學(xué)、MSRA的研究人員合作開發(fā)了一個(gè)全新的語言模型評(píng)估框架PandaLM,致力于實(shí)現(xiàn)保護(hù)隱私、可靠、可復(fù)現(xiàn)及廉價(jià)的大模型評(píng)估方案。
項(xiàng)目鏈接:https://github.com/WeOpenML/PandaLM
提供相同的上下文,PandaLM可以比較不同LLM的響應(yīng)輸出,并提供具體的理由。
為了證明該工具的可靠性和一致性,研究人員創(chuàng)建了一個(gè)由大約1000個(gè)樣本組成的多樣化的人類標(biāo)注測試數(shù)據(jù)集,其中PandaLM-7B的準(zhǔn)確率達(dá)到了ChatGPT的94%評(píng)估能力。
三行代碼用上PandaLM
當(dāng)兩個(gè)不同的大模型對(duì)同一個(gè)指令和上下文產(chǎn)生不同響應(yīng)時(shí),PandaLM旨在比較這兩個(gè)大模型的響應(yīng)質(zhì)量,并輸出比較結(jié)果,比較理由以及可供參考的響應(yīng)。
比較結(jié)果有三種:響應(yīng)1更好,響應(yīng)2更好,響應(yīng)1與響應(yīng)2質(zhì)量相似。
比較多個(gè)大模型的性能時(shí),只需使用PandaLM對(duì)其進(jìn)行兩兩比較,再匯總兩兩比較的結(jié)果進(jìn)行多個(gè)大模型的性能排名或畫出模型偏序關(guān)系圖,即可清晰直觀地分析不同模型間的性能差異。
PandaLM只需要在「本地部署」,且「不需要人類參與」,因此PandaLM的評(píng)估是可以保護(hù)隱私且相當(dāng)廉價(jià)的。
為了提供更好的可解釋性,PandaLM亦可用自然語言對(duì)其選擇進(jìn)行解釋,并額外生成一組參考響應(yīng)。
在項(xiàng)目中,研究人員不僅支持使用Web UI使用PandaLM以便于進(jìn)行案例分析,為了方便使用,還支持三行代碼調(diào)用PandaLM對(duì)任意模型和數(shù)據(jù)生成的文本評(píng)估。
考慮到現(xiàn)有的許多模型、框架并不開源或難以在本地完成推理,PandaLM支持利用指定模型權(quán)重生成待評(píng)估文本,或直接傳入包含待評(píng)估文本的.json文件。
用戶只需傳入一個(gè)包含模型名稱/HuggingFace模型ID或.json文件路徑的列表,即可利用PandaLM對(duì)用戶定義的模型和輸入數(shù)據(jù)進(jìn)行評(píng)估。下面是一個(gè)極簡的使用示例:
為了能讓大家靈活的運(yùn)用PandaLM進(jìn)行自由評(píng)測,研究人員也將PandaLM的模型權(quán)重公布在了huggingface網(wǎng)站上,可以通過以下命令加載PandaLM-7B模型:
PandaLM的特點(diǎn)
可復(fù)現(xiàn)性
因?yàn)镻andaLM的權(quán)重是公開的,即使語言模型的輸出有隨機(jī)性,當(dāng)固定隨機(jī)種子之后,PandaLM的評(píng)價(jià)結(jié)果仍可始終保持一致。
而基于在線API的模型的更新不透明,其輸出在不同時(shí)間有可能很不一致,且舊版模型不再可訪問,因此基于在線API的評(píng)測往往不具有可復(fù)現(xiàn)性。
自動(dòng)化、保護(hù)隱私性和開銷低
只需本地部署PandaLM模型,調(diào)用現(xiàn)成的命令即可開始評(píng)估各種大模型,不需像雇傭?qū)<覙?biāo)注時(shí)要時(shí)刻與專家保持溝通,也不會(huì)存在數(shù)據(jù)泄露的問題,同時(shí)也不涉及任何API費(fèi)用以及勞務(wù)費(fèi)用,非常廉價(jià)。
評(píng)估水平
為了證明PandaLM的可靠性,研究人員雇傭了三個(gè)專家進(jìn)行獨(dú)立重復(fù)標(biāo)注,創(chuàng)建了一個(gè)人工標(biāo)注的測試集。
測試集包含50個(gè)不同的場景,每個(gè)場景中又包含若干任務(wù)。這個(gè)測試集是多樣化、可靠且與人類對(duì)文本的偏好相一致的。測試集的每個(gè)樣本由一個(gè)指令和上下文,以及兩個(gè)由不同大模型生成的響應(yīng)共同組成,并由人類來比較這兩個(gè)響應(yīng)的質(zhì)量。
篩除了標(biāo)注員之間有較大差異的樣本,以確保每個(gè)標(biāo)注者在最終測試集上的IAA(Inter Annotator Agreement)接近0.85。值得注意的是,PandaLM的訓(xùn)練集與創(chuàng)建的人工標(biāo)注測試集無任何重疊。
這些被過濾的樣本需要額外的知識(shí)或難以獲取的信息來輔助判斷,這使得人類也難以對(duì)它們進(jìn)行準(zhǔn)確標(biāo)注。
經(jīng)過篩選的測試集包含1000個(gè)樣本,而原始未經(jīng)過濾的測試集包含2500個(gè)樣本。測試集的分布為{0:105,1:422,2:472},其中0表示兩個(gè)響應(yīng)質(zhì)量相似,1表示響應(yīng)1更好,2表示響應(yīng)2更好。以人類測試集為基準(zhǔn),PandaLM與gpt-3.5-turbo的性能對(duì)比如下:
可以看到,PandaLM-7B在準(zhǔn)確度上已經(jīng)達(dá)到了gpt-3.5-turbo 94%的水平,而在精確率,召回率,F(xiàn)1分?jǐn)?shù)上,PandaLM-7B已于gpt-3.5-turbo相差無幾。
因此,相比于gpt-3.5-turbo而言,可以認(rèn)為PandaLM-7B已經(jīng)具備了相當(dāng)?shù)拇竽P驮u(píng)估能力。
除了在測試集上的準(zhǔn)確度,精確率,召回率,F(xiàn)1分?jǐn)?shù)之外,還提供了5個(gè)大小相近且開源的大模型之間比較的結(jié)果。
首先使用了相同的訓(xùn)練數(shù)據(jù)對(duì)這個(gè)5個(gè)模型進(jìn)行指令微調(diào),接著用人類,gpt-3.5-turbo,PandaLM對(duì)這5個(gè)模型分別進(jìn)行兩兩比較。
下表中第一行第一個(gè)元組(72,28,11)表示有72個(gè)LLaMA-7B的響應(yīng)比Bloom-7B的好,有28個(gè)LLaMA-7B的響應(yīng)比Bloom-7B的差,兩個(gè)模型有11個(gè)響應(yīng)質(zhì)量相似。
因此在這個(gè)例子中,人類認(rèn)為LLaMA-7B優(yōu)于Bloom-7B。下面三張表的結(jié)果說明人類,gpt-3.5-turbo與PandaLM-7B對(duì)于各個(gè)模型之間優(yōu)劣關(guān)系的判斷完全一致。
總結(jié)
PandaLM提供了除人類評(píng)估與OpenAI API評(píng)估之外的第三條評(píng)估大模型的方案,PandaLM不僅評(píng)估水平高,而且評(píng)估結(jié)果可復(fù)現(xiàn),評(píng)估流程自動(dòng)化,保護(hù)隱私且開銷低。
未來,PandaLM將推動(dòng)學(xué)術(shù)界和工業(yè)界關(guān)于大模型的研究,使得更多人受益于大模型的發(fā)展。