nfliu's picture
Add inference example
9f94e92
|
raw
history blame
3.18 kB
---
tags:
- generated_from_trainer
datasets:
- boolq
metrics:
- accuracy
model-index:
- name: MiniLMv2-L6-H768-distilled-from-RoBERTa-Large_boolq
results:
- task:
name: Text Classification
type: text-classification
dataset:
name: boolq
type: boolq
config: default
split: validation
args: default
metrics:
- name: Accuracy
type: accuracy
value: 0.7379204892966361
---
<!-- This model card has been generated automatically according to the information the Trainer had access to. You
should probably proofread and complete it, then remove this comment. -->
# MiniLMv2-L6-H768-distilled-from-RoBERTa-Large_boolq
This model is a fine-tuned version of [nreimers/MiniLMv2-L6-H768-distilled-from-RoBERTa-Large](https://huggingface.co/nreimers/MiniLMv2-L6-H768-distilled-from-RoBERTa-Large) on the boolq dataset.
It achieves the following results on the evaluation set:
- Loss: 0.5417
- Accuracy: 0.7379
## Inference Example
```
import torch
from transformers import AutoModelForSequenceClassification, AutoTokenizer
model = AutoModelForSequenceClassification.from_pretrained("nfliu/MiniLMv2-L6-H768-distilled-from-RoBERTa-Large_boolq")
tokenizer = AutoTokenizer.from_pretrained("nfliu/MiniLMv2-L6-H768-distilled-from-RoBERTa-Large_boolq")
# Each example is a (question, context) pair.
examples = [
("Lake Tahoe is in California", "Lake Tahoe is a popular tourist spot in California."),
("Water is wet", "Contrary to popular belief, water is not wet.")
]
encoded_input = tokenizer(examples, padding=True, truncation=True, return_tensors="pt")
with torch.no_grad():
model_output = model(**encoded_input)
probabilities = torch.softmax(model_output.logits, dim=-1).cpu().tolist()
probability_no = [round(prob[0], 2) for prob in probabilities]
probability_yes = [round(prob[1], 2) for prob in probabilities]
for example, p_no, p_yes in zip(examples, probability_no, probability_yes):
print(f"Question: {example[0]}")
print(f"Context: {example[1]}")
print(f"p(No | question, context): {p_no}")
print(f"p(Yes | question, context): {p_yes}")
print()
```
## Model description
More information needed
## Intended uses & limitations
More information needed
## Training and evaluation data
More information needed
## Training procedure
### Training hyperparameters
The following hyperparameters were used during training:
- learning_rate: 1e-05
- train_batch_size: 32
- eval_batch_size: 8
- seed: 42
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: linear
- num_epochs: 5.0
### Training results
| Training Loss | Epoch | Step | Validation Loss | Accuracy |
|:-------------:|:-----:|:----:|:---------------:|:--------:|
| No log | 0.85 | 250 | 0.6579 | 0.6190 |
| 0.6352 | 1.69 | 500 | 0.5907 | 0.6841 |
| 0.6352 | 2.54 | 750 | 0.5613 | 0.7196 |
| 0.535 | 3.39 | 1000 | 0.5444 | 0.7373 |
| 0.535 | 4.24 | 1250 | 0.5417 | 0.7379 |
### Framework versions
- Transformers 4.30.2
- Pytorch 2.0.1+cu117
- Datasets 2.14.4
- Tokenizers 0.13.3