🚀 mALBERT Base Cased 32k
mALBERT Base Cased 32k 是一個預訓練的多語言語言模型,採用掩碼語言建模(MLM)目標進行訓練。該模型支持多種語言,能為下游任務提取有用特徵。與其他 ALBERT 模型不同,它區分大小寫,例如能區分 “french” 和 “French”。
🚀 快速開始
你可以使用這個原始模型進行掩碼語言建模或下一句預測,但它主要用於在下游任務上進行微調。你可以在 模型中心 查找針對你感興趣的任務微調後的版本。
💻 使用示例
基礎用法
以下是如何在 PyTorch 中使用此模型獲取給定文本的特徵:
from transformers import AlbertTokenizer, AlbertModel
tokenizer = AlbertTokenizer.from_pretrained('cservan/multilingual-albert-base-cased-32k')
model = AlbertModel.from_pretrained("cservan/multilingual-albert-base-cased-32k")
text = "Remplacez-moi par le texte en français que vous souhaitez."
encoded_input = tokenizer(text, return_tensors='pt')
output = model(**encoded_input)
高級用法
以下是在 TensorFlow 中使用此模型的示例:
from transformers import AlbertTokenizer, TFAlbertModel
tokenizer = AlbertTokenizer.from_pretrained('cservan/multilingual-albert-base-cased-32k')
model = TFAlbertModel.from_pretrained("cservan/multilingual-albert-base-cased-32k")
text = "Remplacez-moi par le texte en français que vous souhaitez."
encoded_input = tokenizer(text, return_tensors='tf')
output = model(encoded_input)
✨ 主要特性
- 多語言支持:支持法語(fr)、英語(en)、德語(de)、西班牙語(es)、俄語(ru)、意大利語(it)、中文(zh)等多種語言。
- 大小寫敏感:能夠區分大小寫,提供更細緻的語言表示。
- 參數共享:在 Transformer 層之間共享權重,內存佔用小,但計算成本與具有相同隱藏層數的 BERT 架構相似。
📦 安裝指南
文檔未提供具體安裝步驟,你可以參考 Transformers 庫的官方文檔進行安裝。
📚 詳細文檔
模型描述
mALBERT 是一個基於自監督方式在 16GB 法語維基百科上預訓練的 Transformer 模型。這意味著它僅在原始文本上進行預訓練,沒有人工標註(因此可以使用大量公開可用的數據),並通過自動過程從這些文本中生成輸入和標籤。更確切地說,它通過兩個目標進行預訓練:
- 掩碼語言建模(MLM):取一個句子,模型隨機掩蓋輸入中 15% 的單詞,然後將整個掩碼句子通過模型,並預測被掩蓋的單詞。這與傳統的循環神經網絡(RNN)不同,RNN 通常逐個看到單詞,也與像 GPT 這樣的自迴歸模型不同,GPT 內部掩蓋未來的標記。這允許模型學習句子的雙向表示。
- 句子順序預測(SOP):mALBERT 使用基於預測兩個連續文本段順序的預訓練損失。
通過這種方式,模型學習到語言的內部表示,可用於提取對下游任務有用的特徵。例如,如果你有一個標記句子的數據集,你可以使用 mALBERT 模型生成的特徵作為輸入來訓練標準分類器。
這個基礎模型的第二個版本具有以下配置:
屬性 |
詳情 |
重複層數 |
12 層 |
嵌入維度 |
128 |
隱藏維度 |
768 |
注意力頭數 |
12 |
參數數量 |
1100 萬 |
詞彙量大小 |
32k |
預期用途和限制
該模型主要用於需要使用整個句子(可能是掩碼的)來做出決策的任務,如序列分類、標記分類或問答。對於文本生成等任務,你應該考慮像 GPT2 這樣的模型。
訓練數據
mALBERT 模型在 13GB 的 多語言維基百科(不包括列表、表格和標題)上進行預訓練。
訓練過程
預處理
文本先轉換為小寫,然後使用 SentencePiece 進行分詞,詞彙量大小為 128,000。模型的輸入形式如下:
[CLS] 句子 A [SEP] 句子 B [SEP]
訓練
mALBERT 的訓練過程遵循 BERT 的設置。每個句子的掩碼過程細節如下:
- 15% 的標記被掩蓋。
- 80% 的情況下,被掩蓋的標記被
[MASK]
替換。
- 10% 的情況下,被掩蓋的標記被一個與它們替換的標記不同的隨機標記替換。
- 10% 的情況下,被掩蓋的標記保持不變。
工具
用於預訓練模型的工具可在 這裡 獲取。
評估結果
在下游任務上進行微調時,ALBERT 模型取得了以下結果:
槽填充任務
模型 \ 任務 |
MMNLU |
MultiATIS++ |
CoNLL2003 |
MultiCoNER |
SNIPS |
MEDIA |
EnALBERT |
未提供 |
未提供 |
89.67 (0.34) |
42.36 (0.22) |
95.95 (0.13) |
未提供 |
FrALBERT |
未提供 |
未提供 |
未提供 |
未提供 |
未提供 |
81.76 (0.59) |
mALBERT - 128k |
65.81 (0.11) |
89.14 (0.15) |
88.27 (0.24) |
46.01 (0.18) |
91.60 (0.31) |
83.15 (0.38) |
mALBERT - 64k |
65.29 (0.14) |
88.88 (0.14) |
86.44 (0.37) |
44.70 (0.27) |
90.84 (0.47) |
82.30 (0.19) |
mALBERT - 32k |
64.83 (0.22) |
88.60 (0.27) |
84.96 (0.41) |
44.13 (0.39) |
89.89 (0.68) |
82.04 (0.28) |
分類任務
模型 \ 任務 |
MMNLU |
MultiATIS++ |
SNIPS |
SST2 |
mALBERT - 128k |
72.35 (0.09) |
90.58 (0.98) |
96.84 (0.49) |
34.66 (1.46) |
mALBERT - 64k |
71.26 (0.11) |
90.97 (0.70) |
96.53 (0.44) |
34.64 (1.02) |
mALBERT - 32k |
70.76 (0.11) |
90.55 (0.98) |
96.49 (0.45) |
34.18 (1.64) |
🔧 技術細節
mALBERT 在 Transformer 層之間共享權重,所有層具有相同的權重。使用重複層導致內存佔用小,但計算成本與具有相同隱藏層數的 BERT 架構相似,因為它必須遍歷相同數量的(重複)層。
📄 許可證
本模型採用 Apache-2.0 許可證。
BibTeX 引用
@inproceedings{servan2024mALBERT,
author = {Christophe Servan and
Sahar Ghannay and
Sophie Rosset},
booktitle = {the 2024 Joint International Conference on Computational Linguistics, Language Resources and Evaluation (LREC-COLING 2024)},
title = {{mALBERT: Is a Compact Multilingual BERT Model Still Worth It?}},
year = {2024},
address = {Torino, Italy},
month = may,
}
論文鏈接:PDF