最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

官方教程|CPM-Bee在基礎任務上的高效微調(diào)

2023-06-12 17:32 作者:OpenBMB  | 我要投稿


5月27日百億參數(shù)中英雙語基座模型 CPM-Bee 開源之后,在GitHub反響熱烈,一度登上總榜第四、Python榜第三。

CPM-Bee 是一個基座模型,其開源的核心目的是更廣泛地支持各種 NLP 應用場景,讓大家可以自由地進行適配。我們在預訓練的時候采用了一些特殊設計,所以它現(xiàn)在的輸出比較穩(wěn)定。如果在合適的數(shù)據(jù)上進行指令微調(diào),CPM-Bee 會輸出更高質(zhì)量和有信息量的內(nèi)容。

當然,有很多社區(qū)的朋友希望我們出模型的具體微調(diào)教程,我們決定首先推出?CPM-Bee基礎微調(diào)教程。


CPM-Bee 數(shù)據(jù)格式介紹


CPM-Bee 基座模型可以將多種自然語言處理任務統(tǒng)一用生成的方式解決。CPM-Bee 采用特殊的多任務預訓練模式,所有的數(shù)據(jù)都統(tǒng)一用一個字典來管理。我們可以任意設計字典中的鍵值對來表達我們希望模型做的事情,同時預留一個<ans>字段,用于存儲模型給出的答案。注意,<ans>字段是必需的,基本格式如下:

盡管輸入數(shù)據(jù)的格式是任意的,但由于模型在預訓練階段使用了有限的幾種數(shù)據(jù)格式,我們建議您在使用CPM-Bee推理時盡量使用這些參考格式。

文本生成

input字段用于填寫上下文,它并不是唯一的,您可以使用"source", "document", "query", "text", "文章", "文檔", "原文", "輸入", "context", "上下文"等類似的鍵來替換。

prompt字段用來給出一些提示和指定任務,該字段并不是必需的,但是我們建議您使用合理的 prompt 來更好地驅(qū)動模型。prompt也可以被"hint", "task", "prompt", "任務", "提示", "目標", "target"等替換。請注意,prompt 一般會提供一些控制信息,如"往后寫xxx字","中翻英","給這段話生成摘要"等。

翻譯

CPM-Bee目前支持中英互譯。prompt一般可選"中翻英"/"英翻中","中譯英"/"英譯中","把文章翻譯為英文"/"把文章翻譯為中文","Translate from English to Chinese"等。

問答

選擇題

options可以等價替換為"answers", "candidates", "選項"...

命名實體識別

以上是一些常見的任務的數(shù)據(jù)格式。請注意里面用到的字段不是嚴格限定的,您可以做一些近似語義的替換,比如把"中翻英"替換為"把這段話翻譯成英文"。您也可以在微調(diào)時自由設計數(shù)據(jù)格式,例如,當您希望微調(diào)一個對話模型,您可以構造數(shù)據(jù)格式為

您也可以不使用<sep>,如下格式也可以:

總之,您可以靈活定義您的數(shù)據(jù)格式。


微調(diào)流程

本教程將以一個序列-序列任務為例介紹對 CPM-Bee 基座模型的微調(diào)。這里我們選擇的任務需要將一句白話文“翻譯”成一句古詩。首先,微調(diào)需要準備原始數(shù)據(jù),格式如下:

  • 放置在路徑src/ccpm_example/raw_data/下;

  • 準備模型的checkpoint,放在路徑src/ckpts/pytorch_model.bin下,可在此鏈接下載權重。

進入工作路徑:

運行data_reformat.py重新調(diào)整數(shù)據(jù)格式。注意,這里我們將原始數(shù)據(jù)轉(zhuǎn)化為上述推薦的格式。在您的實驗中,可以自行設置需要的格式并且編寫自己的data_reformat.py。

得到調(diào)整后的數(shù)據(jù)格式:

  • 放置在路徑src/ccpm_example/bee_data/

注:該格式為參考格式。微調(diào)時,您可以自由設計您的數(shù)據(jù)格式,可以不設置prompt字段,只要所提供的數(shù)據(jù)涵蓋所有必要信息即可。但我們一般推薦將輸入文本字段標識為input/document/doc,如果您的任務可以被轉(zhuǎn)化成選擇題,則應當添加options字段與question字段;如果是一般的文本生成,包含input+<ans>即可

構建二進制數(shù)據(jù)文件:

  • 放在路徑ccpm_example/bin_data/

注:應確保沒有同名路徑ccpm_example/bin_data/,如存在同名路徑,應先刪除該路徑再運行上述指令。如未提前刪除,該指令會報錯ValueError: Dataset name exists,同時產(chǎn)生一個新路徑tmp/,此時應當連同tmp/與同名路徑ccpm_example/bin_data/一并刪除,之后再運行上述指令即可。

在模型微調(diào)腳本scripts/finetune_cpm_bee.sh中對超參數(shù)進行設置,我們對每一個超參數(shù)給出了注釋:

只需要運行腳本即可開始微調(diào)

您可以在src/results/中查看存儲的模型或者輕量級 Delta 模塊。


以上是 CPM-Bee的基礎微調(diào)教程。下期我們會繼續(xù)推出指令微調(diào)教程,我們也會持續(xù)完善CPM-Bee的文檔信息,歡迎感興趣的朋友關注和參與開源共建!

????CPM-Bee開源地址

????https://github.com/OpenBMB/CPM-Bee

? ?加社群/ 提建議/ 有疑問?

請找 OpenBMB 萬能小助手:

?? 關注我們

微信搜索關注 “OpenBMB開源社區(qū)”

后臺回復“CPM-Live” 即可加入CPM-Live加油群

還可獲取更多大模型干貨知識和前沿資訊! ??


官方教程|CPM-Bee在基礎任務上的高效微調(diào)的評論 (共 條)

分享到微博請遵守國家法律
凤阳县| 广丰县| 布拖县| 盐亭县| 潞城市| 徐汇区| 五常市| 佛冈县| 肥乡县| 隆德县| 吴旗县| 宜章县| 靖安县| 松原市| 法库县| 台东市| 常山县| 安宁市| 鹤壁市| 丰顺县| 清原| 宜良县| 科尔| 扬中市| 马龙县| 盈江县| 中方县| 商洛市| 太白县| 九龙城区| 集贤县| 鄄城县| 新密市| 弥勒县| 南皮县| 瓮安县| 微博| 凌海市| 苍山县| 建德市| 高淳县|