🚀 MoritzLaurer/DeBERTa-v3-base-mnli-fever-anli
このモデルは、763,913のNLI仮説-前提ペアから構成されるMultiNLI、Fever-NLI、Adversarial-NLI (ANLI) データセットで学習されました。このベースモデルは、ANLIベンチマークでほとんどの大規模モデルを上回っています。
🚀 クイックスタート
このモデルは、自然言語推論 (NLI) とゼロショット分類タスクに使用できます。以下に、モデルの使用方法の例を示します。
ゼロショット分類パイプラインの簡単な使用例
from transformers import pipeline
classifier = pipeline("zero-shot-classification", model="MoritzLaurer/DeBERTa-v3-base-mnli-fever-anli")
sequence_to_classify = "Angela Merkel is a politician in Germany and leader of the CDU"
candidate_labels = ["politics", "economy", "entertainment", "environment"]
output = classifier(sequence_to_classify, candidate_labels, multi_label=False)
print(output)
NLIの使用例
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
model_name = "MoritzLaurer/DeBERTa-v3-base-mnli-fever-anli"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
premise = "I first thought that I liked the movie, but upon second thought it was actually disappointing."
hypothesis = "The movie was good."
input = tokenizer(premise, hypothesis, truncation=True, return_tensors="pt")
output = model(input["input_ids"].to(device))
prediction = torch.softmax(output["logits"][0], -1).tolist()
label_names = ["entailment", "neutral", "contradiction"]
prediction = {name: round(float(pred) * 100, 1) for pred, name in zip(prediction, label_names)}
print(prediction)
✨ 主な機能
- このモデルは、MultiNLI、Fever-NLI、Adversarial-NLI (ANLI) データセットで学習され、自然言語推論 (NLI) とゼロショット分類タスクに適しています。
- ベースモデルは MicrosoftのDeBERTa-v3-base で、v3バリアントは異なる事前学習目的を含むことで以前のバージョンを大幅に上回っています。
- ANLIベンチマーク でほとんどの大規模モデルを上回っています。
📦 インストール
📚 ドキュメント
モデルの説明
このモデルは、763,913のNLI仮説-前提ペアから構成されるMultiNLI、Fever-NLI、Adversarial-NLI (ANLI) データセットで学習されました。ベースモデルは MicrosoftのDeBERTa-v3-base で、v3バリアントは異なる事前学習目的を含むことで以前のバージョンを大幅に上回っています (元の DeBERTa論文 の付録11を参照)。
最高の性能を得るために (ただし速度は低下します)、https://huggingface.co/MoritzLaurer/DeBERTa-v3-large-mnli-fever-anli-ling-wanli の使用をお勧めします。
学習データ
DeBERTa-v3-base-mnli-fever-anliは、763,913のNLI仮説-前提ペアから構成されるMultiNLI、Fever-NLI、Adversarial-NLI (ANLI) データセットで学習されました。
学習手順
DeBERTa-v3-base-mnli-fever-anliは、Hugging Faceのトレーナーを使用して以下のハイパーパラメータで学習されました。
training_args = TrainingArguments(
num_train_epochs=3, # 学習エポックの総数
learning_rate=2e-05,
per_device_train_batch_size=32, # 学習中のデバイスごとのバッチサイズ
per_device_eval_batch_size=32, # 評価時のバッチサイズ
warmup_ratio=0.1, # 学習率スケジューラのウォームアップステップ数
weight_decay=0.06, # 重み減衰の強度
fp16=True # 混合精度学習
)
評価結果
このモデルは、MultiNLIとANLIのテストセット、およびFever-NLIの開発セットを使用して評価されました。使用された指標は正解率です。
データセット |
正解率 |
mnli-m |
0.903 |
mnli-mm |
0.903 |
fever-nli |
0.777 |
anli-all |
0.579 |
anli-r3 |
0.495 |
🔧 技術詳細
このモデルのベースは MicrosoftのDeBERTa-v3-base で、v3バリアントは異なる事前学習目的を含むことで以前のバージョンを大幅に上回っています。具体的には、元の DeBERTa論文 の付録11を参照してください。
📄 ライセンス
このモデルはMITライセンスの下で提供されています。
Limitations and bias
潜在的なバイアスについては、元のDeBERTa論文とさまざまなNLIデータセットに関する文献を参照してください。
Cit