🚀 RobBERT: RoBERTaベースのオランダ語言語モデル
RobBERT は最先端のオランダ語BERTモデルです。これは大規模に事前学習された汎用オランダ語言語モデルで、微調整することで、あらゆるテキスト分類、回帰、またはタグ付けタスクに適応させることができます。そのため、多くの研究者や実践者によって、様々なオランダ語自然言語処理タスクに成功裏に使用されています。
🚀 クイックスタート
RobBERTはRoBERTaのアーキテクチャと事前学習プロセスを採用していますが、オランダ語のトークナイザーと学習データを使用しています。RoBERTaは元のBERTモデルの最適化バージョンであるため、RobBERTは従来のBERTよりも強力です。アーキテクチャが同じであるため、RoBERTaの微調整コードまたはHuggingFace Transformersライブラリを直接使用して、微調整と推論を行うことができます。
デフォルトでは、RobBERTは事前学習でのマスク言語モデルヘッドを保持しており、ゼロショットで文章中のマスクされた単語を埋めることができます。HuggingFaceのホストAPIを通じて無料で体験できます。また、以下の方法で予測ヘッドをカスタマイズすることもできます。
基礎モデルの呼び出しコードは以下の通りです。
from transformers import RobertaTokenizer, RobertaForSequenceClassification
tokenizer = RobertaTokenizer.from_pretrained("pdelobelle/robbert-v2-dutch-base")
model = RobertaForSequenceClassification.from_pretrained("pdelobelle/robbert-v2-dutch-base")
transformers v2.4.0
以降は、AutoTokenizerとAutoModelを代わりに使用でき、ほとんどのHuggingFaceのBERT微調整ノートブックと互換性があります。
✨ 主な機能
RobBERTは、以下のような様々なオランダ語自然言語処理タスクに成功裏に使用されています。
また、以下のタスクでほぼ最適な性能を達成しています。
\* 注:一部の評価はRobBERT-v1に基づいており、改良版のRobBERT-v2はすべてのテストで第1版のモデルよりも優れています
(このリストは網羅的ではありません。もしRobBERTを他のアプリケーションに使用した場合は、是非お知らせください!メールを送信するか、Pull Requestを提出して追加してください。)
📚 ドキュメント
より詳しい情報は、ブログ記事、論文、およびGitHubリポジトリを参照してください。
🔧 技術詳細
性能評価結果
詳細な実験の説明は論文に、コードはGitHubリポジトリに記載されています。
感情分析
オランダ語書評データセットを使用して、レビューの正負を予測します。
モデル |
正解率(%) |
ULMFiT |
93.8 |
BERTje |
93.0 |
RobBERT v2 |
95.1 |
Die/Dat共参照解消
EuroParlコーパスに基づいて、"die/dat"の穴埋め能力をテストします。
全データセットの微調整
モデル |
正解率(%) |
F1(%) |
LSTMベースライン |
- |
75.03 |
mBERT |
98.285 |
98.033 |
BERTje |
98.268 |
98.014 |
RobBERT v2 |
99.232 |
99.121 |
1万サンプルのみの微調整
小規模データのシナリオでは、RobBERTの優位性が顕著です。
モデル |
正解率(%) |
F1(%) |
mBERT |
92.157 |
90.898 |
BERTje |
93.096 |
91.279 |
RobBERT v2 |
97.816 |
97.514 |
ゼロショットマスク予測
モデル |
正解率(%) |
ZeroR |
66.70 |
mBERT |
90.21 |
BERTje |
94.94 |
RobBERT v2 |
98.75 |
品詞タグ付け
Lassy UDデータセットを使用します。
モデル |
正解率(%) |
Frog |
91.7 |
mBERT |
96.5 |
BERTje |
96.3 |
RobBERT v2 |
96.4 |
小規模データセットでの性能は特に優れています。

固有表現認識
CoNLL 2002評価スクリプトを使用します。
モデル |
F1(%) |
Frog |
57.31 |
mBERT |
90.94 |
BERT-NL |
89.7 |
BERTje |
88.3 |
RobBERT v2 |
89.08 |
事前学習の詳細
RoBERTaの学習スキームを採用し、OSCARコーパスのオランダ語部分(39GB/66億語/1.26億行のテキスト)を使用して事前学習を行いました。
モデルのアーキテクチャはRoBERTa-baseと一致しています。
- 12層の自己注意構造
- 12個のヘッド
- 1.17億の学習可能なパラメータ
- MLMタスクのみを使用(NSPタスクなし)
学習パラメータは以下の通りです。
- Adamオプティマイザー(lr=10^-6、1000回の線形ウォームアップ)
- β1=0.9、β2=0.98
- 重み減衰0.1
- dropout率0.1
ハードウェア構成は以下の通りです。
- 計算クラスター(4×Nvidia P100 GPU/ノードを動的に調整、最大20ノード)
- 固定バッチサイズ8192文
- 2エポック(約16kバッチ、3日間の学習時間)
限界と偏見の研究
論文では、以下のことが明らかになりました。
- ゼロショットモデルは、ほとんどの職業に対して、"hij"(彼)を予測する傾向があり、"zij"(彼女)を予測することは少ないです。

- 感情分析では、女性著者の肯定的な書評の識別正解率が男性よりも高いです。

実験の再現
詳細な手順はGitHubリポジトリのREADMEを参照してください。
名前の由来
マスク予測テスト(例:Mijn naam is bert)を通じて、モデルは常に自分自身を"RobBERT"と自称しています。この名前は以下の理由から選ばれました。
- 典型的なオランダ人名であり、言語属性を表しています。
- RoBERTaに似た発音で、基礎アーキテクチャを表しています。
- "rob"はオランダ語で"アザラシ"を意味します。
そのため、ロゴはシーサミストリートのBertスタイルのアザラシの形象にデザインされています。

📄 ライセンス
このプロジェクトはMITライセンスの下で公開されています。
謝辞と引用
このプロジェクトはPieter Delobelle、Thomas Winters、およびBettina Berendtによって開発されました。引用形式は以下の通りです。
@inproceedings{delobelle2020robbert,
title = "{R}ob{BERT}: a {D}utch {R}o{BERT}a-based {L}anguage {M}odel",
author = "Delobelle, Pieter and Winters, Thomas and Berendt, Bettina",
booktitle = "Findings of EMNLP 2020",
year = "2020",
pages = "3255--3265",
url = "https://www.aclweb.org/anthology/2020.findings-emnlp.292"
}