## 3 Ensemble Learning Approach
The feature extraction phase utilized the TF-IDF vectorizer, whereas logistic regression and support vector machine were used for classification in the machine learning component. In the deep learning component, the Vietnamese text was represented by word2 vec embeddings, which were then passed into the CNN and LSTM models for classification. Three ensemble techniques were evaluated, including the average/mean rule, the max rule, and the voting rule. The results showed that the ensemble model with the mean rule achieved an accuracy of 69.71% on the Vietnamese Sentiment Dataset (DS1), whereas the ensemble model with the voting rule achieved accuracies of 89.19% and 92.80% on the Vietnamese Sentiment Food Reviews dataset (DS2) and Vietnamese Sentiment dataset (DS3), respectively. [PERSON] et al. (2021) [60] conducted a comparative study on the performance of six different models for sentiment analysis. Three of the models were conventional ensemble models, a voting ensemble, a bagging ensemble, and a boosting ensemble of logistic regression, support vector machine, and random forest. The other three models were neural network ensemble models, including 7-Layer CNN + LSTM + attention layer, 7-Layer CNN + GRU, and 7-Layer CNN + GRU + GloVe embedding. The datasets used in the study were the Grammar and Online Product Reviews dataset and the Restaurant Reviews in Dhaka, Bangladesh, dataset, both of which underwent several preprocessing steps such as tokenization, case folding, lemmatization, and stop-word and special character removal. The results indicated that the 7-Layer CNN + GRU + GloVe model achieved the highest accuracy of 94.19% on the Grammar and Online Product Reviews dataset, and the 7-Layer CNN + LSTM + attention layer model achieved the highest accuracy of 96.37% on the Restaurant Reviews in Dhaka, Bangladesh, dataset. In another study, [PERSON] and [PERSON] (2021) [61] evaluated the performance of four different models for sentiment analysis of Arabic Tweets, including a stacked gated recurrent unit (SGRU), a stacked bidirectional gated recurrent unit (SBi-GRU), Arabic bidirectional encoder representations from transformers (AraBERT), and an ensemble of these models. The Arabic Sentiment Analysis dataset, which contained 56,674 samples with positive, negative, and neutral classes, was used for the evaluation. To preprocess the data, the automatic sentiment refinement (ASR) technique was applied to remove repeated Tweets, stop words, hashtags, and unrelated content. The SGRU and SBi-GRU models used the pretrained word embedding for Arabic text, AraVec, to represent the text. The results showed that the ensemble model (SGRU + SBi-GRU + AraBERT) performed best with 90.21% accuracy. In [PERSON] et al. (2022) [62], the authors proposed an ensemble model of RoBERTa-LSTM, RoBERTa-BiLSTM, and RoBERTa-GRU for sentiment analysis. The text sequences were first transformed into contextual embeddings by the RoBERTa model and then encoded by the LSTM, BiLSTM, and GRU models for classification. The ensemble model achieved high accuracy scores of 94.9%, 91.77%, and 89.81% on the IMDb, Twitter US Airline Sentiment, and Sentiment140 datasets, respectively. Ensemble learning is a promising approach to sentiment analysis, leveraging the strengths of multiple models to achieve better performance. Several studies on sentiment analysis were conducted using ensemble models with different machine learning algorithms, including naive Bayes, support vector machine, random forest, logistic regression, and XGBoost. The majority voting scheme was the most commonly used method for combining the results of multiple models in an ensemble. The accuracies of the ensemble models used in sentiment analysis ranged from 80% to 98.99%. Some studies preprocessed the datasets using techniques such as case folding, stop-word removal, stemming, N-grams, and TF-IDF vectorization. Ensemble models were applied to various datasets, including customer reviews from Amazon, movie reviews from the corpora community, and Twitter data.