🚀 マルチリンガル + オランダ語SQuAD2.0
このモデルは、Googleの研究チームによって提供されるマルチリンガルモデルで、オランダ語の質問応答という下流タスクで微調整されています。
📚 言語モデルの詳細
言語モデル (bert-base-multilingual-cased):
12層、768隠れ層、12ヘッド、1億1000万のパラメータ。
Wikipediaの規模が最も大きい上位104言語の大文字小文字を区別するテキストで学習されています。
📦 下流タスクの詳細
mtranslate
Pythonモジュールを使用して、SQuAD2.0を機械翻訳しました。開始トークンを見つけるために、回答の直接翻訳を対応する段落で検索しました。文脈によって翻訳が異なるため(純粋な回答には文脈が欠けている)、回答がテキスト内に見つからないことがあり、質問応答の例が失われることがあります。これは、データセットにエラーが発生する潜在的な問題です。
データセット |
Q&A数 |
SQuAD2.0 Train |
130 K |
オランダ語SQuAD2.0 Train |
99 K |
SQuAD2.0 Dev |
12 K |
オランダ語SQuAD2.0 Dev |
10 K |
📊 モデルのベンチマーク
モデル |
EM/F1 |
回答あり (EM/F1) |
回答なし |
robBERT |
58.04/60.95 |
33.08/40.64 |
73.67 |
dutchBERT |
64.25/68.45 |
45.59/56.49 |
75.94 |
multiBERT |
67.38/71.36 |
47.42/57.76 |
79.88 |
🔧 モデルの学習
このモデルは、Tesla V100 GPU上で以下のコマンドを使用して学習されました。
export SQUAD_DIR=path/to/nl_squad
python run_squad.py
--model_type bert \
--model_name_or_path bert-base-multilingual-cased \
--do_train \
--do_eval \
--train_file $SQUAD_DIR/nl_squadv2_train_clean.json \
--predict_file $SQUAD_DIR/nl_squadv2_dev_clean.json \
--num_train_epochs 2 \
--max_seq_length 384 \
--doc_stride 128 \
--save_steps=8000 \
--output_dir ../../output \
--overwrite_cache \
--overwrite_output_dir
結果:
{'exact': 67.38028751680629, 'f1': 71.362297054268, 'total': 9669, 'HasAns_exact': 47.422126745435015, 'HasAns_f1': 57.761023151910734, 'HasAns_total': 3724, 'NoAns_exact': 79.88225399495374, 'NoAns_f1': 79.88225399495374, 'NoAns_total': 5945, 'best_exact': 67.53542248422795, 'best_exact_thresh': 0.0, 'best_f1': 71.36229705426837, 'best_f1_thresh': 0.0}
💻 使用例
基本的な使用法
from transformers import pipeline
qa_pipeline = pipeline(
"question-answering",
model="henryk/bert-base-multilingual-cased-finetuned-dutch-squad2",
tokenizer="henryk/bert-base-multilingual-cased-finetuned-dutch-squad2"
)
qa_pipeline({
'context': "Amsterdam is de hoofdstad en de dichtstbevolkte stad van Nederland.",
'question': "Wat is de hoofdstad van Nederland?"})
出力結果
{
"score": 0.83,
"start": 0,
"end": 9,
"answer": "Amsterdam"
}
📞 連絡先
オランダ語版のSQuADについて議論したい場合やアクセスしたい場合は、LinkedInを通じてご連絡ください。