transformers pytorch bert text-classification generated_from_trainer ar dataset:msda arxiv:2402.03477 base_model:aubmindlab/bert-base-arabertv2 base_model:finetune:aubmindlab/bert-base-arabertv2 license:mit autotrain_compatible region:us
---
base_model: aubmindlab/bert-base-arabertv2
datasets:
- msda
language:
- ar
license: mit
metrics:
- accuracy
pipeline_tag: text-classification
tags:
- generated_from_trainer
inference: false
model-index:
- name: Adv_BERT_msda
  results: []
---

<!-- 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. -->

# Adv_BERT_msda

This model is an **adversarially fine-tuned**  version of [aubmindlab/bert-base-arabertv2](https://huggingface.co/aubmindlab/bert-base-arabertv2) on the Sentiment Analysis for Social Media Posts in Arabic Dialect (MSDA) dataset, augmented by our generated adversarial examples.
It achieves the following results on the evaluation set:
- Loss: 0.4117
- Accuracy: 0.8655



## BibTeX Citations:
```bash
@inproceedings{alshahrani-etal-2024-arabic,
    title = "{{A}rabic Synonym {BERT}-based Adversarial Examples for Text Classification}",
    author = "Alshahrani, Norah  and
      Alshahrani, Saied  and
      Wali, Esma  and
      Matthews, Jeanna",
    editor = "Falk, Neele  and
      Papi, Sara  and
      Zhang, Mike",
    booktitle = "Proceedings of the 18th Conference of the European Chapter of the Association for Computational Linguistics: Student Research Workshop",
    month = mar,
    year = "2024",
    address = "St. Julian{'}s, Malta",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2024.eacl-srw.10",
    pages = "137--147",
    abstract = "Text classification systems have been proven vulnerable to adversarial text examples, modified versions of the original text examples that are often unnoticed by human eyes, yet can force text classification models to alter their classification. Often, research works quantifying the impact of adversarial text attacks have been applied only to models trained in English. In this paper, we introduce the first word-level study of adversarial attacks in Arabic. Specifically, we use a synonym (word-level) attack using a Masked Language Modeling (MLM) task with a BERT model in a black-box setting to assess the robustness of the state-of-the-art text classification models to adversarial attacks in Arabic. To evaluate the grammatical and semantic similarities of the newly produced adversarial examples using our synonym BERT-based attack, we invite four human evaluators to assess and compare the produced adversarial examples with their original examples. We also study the transferability of these newly produced Arabic adversarial examples to various models and investigate the effectiveness of defense mechanisms against these adversarial examples on the BERT models. We find that fine-tuned BERT models were more susceptible to our synonym attacks than the other Deep Neural Networks (DNN) models like WordCNN and WordLSTM we trained. We also find that fine-tuned BERT models were more susceptible to transferred attacks. We, lastly, find that fine-tuned BERT models successfully regain at least 2{\%} in accuracy after applying adversarial training as an initial defense mechanism.",
}
```
```bash
@misc{alshahrani2024arabic,
      title={{Arabic Synonym BERT-based Adversarial Examples for Text Classification}}, 
      author={Norah Alshahrani and Saied Alshahrani and Esma Wali and Jeanna Matthews},
      year={2024},
      eprint={2402.03477},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}
```

## Training procedure

We have trained this model using the PaperSpace GPU-Cloud service. We used a machine with 8 CPUs, 45GB RAM, and A6000 GPU with 48GB RAM.

### Training hyperparameters

The following hyperparameters were used during training:
- learning_rate: 2e-05
- train_batch_size: 16
- eval_batch_size: 8
- seed: 42
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: linear
- num_epochs: 3

### Training results

| Training Loss | Epoch | Step | Validation Loss | Accuracy |
|:-------------:|:-----:|:----:|:---------------:|:--------:|
| No log        | 1.0   | 2953 | 0.3976          | 0.8433   |
| 0.3811        | 2.0   | 5906 | 0.3715          | 0.8617   |
| 0.3811        | 3.0   | 8859 | 0.4117          | 0.8655   |


### Framework versions

- Transformers 4.32.1
- Pytorch 1.12.1+cu116
- Datasets 2.4.0
- Tokenizers 0.12.1
