|
--- |
|
language: "hr" |
|
|
|
tags: |
|
- text-classification |
|
- sentiment-analysis |
|
|
|
widget: |
|
- text: "Poštovani potpredsjedničke Vlade i ministre hrvatskih branitelja, mislite li da ste zapravo iznevjerili svoje suborce s kojima ste 555 dana prosvjedovali u šatoru protiv tadašnjih dužnosnika jer ste zapravo donijeli zakon koji je neprovediv, a birali ste si suradnike koji nemaju etički integritet." |
|
--- |
|
# bcms-bertic-parlasent-bcs-ter |
|
|
|
Ternary text classification model based on [`classla/bcms-bertic`](https://huggingface.co/classla/bcms-bertic) and fine-tuned on the BCS Political Sentiment dataset (sentence-level data). |
|
|
|
This classifier classifies text into only three categories: Negative, Neutral, and Positive. For the binary classifier (Negative, Other) check [this model](https://huggingface.co/classla/bcms-bertic-parlasent-bcs-bi ). |
|
|
|
For details on the dataset and the finetuning procedure, please see [this paper](https://arxiv.org/abs/2206.00929). |
|
|
|
## Fine-tuning hyperparameters |
|
|
|
Fine-tuning was performed with `simpletransformers`. Beforehand a brief sweep for the optimal number of epochs was performed and the presumed best value was 9. Other arguments were kept default. |
|
|
|
```python |
|
|
|
model_args = { |
|
"num_train_epochs": 9 |
|
} |
|
``` |
|
|
|
## Performance |
|
|
|
The same pipeline was run with two other transformer models and `fasttext` for comparison. Macro F1 scores were recorded for each of the 6 fine-tuning sessions and post festum analyzed. |
|
|
|
| model | average macro F1 | |
|
|---------------------------------|--------------------| |
|
| bcms-bertic-parlasent-bcs-ter | 0.7941 ± 0.0101 ** | |
|
| EMBEDDIA/crosloengual-bert | 0.7709 ± 0.0113 | |
|
| xlm-roberta-base | 0.7184 ± 0.0139 | |
|
| fasttext + CLARIN.si embeddings | 0.6312 ± 0.0043 | |
|
|
|
Two best performing models have been compared with the Mann-Whitney U test to calculate p-values (** denotes p<0.01). |
|
|
|
|
|
## Use example with `simpletransformers==0.63.7` |
|
|
|
```python |
|
from simpletransformers.classification import ClassificationModel |
|
|
|
model = ClassificationModel("electra", "classla/bcms-bertic-parlasent-bcs-ter") |
|
|
|
predictions, logits = model.predict([ |
|
"Vi niste normalni", |
|
"Đački autobusi moraju da voze svaki dan", |
|
"Ovo je najbolji zakon na svetu", |
|
] |
|
) |
|
|
|
predictions |
|
# Output: array([0, 1, 2]) |
|
|
|
[model.config.id2label[i] for i in predictions] |
|
# Output: ['Negative', 'Neutral', 'Positive'] |
|
``` |
|
|
|
## Citation |
|
|
|
If you use the model, please cite the following paper on which the original model is based: |
|
``` |
|
@inproceedings{ljubesic-lauc-2021-bertic, |
|
title = "{BERT}i{\'c} - The Transformer Language Model for {B}osnian, {C}roatian, {M}ontenegrin and {S}erbian", |
|
author = "Ljube{\v{s}}i{\'c}, Nikola and Lauc, Davor", |
|
booktitle = "Proceedings of the 8th Workshop on Balto-Slavic Natural Language Processing", |
|
month = apr, |
|
year = "2021", |
|
address = "Kiyv, Ukraine", |
|
publisher = "Association for Computational Linguistics", |
|
url = "https://www.aclweb.org/anthology/2021.bsnlp-1.5", |
|
pages = "37--42", |
|
} |
|
``` |
|
|
|
|
|
and the paper describing the dataset and methods for the current finetuning: |
|
|
|
``` |
|
@misc{https://doi.org/10.48550/arxiv.2206.00929, |
|
doi = {10.48550/ARXIV.2206.00929}, |
|
|
|
url = {https://arxiv.org/abs/2206.00929}, |
|
|
|
author = {Mochtak, Michal and Rupnik, Peter and Ljubešič, Nikola}, |
|
|
|
keywords = {Computation and Language (cs.CL), FOS: Computer and information sciences, FOS: Computer and information sciences}, |
|
|
|
title = {The ParlaSent-BCS dataset of sentiment-annotated parliamentary debates from Bosnia-Herzegovina, Croatia, and Serbia}, |
|
|
|
publisher = {arXiv}, |
|
|
|
year = {2022}, |
|
|
|
copyright = {Creative Commons Attribution Share Alike 4.0 International} |
|
} |
|
``` |