🚀 mALBERT Base Cased 128k
マスク言語モデリング(MLM)の目的で事前学習された多言語言語モデルです。モデルの詳細はこちらをご覧ください。他のALBERTモデルとは異なり、このモデルは大文字と小文字を区別します。例えば、frenchとFrenchは異なるものとして扱われます。
🚀 クイックスタート
このモデルは、マスク言語モデリングや次文予測に使用できますが、主に下流タスクでのファインチューニングを目的としています。関心のあるタスクでファインチューニングされたバージョンをモデルハブで探すことができます。
✨ 主な機能
- 大文字と小文字を区別するケース対応型モデルです。
- マスク言語モデリング(MLM)と文順予測(SOP)の2つの目的で事前学習されています。
- Transformerのレイヤーを共有することで、小さなメモリフットプリントを実現しています。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers
💻 使用例
基本的な使用法
以下は、PyTorchでこのモデルを使用して与えられたテキストの特徴量を取得する方法です。
from transformers import AlbertTokenizer, AlbertModel
tokenizer = AlbertTokenizer.from_pretrained('cservan/multilingual-albert-base-cased-128k')
model = AlbertModel.from_pretrained("cservan/multilingual-albert-base-cased-128k")
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-128k')
model = TFAlbertModel.from_pretrained("cservan/multilingual-albert-base-cased-128k")
text = "Remplacez-moi par le texte en français que vous souhaitez."
encoded_input = tokenizer(text, return_tensors='tf')
output = model(encoded_input)
📚 ドキュメント
モデルの説明
mALBERTは、自己教師あり学習方式で16GBのフランス語ウィキペディアで事前学習されたTransformerモデルです。つまり、人間によるラベリングなしに生テキストのみを使用し、それらのテキストから入力とラベルを自動生成するプロセスで事前学習されています。具体的には、2つの目的で事前学習されています。
- マスク言語モデリング(MLM):文を入力として受け取り、モデルは入力の単語の15%をランダムにマスクし、そのマスクされた文全体をモデルに通して、マスクされた単語を予測する必要があります。これは、通常は単語を順番に見る従来の再帰型ニューラルネットワーク(RNN)や、内部的に未来のトークンをマスクするGPTのような自己回帰モデルとは異なり、文の双方向表現を学習することができます。
- 文順予測(SOP):mALBERTは、連続する2つのテキストセグメントの順序を予測することに基づく事前学習損失を使用しています。
このように、モデルは言語の内部表現を学習し、それを下流タスクに有用な特徴量として抽出することができます。例えば、ラベル付きの文のデータセットがある場合、mALBERTモデルが生成する特徴量を入力として標準的な分類器を学習させることができます。
mALBERTは、Transformerのレイヤーを共有することで、すべてのレイヤーが同じ重みを持つようになっています。繰り返しレイヤーを使用することで、小さなメモリフットプリントを実現していますが、計算コストは同じ数の隠れレイヤーを持つBERTのようなアーキテクチャと同程度です。
これはベースモデルの第2バージョンです。
このモデルの構成は以下の通りです。
属性 |
详情 |
モデルタイプ |
mALBERT Base Cased 128k |
繰り返しレイヤー数 |
12 |
埋め込み次元数 |
128 |
隠れ次元数 |
768 |
アテンションヘッド数 |
12 |
パラメータ数 |
11M |
語彙サイズ |
128k |
意図された用途と制限
このモデルは、主に文全体(潜在的にマスクされた)を使用して決定を行うタスク、例えばシーケンス分類、トークン分類、質問応答などでのファインチューニングを目的としています。テキスト生成のようなタスクには、GPT2のようなモデルを使用することをお勧めします。
トレーニングデータ
mALBERTモデルは、多言語ウィキペディアの13GBのデータ(リスト、テーブル、ヘッダーを除く)で事前学習されています。
トレーニング手順
前処理
テキストは小文字に変換され、SentencePieceを使用して語彙サイズ128,000でトークン化されます。モデルの入力は以下の形式になります。
[CLS] Sentence A [SEP] Sentence B [SEP]
トレーニング
mALBERTの手順はBERTのセットアップに従っています。
各文のマスク手順の詳細は以下の通りです。
- トークンの15%がマスクされます。
- 80%の場合、マスクされたトークンは
[MASK]
に置き換えられます。
- 10%の場合、マスクされたトークンは置き換えるトークンとは異なるランダムなトークンに置き換えられます。
- 残りの10%の場合、マスクされたトークンはそのまま残されます。
ツール
モデルを事前学習するために使用されたツールはこちらで入手できます。
評価結果
下流タスクでファインチューニングされた場合、ALBERTモデルは以下の結果を達成します。
Slot-filling:
モデル ⧹ タスク |
MMNLU |
MultiATIS++ |
CoNLL2003 |
MultiCoNER |
SNIPS |
MEDIA |
EnALBERT |
N/A |
N/A |
89.67 (0.34) |
42.36 (0.22) |
95.95 (0.13) |
N/A |
FrALBERT |
N/A |
N/A |
N/A |
N/A |
N/A |
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) |
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
📄 ライセンス
このモデルは、Apache-2.0ライセンスの下で提供されています。