在自然語言處理領域中,預訓練語言模型(Pre-trained Language Model, PLM)已成為重要的基礎技術,在多語言的研究中,預訓練模型的使用也愈加普遍。為了促進中國少數民族語言信息處理的研究與發展,哈工大訊飛聯合實驗室(HFL)發布少數民族語言預訓練模型CINO (Chinese mINOrity PLM)。
Jiking 2023-04-29 Article中文說明 | English
在自然語言處理領域中,預訓練語言模型(Pre-trained Language Model, PLM)已成為重要的基礎技術,在多語言的研究中,預訓練模型的使用也愈加普遍。為了促進中國少數民族語言信息處理的研究與發展,哈工大訊飛聯合實驗室(HFL)發布少數民族語言預訓練模型CINO (Chinese mINOrity PLM)。
中文LERT | 中英文PERT | 中文MacBERT | 中文ELECTRA | 中文XLNet | 中文BERT | 知識蒸餾工具TextBrewer | 模型裁剪工具TextPruner
查看更多哈工大訊飛聯合實驗室發布的資源:https://github.com/ymcui/HFL-Anthology
新聞
2022/10/29 我們提出了一種融合語言學信息的預訓練模型LERT。查看:https://github.com/ymcui/LERT
2022/8/23 CINO被國際重要會議COLING 2022錄用為長文。 camera-ready結束後,我們將更新論文最終版並發布相應資源。
2022/02/21 更新CINO-small模型,6層transformer結構,參數量148M。
2022/01/25 更新CINO-v2模型與WCM-v2數據集,少數民族語言分類任務效果提升。
2021/12/17 哈工大訊飛聯合實驗室全新推出模型裁剪工具包TextPruner,歡迎試用。
2021/10/25 CINO-large模型、少數民族語言分類任務數據集Wiki-Chinese-Minority(WCM)數據集已開放下載使用。
內容導引
簡介
多語言預訓練模型(Multilingual Pre-trained Language Model),如mBERT、XLM-R等,通過在預訓練階段增加語言數量、採用MLM自監督訓練等方式,使預訓練模型具備了多語言(multilingual)和跨語言(cross-lingual)理解的能力。然而,由於國內少數民族語言語料的稀缺以及國際上研究的忽視,現有的多語言模型無法很好地處理國內少數民族語言文字。
本項工作的主要貢獻:
-
CINO (Chinese mINOrity PLM) 基於多語言預訓練模型XLM-R,在多種國內少數民族語言語料上進行了二次預訓練。該模型提供了藏語、蒙語(回鶻體)、維吾爾語、哈薩克語(阿拉伯體)、朝鮮語、壯語、粵語等少數民族語言與方言的理解能力。
-
為了便於評價包括CINO在內的各個多語言預訓練模型性能,我們構建了基於維基百科的少數民族語言分類任務數據集Wiki-Chinese-Minority(WCM)。具體見少數民族語言分類數據集。
-
通過實驗證明,CINO在Wiki-Chinese-Minority(WCM)以及其他少數民族語言數據集:藏語新聞分類Tibetan News Classification Corpus (TNCC) 、朝鮮語新聞分類KLUE-TC (YNAT) 上獲得了最好的效果。相關結果詳見實驗結果。
該模型涵蓋:
- Chinese,中文(zh)
- Tibetan,藏語(bo)
- Mongolian (Uighur form),蒙語(mn)
- Uyghur,維吾爾語(ug)
- Kazakh (Arabic form),哈薩克語(kk)
- Korean,朝鮮語(ko)
- Zhuang,壯語
- Cantonese,粵語(yue)
模型下載
直接下載
目前提供PyTorch版本的CINO-small、CINO-base和CINO-large模型的下載(推薦使用v2版本),後續將陸續更新其他規模與版本的模型。
-
CINO-large-v2
:24-layer, 1024-hidden, 16-heads, vocabulary size 136K, 442M parameters -
CINO-base-v2
12-layer, 768-hidden, 12-heads, vocabulary size 136K, 190M parameters -
CINO-small-v2
6-layer, 768-hidden, 12-heads, vocabulary size 136K, 148M parameters -
CINO-large
:24-layer, 1024-hidden, 16-heads, vocabulary size 275K, 585M parameters
注意:
- v1模型(CINO-large)支援XLM-R中的所有語言再加上少數民族語言;
- v2模型(CINO-large-v2,CINO-base-v2和CINO-small-v2)的詞表針對預訓練數據做了裁剪,僅支援中文與少數民族語言。
通過🤗transformers下載
通過🤗transformers模型庫可以下載TensorFlow (v2)和PyTorch版本模型。
下載方法:點擊任意需要下載的模型→ 選擇”Files and versions”選項卡→ 下載對應的模型档案。
模型使用
PyTorch版本包含3個档案:
pytorch_model.bin # 模型权重
config.json # 模型参数
sentencepiece.bpe.model # 词表
CINO的結構與XLM-R相同,可直接使用Transformers中的XLMRobertaModel
模型進行加載:
from transformers import XLMRobertaTokenizer, XLMRobertaModel
tokenizer = XLMRobertaTokenizer.from_pretrained("PATH_TO_MODEL_DIR")
model = XLMRobertaModel.from_pretrained("PATH_TO_MODEL_DIR")
快速加載
依託於🤗Transformers,可輕鬆調用以上CINO模型。
from transformers import XLMRobertaTokenizer, XLMRobertaModel
tokenizer = XLMRobertaTokenizer.from_pretrained("MODEL_NAME")
model = XLMRobertaModel.from_pretrained("MODEL_NAME")
其中MODEL_NAME
對應列表如下:
模型名 | MODEL_NAME |
---|---|
CINO-large-v2 | hfl/cino-large-v2 |
CINO-base-v2 | hfl/cino-base-v2 |
CINO-small-v2 | hfl/cino-small-v2 |
CINO-large | hfl/cino-large |
少數民族語言分類數據集
Wiki-Chinese-Minority(WCM)
我們基於少數民族語言維基百科語料及其分類體系標籤,構建了分類任務數據集 Wiki-Chinese-Minority(WCM)。該數據集覆蓋了蒙古語、藏語、維吾爾語、粵語、朝鮮語、哈薩克語,中文,包括藝術、地理、歷史、自然、自然科學、人物、技術、教育、經濟和健康十個類別。
各個語言上取weighted-F1為評測指標。計算所有語言的weighted-F1平均作為總體評價指標。
數據集名稱 | Google下載 | 百度網盤下載 |
---|---|---|
Wiki-Chinese-Minority-v2(WCM-v2) | Google Drive | 無 |
Wiki-Chinese-Minority(WCM) | Google Drive | 無 |
注:语料数据无法通过百度网盘分享,请通过Google Drive下载。
WCM-v2版本調整了各類別與語言的樣本數量,分佈相對更均衡。 WCM-v2版本數據分佈:
類別 | 蒙古語 | 藏語 | 維吾爾語 | 粵語 | 朝鮮語 | 哈薩克語 | 中文-Train | 中文-Dev | 中文-Test |
---|---|---|---|---|---|---|---|---|---|
藝術 | 135 | 141 | 3 | 387 | 806 | 348 | 2657 | 331 | 335 |
地理 | 76 | 339 | 256 | 1550 | 1197 | 572 | 12854 | 1589 | 1644 |
歷史 | 66 | 111 | 0 | 499 | 776 | 491 | 1771 | 227 | 248 |
自然 | 7 | 0 | 7 | 606 | 442 | 361 | 1105 | 134 | 110 |
自然科學 | 779 | 133 | 20 | 336 | 532 | 880 | 2314 | 317 | 287 |
人物 | 1402 | 111 | 0 | 1230 | 684 | 169 | 7706 | 953 | 924 |
技術 | 191 | 163 | 8 | 329 | 808 | 515 | 1184 | 134 | 152 |
教育 | 6 | 1 | 0 | 289 | 439 | 1392 | 936 | 130 | 118 |
經濟 | 205 | 0 | 0 | 445 | 575 | 637 | 922 | 113 | 109 |
健康 | 106 | 111 | 6 | 272 | 299 | 893 | 551 | 67 | 73 |
總計 | 2973 | 1110 | 300 | 5943 | 6558 | 6258 | 32000 | 3995 | 4000 |
數據說明:
- 包含兩個档案夾:zh和minority
- zh:中文的訓練集、開發集和測試集
- minority:所有語言(各少數民族語言與方言)的測試集
該數據集尚處於alpha階段,之後的版本可能會有一定改動。
後續還將有其他數據集發布,敬請期待。
實驗結果
我們在YNAT、TNCC和Wiki-Chinese-Minority三個數據集上比較了不同模型的效果。
對於同一任務上的各個預訓練模型,使用統一的訓練輪數、學習率等參數。
朝鮮語文本分類(YNAT)
#Train | #Dev | #Test | #Classes | Metric |
---|---|---|---|---|
45,678 | 9,107 | 9,107 | 7 | macro-F1 |
實驗參數:學習率為1e-5,batch_size為16。
實驗結果:
模型 | 開發集 |
---|---|
XLM-R-large[1] | 87.3 |
XLM-R-large[2] | 86.3 |
CINO-small-v2 | 84.1 |
CINO-base-v2 | 85.5 |
CINO-large-v2 | 87.2 |
CINO-large | 87.4 |
[1] 論文中的結果。
[2] 復現結果,與CINO-large使用相同的學習率。
藏語文本分類(TNCC)
#Train[1] | #Dev | #Test | #Classes | Metric |
---|---|---|---|---|
7,363 | 920 | 920 | 12 | macro-F1 |
實驗參數:學習率為5e-6,batch_size為16。
實驗結果:
模型 | 開發集 | 測試集 |
---|---|---|
TextCNN | 65.1 | 63.4 |
XLM-R-large | 14.3 | 13.3 |
CINO-small-v2 | 72.1 | 66.7 |
CINO-base-v2 | 70.3 | 68.4 |
CINO-large-v2 | 72.9 | 71.0 |
CINO-large | 71.3 | 68.6 |
注:原論文中未提供train/dev/test的劃分方式。因此,我們重新對數據集按8:1:1做了劃分。
Wiki-Chinese-Minority
在中文訓練集上訓練,在其他語言上做zero-shot測試。各語言的評測指標為weighted-F1。
實驗參數:學習率為7e-6,batch_size為32。
WCM-v2實驗結果:
模型 | 蒙古語 | 藏語 | 維吾爾語 | 粵語 | 朝鮮語 | 哈薩克語 | 中文 | Average |
---|---|---|---|---|---|---|---|---|
XLM-R-base | 41.2 | 25.7 | 84.5 | 66.1 | 43.1 | 23.0 | 88.3 | 53.1 |
XLM-R-large | 53.8 | 24.5 | 89.4 | 67.3 | 45.4 | 30.0 | 88.3 | 57.0 |
CINO-small-v2 | 60.3 | 47.9 | 86.5 | 64.6 | 43.2 | 33.2 | 87.9 | 60.5 |
CINO-base-v2 | 62.1 | 52.7 | 87.8 | 68.1 | 45.6 | 38.3 | 89.0 | 63.4 |
CINO-large-v2 | 73.1 | 58.9 | 90.1 | 66.9 | 45.1 | 42.0 | 88.9 | 66.4 |
示例程式碼
參見examples
目錄,目前包括
引用
如果本目錄中的內容對你的研究工作有所幫助,歡迎引用下述論文。
@inproceedings{yang-etal-2022-cino,
title = "{CINO}: A {C}hinese Minority Pre-trained Language Model",
author = "Yang, Ziqing and
Xu, Zihang and
Cui, Yiming and
Wang, Baoxin and
Lin, Min and
Wu, Dayong and
Chen, Zhigang",
booktitle = "Proceedings of the 29th International Conference on Computational Linguistics",
month = oct,
year = "2022",
address = "Gyeongju, Republic of Korea",
publisher = "International Committee on Computational Linguistics",
url = "https://aclanthology.org/2022.coling-1.346",
pages = "3937--3949"
}
關注我們
歡迎關注哈工大訊飛聯合實驗室官方微信公眾號,了解最新的技術動態。
問題反饋
如有問題,請在GitHub Issue中提交。
#在自然語言處理領域中預訓練語言模型Pretrained #Language #Model #PLM已成為重要的基礎技術在多語言的研究中預訓練模型的使用也愈加普遍為了促進中國少數民族語言信息處理的研究與發展哈工大訊飛聯合實驗室HFL發布少數民族語言預訓練模型CINO #Chinese #mINOrity #PLM
You may also like
No related posts.