|
--- |
|
license: apache-2.0 |
|
tags: |
|
- generated_from_trainer |
|
datasets: |
|
- dair-ai/emotion |
|
metrics: |
|
- accuracy |
|
- f1 |
|
model-index: |
|
- name: distilbert-base-uncased-finetuned-emotion |
|
results: |
|
- task: |
|
name: Text Classification |
|
type: text-classification |
|
dataset: |
|
name: emotion |
|
type: emotion |
|
config: split |
|
split: validation |
|
args: split |
|
metrics: |
|
- name: Accuracy |
|
type: accuracy |
|
value: 0.9375 |
|
- name: F1 |
|
type: f1 |
|
value: 0.937890467332837 |
|
--- |
|
|
|
<!-- 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. --> |
|
|
|
# distilbert-base-uncased-finetuned-emotion |
|
|
|
This model is a fine-tuned version of [distilbert-base-uncased](https://huggingface.co/distilbert-base-uncased) on the emotion dataset. |
|
It achieves the following results on the evaluation set: |
|
- Loss: 0.1448 |
|
- Accuracy: 0.9375 |
|
- F1: 0.9379 |
|
|
|
## Model description |
|
|
|
DistilBERT is a transformers model, smaller and faster than BERT, which was pretrained on the same corpus in a |
|
self-supervised fashion, using the BERT base model as a teacher. This means it was pretrained on the raw texts only, |
|
with no humans labelling them in any way (which is why it can use lots of publicly available data) with an automatic |
|
process to generate inputs and labels from those texts using the BERT base model. More precisely, it was pretrained |
|
with three objectives: |
|
|
|
- Distillation loss: the model was trained to return the same probabilities as the BERT base model. |
|
- Masked language modeling (MLM): this is part of the original training loss of the BERT base model. When taking a |
|
sentence, the model randomly masks 15% of the words in the input then run the entire masked sentence through the |
|
model and has to predict the masked words. This is different from traditional recurrent neural networks (RNNs) that |
|
usually see the words one after the other, or from autoregressive models like GPT which internally mask the future |
|
tokens. It allows the model to learn a bidirectional representation of the sentence. |
|
- Cosine embedding loss: the model was also trained to generate hidden states as close as possible as the BERT base |
|
model. |
|
|
|
This way, the model learns the same inner representation of the English language than its teacher model, while being |
|
faster for inference or downstream tasks. |
|
|
|
## Intended uses & limitations |
|
[Emotion](https://huggingface.co/datasets/dair-ai/emotion) is a dataset of English Twitter messages with six basic emotions: anger, fear, joy, love, sadness, and surprise. This dataset was developed for the paper entitled "CARER: Contextualized Affect Representations for Emotion Recognition" (Saravia et al.) through noisy labels, annotated via distant |
|
supervision as in the paper"Twitter sentiment classification using distant supervision" (Go et al). |
|
|
|
The DistilBERT model was fine-tuned to this dataset, allowing for the classification of sentences into one of the six basic emotions (anger, fear, joy, love, sadness, and surprise). |
|
|
|
## Training and evaluation data |
|
|
|
More information needed |
|
|
|
## Training procedure |
|
|
|
### Training hyperparameters |
|
|
|
The following hyperparameters were used during training: |
|
- learning_rate: 5e-05 |
|
- train_batch_size: 64 |
|
- eval_batch_size: 64 |
|
- seed: 42 |
|
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08 |
|
- lr_scheduler_type: linear |
|
- num_epochs: 2 |
|
|
|
### Training results |
|
|
|
| Training Loss | Epoch | Step | Validation Loss | Accuracy | F1 | |
|
|:-------------:|:-----:|:----:|:---------------:|:--------:|:------:| |
|
| 0.5337 | 1.0 | 250 | 0.1992 | 0.927 | 0.9262 | |
|
| 0.1405 | 2.0 | 500 | 0.1448 | 0.9375 | 0.9379 | |
|
|
|
|
|
### Framework versions |
|
|
|
- Transformers 4.30.2 |
|
- Pytorch 2.0.0 |
|
- Datasets 2.1.0 |
|
- Tokenizers 0.13.3 |