Emotion Classification Model
Model Description
This model fine-tunes DistilBERT for multi-class emotion classification on the dair-ai/emotion
dataset.
The model is designed to classify text into one of six emotions: sadness, joy, love, anger, fear, or surprise.
It can be used in applications requiring emotional analysis in English text.
Training and Evaluation
- Training Dataset:
dair-ai/emotion
(16,000 examples) - Training Time: 8 minutes and 51 seconds
- Training Hyperparameters:
- Learning Rate:
3e-5
- Batch Size:
32
- Epochs:
4
- Weight Decay:
0.01
- Learning Rate:
Training results
Training Loss | Epoch | Step | Validation Loss | Val. Accuracy |
---|---|---|---|---|
0.5164 | 1.0 | 500 | 0.1887 | 0.9275 |
0.1464 | 2.0 | 1000 | 0.1487 | 0.9345 |
0.0994 | 3.0 | 1500 | 0.1389 | 0.94 |
0.0701 | 4.0 | 2000 | 0.1479 | 0.94 |
- Overall Training Loss: 0.2081
- Test Accuracy: 100% accuracy on the 10 examples tested. Confidence scores ranged from 90% to 100%.
Usage
from transformers import pipeline
classifier = pipeline("text-classification", model="Zoopa/emotion-classification-model")
text = "I am so happy today!"
result = classifier(text)
print(result)
Limitations
- The model only supports English.
- The training dataset may contain biases, affecting model predictions on test data.
- Edge Cases like mixed emotions might reduce accuracy.
- Downloads last month
- 26