🚀 バングラ語BERTベースモデル
このバングラ語BERTは、バングラ語の事前学習言語モデルです。これは、BERTで説明されているマスク言語モデリングを使用して開発され、現在はhuggingfaceモデルハブで利用可能です。
Bangla-Bert-Baseは、バングラ語の事前学習言語モデルで、BERTで説明されているマスク言語モデリングを使用しています。そのGitHubのリポジトリも参照できます。
✨ 主な機能
- バングラ語の事前学習言語モデルで、マスク言語モデリングを使用。
- バングラ語の分類タスクや下流タスクで、最先端の結果を達成。
📦 インストール
このREADMEには具体的なインストール手順が記載されていないため、このセクションをスキップします。
💻 使用例
基本的な使用法
from transformers import AutoTokenizer, AutoModel
bnbert_tokenizer = AutoTokenizer.from_pretrained("sagorsarker/bangla-bert-base")
text = "আমি বাংলায় গান গাই।"
bnbert_tokenizer.tokenize(text)
高度な使用法
from transformers import BertForMaskedLM, BertTokenizer, pipeline
model = BertForMaskedLM.from_pretrained("sagorsarker/bangla-bert-base")
tokenizer = BertTokenizer.from_pretrained("sagorsarker/bangla-bert-base")
nlp = pipeline('fill-mask', model=model, tokenizer=tokenizer)
for pred in nlp(f"আমি বাংলায় {nlp.tokenizer.mask_token} গাই।"):
print(pred)
📚 ドキュメント
事前学習コーパスの詳細
コーパスは2つの主要なソースからダウンロードされました。
これらのコーパスをダウンロードした後、Bert形式に前処理しました。つまり、1行に1文と、新しいドキュメントのための余分な改行です。
sentence 1
sentence 2
sentence 1
sentence 2
語彙の構築
語彙サイズ102025でバングラ語のsentencepieceモデルを学習するために、BNLPパッケージを使用しました。出力された語彙ファイルをBert形式に前処理しました。
最終的な語彙ファイルは、https://github.com/sagorbrur/bangla-bertとhuggingfaceモデルハブにもあります。
学習の詳細
- Bangla-Bertは、Google BERTのGitHubリポジトリ(https://github.com/google-research/bert) で提供されているコードで学習されました。
- 現在リリースされているモデルは、bert-base-uncasedモデルアーキテクチャ(12層、768隠れ層、12ヘッド、1億1000万パラメータ)に従っています。
- 総学習ステップ数: 100万
- モデルは、単一のGoogle Cloud GPUで学習されました。
評価結果
LM評価結果
100万ステップの学習後の評価結果は次の通りです。
global_step = 1000000
loss = 2.2406516
masked_lm_accuracy = 0.60641736
masked_lm_loss = 2.201459
next_sentence_accuracy = 0.98625
next_sentence_loss = 0.040997364
perplexity = numpy.exp(2.2406516) = 9.393331287442784
Loss for final step: 2.426227
下流タスク評価結果
分類タスクの評価結果を提供してくれたNick Doironに大きな感謝を申し上げます。
彼は分類タスクにBengali Classification Benchmarkデータセットを使用しました。
NickのBengali electraと多言語BERTと比較して、Bangla BERT Baseは最先端の結果を達成しています。
こちらが評価スクリプトです。
モデル |
感情分析 |
ヘイトスピーチタスク |
ニューストピックタスク |
平均 |
mBERT |
68.15 |
52.32 |
72.27 |
64.25 |
Bengali Electra |
69.19 |
44.84 |
82.33 |
65.45 |
Bangla BERT Base |
70.37 |
71.83 |
89.19 |
77.13 |
Bangla-BERT-Base
を、Wikiannのバングラ語NERデータセットで、他のベンチマーク3つのモデル(mBERT、XLM-R、Indic-BERT)とともに評価しました。
これらのモデルを5エポック学習した後、Bangla-BERT-Base
は3位、mBERT
は1位、XML-R
は2位を獲得しました。
すべての4つのモデルは、transformers-token-classificationノートブックで学習されました。
すべてのモデルの評価結果は、こちらで確認できます。
また、以下の論文リストもチェックできます。彼らはこのモデルを自分たちのデータセットで使用しています。
注意: このモデルを任意のNLPタスクで使用する場合は、評価結果を私たちと共有してください。ここに追加します。
制限とバイアス
このセクションに具体的な内容がないため、スキップします。
🔧 技術詳細
このセクションに具体的な技術詳細がないため、スキップします。
📄 ライセンス
このモデルはMITライセンスの下で提供されています。
作者
Sagor Sarker
参照
- https://github.com/google-research/bert
引用
このモデルが役に立った場合は、引用してください。
@misc{Sagor_2020,
title = {BanglaBERT: Bengali Mask Language Model for Bengali Language Understanding},
author = {Sagor Sarker},
year = {2020},
url = {https://github.com/sagorbrur/bangla-bert}
}