startificial/nlp-getting-started
Preview • Updated • 59
基于 bert-base-uncased 微调的英文推文二分类模型,判断一条推文是否关于真实灾难
(Kaggle 竞赛 Real or Not? NLP with Disaster Tweets,nlp-getting-started)。
| 指标 | 数值 |
|---|---|
| Accuracy | 0.8451 |
| F1 (binary) | 0.8168 |
| Precision | 0.8297 |
| Recall | 0.8043 |
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model_id = "Operaer/disaster-tweet-bert"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForSequenceClassification.from_pretrained(model_id)
model.eval()
text = "Forest fire near La Ronge Sask. Canada"
enc = tokenizer(text, truncation=True, padding=True,
max_length=128, return_tensors="pt")
with torch.no_grad():
logits = model(**enc).logits
pred = int(torch.argmax(logits, dim=1))
print("灾难推文" if pred == 1 else "非灾难推文")
train.py;交互式 Demo:app.py / Gradio Space。Base model
google-bert/bert-base-uncased