# Enhancing Fake News Detection in Romanian Using Transformer-Based Back Translation Augmentation
## 3 Methodology  
This study examined the effectiveness of different models and data augmentation techniques, particularly BT augmentation with Google Translate and mBART, in improving fake news detection in Romanian. Using multiple metrics, including accuracy, precision, recall, F1 score, area under the curve, and [PERSON]'s kappa score, the performance of the model was evaluated. In addition, the benefits of utilizing pre-trained models similar to mBART for BT augmentation were investigated. During this process, three research questions were examined, as outlined below.  
1. RQ1: What is the effectiveness of transformer-based data augmentation approaches, specifically using mBART, in improving the detection of fake news in Romanian?
2. RQ2: How does the performance of different models compare when augmented with BT data using Google Translate and mBART?
3. RQ3: What is the impact of using different target languages, such as English and French, in the BT augmentation process?  
The methodology used in this study closely followed the steps of Algorithm 1. The algorithm collected data from the \"Factual.ro\" source. The collected data were then divided into training and test sets. The data were preprocessed by removing special characters, converting to lowercase, tokenizing, removing stop words, and lemmatizing. After pre-processing, the data were vectorized using the TF-IDF method. Data augmentation was then performed on the training set using BT. The augmented training set was preprocessed using the same preprocessing steps as the original data. The preprocessed training and test sets were used to train and evaluate a classifier. The classifier performance on the original and augmented data sets was compared to analyze the effectiveness of data augmentation.  
The graphical representation of the methodology, as shown in Figure 1, supports understanding the workflow by highlighting key components such as data acquisition, data augmentation, preprocessing, vectorization, subsequent training, and evaluation.  
```
data = CollectData(\"Factual.ro\") train_set, test_set = SplitDataset(data, ratio = 0.8) def PreprocessData(data): cleaned_data = [] for text in data: text = RemoveSpecialChars(text) text = ConvertToLowercase(text) tokens = Tokenize(text) tokens = RemoveStopWords(tokens) tokens = Lemmatize(tokens) cleaned_data = RejoinTokens(tokens) cleaned_data.append(cleaned_text) vectorized_data = Vectorize(cleaned_data, method = \"TF-IDF\") return vectorized_data def AugmentData(train_set): augmented_data = [] for text in train_set: augmented_text = BackTranslation(text) augmented_data.append(augmented_text) return augmented_data augmented_train_set = AugmentData(train_set) def TrainEvaluate(train_data, test_data): classifier = TrainClassifier(train_data) results = EvaluateClassifier(classifier, test_data) return Results train_set = PreprocessData(train_set) test_set = PreprocessData(test_set) original_results = TrainEvaluate(train_set, test_set) augmented_train_set = PreprocessData(augmented_train_set) augmented_results = TrainEvaluate(augmented_train_set, test_set) analysis = ComparePerformance(original_results, augmented_results)
```  
**Algorithm 1** Fake news detection pipeline with data augmentation