nilc-nlp/assin2
Viewer • Updated • 9.45k • 1.01k • 15
Modelo multitask para Natural Language Inference (NLI) em português brasileiro, baseado no NorBERTo.
Treinado no ASSIN2 (Avaliação de Similaridade Semântica e Inferência Natural).
| Métrica | Valor |
|---|---|
| Accuracy | 96.4% |
| F1 Score | 96.4% |
| MAE (Similaridade) | 0.233 |
| Métrica | Valor |
|---|---|
| Accuracy | 90.60% |
| F1 Score | 90.60% |
| MAE (Similaridade) | 0.467 |
| Loss | 0.804 |
| Epoch | Train Loss | Val Loss | Accuracy | F1 | Sim MAE |
|---|---|---|---|---|---|
| 1 | 0.524 | 0.488 | 90.2% | 90.2% | 0.366 |
| 2 | 0.329 | 0.318 | 94.6% | 94.6% | 0.284 |
| 3 | 0.174 | 0.283 | 95.8% | 95.8% | 0.259 |
| 4 | 0.134 | 0.253 | 96.4% | 96.4% | 0.239 |
| 5 | 0.064 | 0.266 | 96.4% | 96.4% | 0.233 |
from transformers import AutoTokenizer
from huggingface_hub import hf_hub_download
import onnxruntime as ort
import numpy as np
tokenizer = AutoTokenizer.from_pretrained(
"palaciodata/NorBERTo-base-NLI-Multitask"
)
model_path = hf_hub_download(
repo_id="palaciodata/NorBERTo-base-NLI-Multitask",
filename="model.onnx"
)
session = ort.InferenceSession(model_path)
premissa = "Uma criança risonha está segurando uma pistola de água e sendo espirrada com água"
hipotese = "Uma criança está segurando uma pistola de água"
inputs = tokenizer(
premissa,
hipotese,
return_tensors="np",
max_length=256,
truncation=True,
padding="max_length"
)
logits, similarity = session.run(
None,
{
"input_ids": inputs["input_ids"].astype(np.int64),
"attention_mask": inputs["attention_mask"].astype(np.int64),
}
)
classe = np.argmax(logits, axis=1)[0]
print(
f"Classe: {classe}, Similaridade: {float(similarity[0]):.3f}"
)
Base model
Itau-Unibanco/NorBERTo-base