Downloads · 30 days
4
15% of all-time downloads
Vandita/DistilBERT-SarcOji-KD-v2
DistilBERT-SarcOji-KD-v2 is a text classification model from Vandita. Use it when you need a label for a piece of text. The card lists the license as apache-2.0.
distilbert student fine-tuned on SarcOji with sarcasm-aware emoji embeddings injected directly into the token-embedding matrix, distilled from Vandita/Bert-finetuned-Sarc.
Downloads · 30 days
4
15% of all-time downloads
All-time downloads
26
Public
Parameters
68.1M
272 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors272 MB · 100%
From the Hugging Face model README
distilbert student fine-tuned on SarcOji with sarcasm-aware emoji embeddings injected
directly into the token-embedding matrix, distilled from Vandita/Bert-finetuned-Sarc.
| split | accuracy | precision | recall | F1 | MCC | ROC-AUC |
|---|---|---|---|---|---|---|
| validation | 0.8832 | 0.8550 | 0.8430 | 0.8490 | 0.7538 | 0.9531 |
| SarcOjiTest1 | 0.6606 | 0.7545 | 0.5257 | 0.6196 | 0.3482 | 0.7489 |
| SarcOjiTest2 | 0.7275 | 0.4455 | 0.3721 | 0.4055 | 0.2321 | 0.6637 |
SarcOjiTest2 is ~75/25 negative-skewed, so its accuracy is not comparable to Test1's — MCC and ROC-AUC are the meaningful columns there.
Hinton et al. (2015): L = α·T²·KL(teacher‖student) + (1−α)·CE, with T = 3,
α = 0.5. The T² factor is applied, so soft-target gradients do not shrink as T
rises.
1444 emoji tokens added to the tokenizer (vocab
30522 → 31959). Each new row of the
768-d embedding matrix was initialised from a 300-d sarcasm-aware
emoji vector using concat-mean. Remaining dimensions hold the mean of the
original vocabulary embeddings rather than zeros, so new tokens are not anchored to the
origin.
Because the emoji are part of the vocabulary, this is a standard HuggingFace model — no custom architecture, no custom loader.
from transformers import AutoModelForSequenceClassification, AutoTokenizer
tok = AutoTokenizer.from_pretrained("Vandita/DistilBERT-SarcOji-KD-v2")
model = AutoModelForSequenceClassification.from_pretrained("Vandita/DistilBERT-SarcOji-KD-v2")
SarcOji, 80:20 stratified split. Duplicates retained; identical texts were kept on one side of the split so no text appears in both train and validation. Evaluated on SarcOjiTest1 and SarcOjiTest2 in full.