🚀 bert-base-japanese-jsnli
本模型是 cl-tohoku/bert-base-japanese-v2 在 JSNLI 數據集上的微調版本。它在評估集上取得了以下結果:
🚀 快速開始
模型使用方法
簡單的零樣本分類管道
from transformers import pipeline
classifier = pipeline("zero-shot-classification", model="Formzu/bert-base-japanese-jsnli")
sequence_to_classify = "いつか世界を見る。"
candidate_labels = ['旅行', '料理', '踴り']
out = classifier(sequence_to_classify, candidate_labels, hypothesis_template="この例は{}です。")
print(out)
NLI 使用案例
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
device = torch.device("cuda") if torch.cuda.is_available() else torch.device("cpu")
model_name = "Formzu/bert-base-japanese-jsnli"
model = AutoModelForSequenceClassification.from_pretrained(model_name).to(device)
tokenizer = AutoTokenizer.from_pretrained(model_name)
premise = "いつか世界を見る。"
label = '旅行'
hypothesis = f'この例は{label}です。'
input = tokenizer.encode(premise, hypothesis, return_tensors='pt').to(device)
with torch.no_grad():
logits = model(input)["logits"][0]
probs = logits.softmax(dim=-1)
print(probs.cpu().numpy(), logits.cpu().numpy())
🔧 技術細節
訓練超參數
訓練過程中使用了以下超參數:
- 學習率:2e-05
- 訓練批次大小:32
- 評估批次大小:32
- 隨機種子:42
- 優化器:Adam(β1=0.9,β2=0.999,ε=1e-08)
- 學習率調度器類型:線性
- 訓練輪數:3.0
訓練結果
訓練損失 |
輪數 |
步數 |
驗證損失 |
準確率 |
0.4054 |
1.0 |
16657 |
0.2141 |
0.9216 |
0.3297 |
2.0 |
33314 |
0.2145 |
0.9236 |
0.2645 |
3.0 |
49971 |
0.2085 |
0.9288 |
框架版本
- Transformers 4.21.2
- Pytorch 1.12.1+cu116
- Datasets 2.4.0
- Tokenizers 0.12.1
📄 許可證
本項目採用 CC BY-SA 4.0 許可證。
📋 模型信息
屬性 |
詳情 |
模型類型 |
文本分類 |
訓練數據 |
JSNLI |
評估指標 |
準確率 |
標籤 |
zero-shot-classification、text-classification、nli、pytorch |