🚀 BERTugues Base (aka "BERTugues-base-portuguese-cased")
BERTuguesは、ポルトガル語用に事前学習されたBERTモデルです。Masked Language Modeling (MLM) とNext Sentence Prediction (NSP) を目的として、大量のポルトガル語テキストを用いて訓練されています。
🚀 クイックスタート
BERTuguesは、BERTの元論文に沿って事前学習され、Masked Language Modeling (MLM) とNext Sentence Prediction (NSP) を100万ステップで行い、20GB以上のテキストを使用しています。詳細は公開された論文を参照してください。
✨ 主な機能
トークナイザの改善
- ポルトガル語で使用されない文字の削除:Bertimbauでは、29794トークンのうち7000以上が東洋語や特殊文字を含んでいますが、BERTuguesではトークナイザの訓練前にこれらの文字を削除しています。
- 主要な絵文字の追加:Wikipediaのテキストには絵文字が少ないため、トークンに含まれる絵文字の数も少なくなっています。BERTuguesでは、トークナイザに主要な絵文字を追加しています。
- BrWACテキストの品質フィルタリング:Gopherモデルの論文で提案されたヒューリスティックモデルに基づいて、BrWACのテキストを品質フィルタリングしています。
性能向上
モデル |
IMDB (F1) |
STJ (F1) |
PJERJ (F1) |
TJMS (F1) |
平均F1 |
BERT Multilinguagem |
72.0% |
30.4% |
63.8% |
65.0% |
57.8% |
Bertimbau-Base |
82.2% |
35.6% |
63.9% |
71.2% |
63.2% |
Bertimbau-Large |
85.3% |
43.0% |
63.8% |
74.0% |
66.5% |
BERTugues-Base |
84.0% |
45.2% |
67.5% |
70.0% |
66.7% |
BERTuguesは、Bertimbau-baseに比べて4つのタスクのうち3つで優れており、Bertimbau-Large(パラメータが3倍多く、計算コストが高いモデル)に比べて4つのタスクのうち2つで優れています。
📦 インストール
このREADMEには具体的なインストール手順が記載されていないため、このセクションをスキップします。
💻 使用例
基本的な使用法
マスクされた単語の予測 (Masked Language Modeling)
from transformers import BertTokenizer, BertForMaskedLM, pipeline
model = BertForMaskedLM.from_pretrained("ricardoz/BERTugues-base-portuguese-cased")
tokenizer = BertTokenizer.from_pretrained("ricardoz/BERTugues-base-portuguese-cased", do_lower_case=False)
pipe = pipeline('fill-mask', model=model, tokenizer=tokenizer, top_k = 3)
pipe('[CLS] Eduardo abriu os [MASK], mas não quis se levantar. Ficou deitado e viu que horas eram.')
文章の埋め込みの作成
from transformers import BertTokenizer, BertModel, pipeline
import torch
model = BertModel.from_pretrained("ricardoz/BERTugues-base-portuguese-cased")
tokenizer = BertTokenizer.from_pretrained("ricardoz/BERTugues-base-portuguese-cased", do_lower_case=False)
input_ids = tokenizer.encode('[CLS] Eduardo abriu os olhos, mas não quis se levantar. Ficou deitado e viu que horas eram.', return_tensors='pt')
with torch.no_grad():
last_hidden_state = model(input_ids).last_hidden_state[:, 0]
last_hidden_state
📚 ドキュメント
BERTuguesの詳細な情報については、GitHubリポジトリを参照してください。
🔧 技術詳細
このREADMEには具体的な技術詳細が記載されていないため、このセクションをスキップします。
📄 ライセンス
このモデルのライセンスは"other"です。
引用
もしあなたがBERTuguesを論文や出版物で使用する場合は、以下のように引用してください。
@article{Zago2024bertugues,
title = {BERTugues: A Novel BERT Transformer Model Pre-trained for Brazilian Portuguese},
volume = {45},
url = {https://ojs.uel.br/revistas/uel/index.php/semexatas/article/view/50630},
DOI = {10.5433/1679-0375.2024.v45.50630},
journal = {Semina: Ciências Exatas e Tecnológicas},
author = {Mazza Zago, Ricardo and Agnoletti dos Santos Pedotti, Luciane},
year = {2024},
month = {Dec.},
pages = {e50630}
}