Multi-label sentiment analysis of #MeToo movement tweets using transformer-based language models.

Within a year of the movement starting, the #MeToo hashtag had been used 19 million times. Simple positive/negative sentiment misses most of what is said. I framed the problem as multi-label classification across four tasks on the public MeTooMA dataset:
It's a hard problem. Labelled data is scarce, posts are short and noisy, figurative language and irony are common, and classes are heavily imbalanced. The best team in the BMGC 2020 challenge reached an average AUC of only 0.563.
I compared two augmentation strategies: MLSMOTE (Multilabel Synthetic Minority Oversampling) and synthetic tweets generated with GPT-3 for under-represented labels.


| Model | Accuracy | Weighted F1 |
|---|---|---|
| Best result from literature | 0.539 | n/a |
| DistilBERT | 0.453 | 0.418 |
| DistilBERT + MLSMOTE | 0.501 | 0.509 |
| GPT-3 Ada | 0.531 | 0.501 |
| GPT-3 Davinci | 0.561 | 0.520 |
| GPT-3 Davinci + augmented data | 0.824 | 0.816 |
| Training data | Acc. | Prec. | Recall | AUROC | F1 |
|---|---|---|---|---|---|
| MeTooMA only | 0.536 | 0.607 | 0.653 | 0.521 | 0.630 |
| MeTooMA + synthetic | 0.824 | 0.897 | 0.781 | 0.605 | 0.816 |
| Synthetic only | 0.968 | 0.987 | 0.933 | 0.975 | 0.966 |
The near-perfect synthetic-only scores come with a caveat: GPT-3's synthetic tweets express much stronger, clearer sentiment than real ones. Mixing synthetic and real data improved diversity and class balance while keeping the model grounded in real language.

Next steps include tracking how sentiment changes over time, extending the classifier to other platforms and movements such as #BlackLivesMatter, and using contextual models that pick up irony and implied meaning more reliably.