モデル概要
モデル特徴
モデル能力
使用事例
🚀 Albertina 100M PTBR
Albertina 100M PTBR は、ブラジルのアメリカン・ポルトガル語向けの大規模言語モデルです。 このモデルは、Transformerニューラルアーキテクチャに基づくBERTファミリーのエンコーダで、DeBERTaモデルをベースに開発され、この言語において高い性能を発揮します。また、無料で配布され、許容範囲の広いライセンスの下で提供されています。
🚀 クイックスタート
このモデルは、マスク言語モデリングのパイプラインで直接使用できます。
>>> from transformers import pipeline
>>> unmasker = pipeline('fill-mask', model='PORTULAN/albertina-ptbr-base')
>>> unmasker("A culinária brasileira é rica em sabores e [MASK], tornando-se um dos maiores patrimônios do país.")
[{'score': 0.9391396045684814, 'token': 14690, 'token_str': ' costumes', 'sequence': 'A culinária brasileira é rica em sabores e costumes, tornando-se um dos maiores patrimônios do país.'},
{'score': 0.04568921774625778, 'token': 29829, 'token_str': ' cores', 'sequence': 'A culinária brasileira é rica em sabores e cores, tornando-se um dos maiores patrimônios do país.'},
{'score': 0.004134135786443949, 'token': 6696, 'token_str': ' drinks', 'sequence': 'A culinária brasileira é rica em sabores e drinks, tornando-se um dos maiores patrimônios do país.'},
{'score': 0.0009097770671360195, 'token': 33455, 'token_str': ' nuances', 'sequence': 'A culinária brasileira é rica em sabores e nuances, tornando-se um dos maiores patrimônios do país.'},
{'score': 0.0008549498743377626, 'token': 606, 'token_str': ' comes', 'sequence': 'A culinária brasileira é rica em sabores e comes, tornando-se um dos maiores patrimônios do país.'}]
特定のタスクに対して微調整することもできます。
>>> from transformers import AutoTokenizer, AutoModelForSequenceClassification, TrainingArguments, Trainer
>>> from datasets import load_dataset
>>> model = AutoModelForSequenceClassification.from_pretrained("PORTULAN/albertina-ptbr-base", num_labels=2)
>>> tokenizer = AutoTokenizer.from_pretrained("PORTULAN/albertina-ptbr-base")
>>> dataset = load_dataset("PORTULAN/glue-ptpt", "rte")
>>> def tokenize_function(examples):
... return tokenizer(examples["sentence1"], examples["sentence2"], padding="max_length", truncation=True)
>>> tokenized_datasets = dataset.map(tokenize_function, batched=True)
>>> training_args = TrainingArguments(output_dir="albertina-ptpt-rte", evaluation_strategy="epoch")
>>> trainer = Trainer(
... model=model,
... args=training_args,
... train_dataset=tokenized_datasets["train"],
... eval_dataset=tokenized_datasets["validation"],
... )
>>> trainer.train()
✨ 主な機能
- 高性能:DeBERTaモデルをベースに開発され、ポルトガル語において高い性能を発揮します。
- 無料配布:MITライセンスの下で無料で配布されています。
- 多様なタスク対応:下流タスクにおいて評価され、様々なタスクに対応できます。
📦 インストール
このモデルは、Hugging FaceのTransformersライブラリを使用して簡単にインストールできます。
pip install transformers
💻 使用例
基本的な使用法
マスク言語モデリングのパイプラインで直接使用する例です。
>>> from transformers import pipeline
>>> unmasker = pipeline('fill-mask', model='PORTULAN/albertina-ptbr-base')
>>> unmasker("A culinária brasileira é rica em sabores e [MASK], tornando-se um dos maiores patrimônios do país.")
高度な使用法
特定のタスクに対して微調整する例です。
>>> from transformers import AutoTokenizer, AutoModelForSequenceClassification, TrainingArguments, Trainer
>>> from datasets import load_dataset
>>> model = AutoModelForSequenceClassification.from_pretrained("PORTULAN/albertina-ptbr-base", num_labels=2)
>>> tokenizer = AutoTokenizer.from_pretrained("PORTULAN/albertina-ptbr-base")
>>> dataset = load_dataset("PORTULAN/glue-ptpt", "rte")
>>> def tokenize_function(examples):
... return tokenizer(examples["sentence1"], examples["sentence2"], padding="max_length", truncation=True)
>>> tokenized_datasets = dataset.map(tokenize_function, batched=True)
>>> training_args = TrainingArguments(output_dir="albertina-ptpt-rte", evaluation_strategy="epoch")
>>> trainer = Trainer(
... model=model,
... args=training_args,
... train_dataset=tokenized_datasets["train"],
... eval_dataset=tokenized_datasets["validation"],
... )
>>> trainer.train()
📚 ドキュメント
モデル概要
このモデルカードは、100Mパラメータ、12層、隠れ層サイズ768の Albertina 100M PTBR を対象としています。 Albertina-PT-BR baseは、MITライセンスの下で配布されています。 DeBERTaは、MITライセンスの下で配布されています。
訓練データ
Albertina P100M PTBR は、OSCAR データセットから選択された37億トークンの文書を使用して訓練されました。 OSCARデータセットは、ポルトガル語を含む100以上の言語の文書を含み、文献で広く使用されています。これは、Common Crawl データセットから選択された結果で、クロール許可を示すメタデータを持つページのみを保持し、重複排除を行い、一部の定型文を削除するなどのフィルタリングが行われています。 ポルトガル語のバリエーションを区別しないため、メタデータがブラジルのトップレベルドメインを示す文書のみを保持する追加のフィルタリングを行いました。OSCARの2023年1月版を使用し、これは2022年11月/12月版のCommon Crawlに基づいています。
前処理
BLOOM前処理 パイプラインを使用して、PT-BRコーパスをフィルタリングしました。 構文構造を乱すため、ストップワードのデフォルトフィルタリングはスキップし、コーパスがポルトガル語として事前選択されているため、言語識別のフィルタリングもスキップしました。
訓練
コードベースとして、英語用の DeBERTa V1 base を使用しました。 Albertina 100M PTBR を訓練するために、データセットを元のDeBERTaトークナイザでトークナイズし、128トークンのシーケンストランケーションと動的パディングを行いました。 モデルは、利用可能な最大メモリ容量を使用して訓練され、バッチサイズは3072サンプル(GPUあたり192サンプル)となりました。 学習率は1e-5で線形減衰を使用し、10kのウォームアップステップを設定しました。 モデルは合計150エポックで訓練され、約180kステップとなりました。 モデルは、16個のGPU、96個のvCPU、1.360GBのRAMを持つGoogle Cloud A2 VMsのa2-megagpu-16gbで1日間訓練されました。
評価
ベースモデルバージョンは、下流タスクで評価されました。具体的には、広く使用されている GLUEベンチマーク の一部のタスクに使用される英語データセットをPTBRに翻訳したものを使用して評価されました。
GLUEタスクの翻訳
PLUE(ポルトガル語理解評価)を使用しました。これは、GLUEを PT-BR に自動翻訳したデータセットです。 PLUEの中から4つのタスクを対象としています。
- 2つの類似性タスク:2つの文が互いのパラフレーズであるかを検出するMRPCと、意味的なテキスト類似性を評価するSTS-B。
- 2つの推論タスク:テキストの含意を認識するRTEと、照応と自然言語推論を行うWNLI。
モデル | RTE (Accuracy) | WNLI (Accuracy) | MRPC (F1) | STS-B (Pearson) |
---|---|---|---|---|
Albertina 900M PTBR No-brWaC | 0.7798 | 0.5070 | 0.9167 | 0.8743 |
Albertina 900M PTBR | 0.7545 | 0.4601 | 0.9071 | 0.8910 |
Albertina 100M PTBR | 0.6462 | 0.5493 | 0.8779 | 0.8501 |
🔧 技術詳細
このモデルは、Transformerニューラルアーキテクチャに基づくBERTファミリーのエンコーダで、DeBERTaモデルをベースに開発されています。 モデルのパラメータ数は100M、層数は12、隠れ層サイズは768です。
📄 ライセンス
このモデルは、MITライセンスの下で配布されています。詳細については、MIT license を参照してください。
引用
このモデルを使用または引用する場合は、以下の 論文 を引用してください。
@misc{albertina-pt-fostering,
title={Fostering the Ecosystem of Open Neural Encoders
for Portuguese with Albertina PT-* family},
author={Rodrigo Santos and João Rodrigues and Luís Gomes
and João Silva and António Branco
and Henrique Lopes Cardoso and Tomás Freitas Osório
and Bernardo Leite},
year={2024},
eprint={2403.01897},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
謝辞
ここで報告されている研究は、一部が以下の支援を受けています。
- PORTULAN CLARIN—言語科学技術の研究インフラストラクチャ。Lisboa 2020、Alentejo 2020、FCT—Fundação para a Ciência e Tecnologiaによる助成金PINFRA/22117/2016の下で資金提供されています。
- 研究プロジェクトALBERTINA - ポルトガル語とAIのための基礎エンコーダモデル。FCT—Fundação para a Ciência e Tecnologiaによる助成金CPCA-IAC/AV/478394/2022の下で資金提供されています。
- イノベーションプロジェクトACCELERAT.AI - 多言語インテリジェントコンタクトセンター。IAPMEI, I.P. - Agência para a Competitividade e Inovaçãoによる助成金C625734525-00462629(Plano de Recuperação e Resiliência、call RE-C05-i01.01 – Agendas/Alianças Mobilizadoras para a Reindustrialização)の下で資金提供されています。
- LIACC - 人工知能とコンピュータサイエンスの研究室。FCT—Fundação para a Ciência e Tecnologiaによる助成金FCT/UID/CEC/0027/2020の下で資金提供されています。



