| Literature DB >> 36210967 |
Yunus Emre Isikdemir1, Hasan Serhan Yavuz1.
Abstract
Internet environments such as social networks, news sites, and blogs are the platforms where people can share their ideas and opinions. Many people share their comments instantly on the internet, which results in creating large volumes of entries. It is important for institutions and organizations to analyze this big data in an efficient and rapid manner to produce summary information about the feelings or opinions of individuals. In this study, we propose a scalable framework that makes sentiment classification by evaluating the compound probability scores of the most widely used methods in sentiment analysis through a fuzzy inference mechanism in an ensemble manner. The designed fuzzy inference system makes the sentiment estimation by evaluating the compound scores of valance aware dictionary, word embedding, and count vectorization processes. The difference of the proposed method from the classical ensemble methods is that it allows weighting of base learners and combines the strengths of each algorithm through fuzzy rules. The sentiment estimation process from text data can be managed either as a 2-class (positive and negative) or as a 3-class (positive, neutral, and negative) problem. We performed the experimental work on four available tagged social network data sets for both 2-class and 3-class classifications and observed that the proposed method provides improvements in accuracy.Entities:
Mesh:
Year: 2022 PMID: 36210967 PMCID: PMC9534613 DOI: 10.1155/2022/5186144
Source DB: PubMed Journal: Comput Intell Neurosci
Figure 1Many to one RNN.
Figure 2LSTM Architecture.
Figure 3Bidirectional LSTM [82].
Figure 4Gated recurrent unit.
Figure 5Text classification with the CNN.
Figure 6Block diagram of the proposed methodology.
Figure 7Proposed fuzzy inference mechanism.
Designed fuzzy inference system variables and parameters.
| Name | Input-1 | Input-2 | Input-3 | Output |
|---|---|---|---|---|
| Polarity | Bi-LSTM compound | Logistic regression compound | Sentiment | |
| Range | [−1,1] | [−1,1] | [−1,1] | [−1,1] |
| MF-1 (negative) | Trapezoid, [−1, −1, −0.2,0] | Trapezoid, [−1, −1, −0.2,0] | Trapezoid, [−1, −1, −0.2,0] | Gaussian, |
| MF-2 (neutral) | Gaussian, | Gaussian, | Gaussian, | Gaussian, |
| MF-3 (positive) | Trapezoid, [0,0.2,1,1] | Trapezoid, [0,0.2,1,1] | Trapezoid, [0,0.2,1,1] | Gaussian, |
Fuzzy rule list of the proposed fuzzy inference mechanism.
| Rule | Inputs | Output | ||
|---|---|---|---|---|
| Polarity | Bi-LSTM | Logistic regression | Sentiment | |
| 1 | Negative | Negative | Negative | Negative |
| 2 | Negative | Negative | Neutral | Negative |
| 3 | Negative | Negative | Positive | Negative |
| 4 | Negative | Neutral | Negative | Negative |
| 5 | Negative | Neutral | Neutral | Negative |
| 6 | Negative | Neutral | Positive | Negative |
| 7 | Negative | Positive | Negative | Negative |
| 8 | Negative | Positive | Neutral | Negative |
| 9 | Negative | Positive | Positive | Positive |
| 10 | Neutral | Negative | Negative | Neutral |
| 11 | Neutral | Negative | Neutral | Neutral |
| 12 | Neutral | Negative | Positive | Neutral |
| 13 | Neutral | Neutral | Negative | Neutral |
| 14 | Neutral | Neutral | Neutral | Neutral |
| 15 | Neutral | Neutral | Positive | Neutral |
| 16 | Neutral | Positive | Negative | Neutral |
| 17 | Neutral | Positive | Neutral | Neutral |
| 18 | Neutral | Positive | Positive | Positive |
| 19 | Positive | Negative | Negative | Negative |
| 20 | Positive | Negative | Neutral | Positive |
| 21 | Positive | Negative | Positive | Positive |
| 22 | Positive | Neutral | Negative | Positive |
| 23 | Positive | Neutral | Neutral | Neutral |
| 24 | Positive | Neutral | Positive | Positive |
| 25 | Positive | Positive | Negative | Positive |
| 26 | Positive | Positive | Neutral | Positive |
| 27 | Positive | Positive | Positive | Positive |
Experimental results for coronavirus-tagged data set.
| Method | Principle | Sentiment correct classification rates (normalized) | |||
|---|---|---|---|---|---|
| Negative sentiment | Neutral sentiment | Positive sentiment | 3-class overall | ||
| Logistic regression | TFIDF | 0.82 | 0.60 | 0.86 | 0.80 |
| Cost sensitive logistic regression | TFIDF | 0.79 | 0.76 | 0.78 | 0.78 |
| Support vector machine | TFIDF | 0.84 | 0.64 | 0.87 | 0.82 |
| Naive Bayes | TFIDF | 0.56 | 0.02 | 0.92 | 0.62 |
| Logistic regression | Count vect. | 0.82 | 0.72 | 0.85 | 0.82 |
| Cost sensitive logistic regression | Count vect. | 0.80 | 0.76 | 0.81 | 0.80 |
| Support vector machine | Count vect. | 0.81 | 0.69 | 0.85 | 0.81 |
| Naive Bayes | Count vect. | 0.76 | 0.13 | 0.79 | 0.67 |
| Vanilla LSTM | Deep learning | 0.81 | 0.73 | 0.88 | 0.83 |
| Stacked LSTM | Deep learning | 0.85 | 0.74 | 0.86 | 0.84 |
| Bi-directional LSTM | Deep learning | 0.86 | 0.81 | 0.83 | 0.84 |
| GRU | Deep learning | 0.85 | 0.76 | 0.87 | 0.84 |
| Stacked GRU | Deep learning | 0.87 | 0.77 | 0.87 | 0.85 |
| CNN-LSTM | Deep learning | 0.84 | 0.72 | 0.88 | 0.84 |
| GRU-CNN | Deep learning | 0.89 | 0.75 | 0.82 | 0.84 |
| Proposed ensemble fuzzy method | Ensemble | 0.90 | 0.87 | 0.88 | 0.89 |
Experimental results for Google Play application review data.
| Method | Principle | Sentiment correct classification rates (normalized) | ||
|---|---|---|---|---|
| Negative sentiment | Positive sentiment | Overall | ||
| Logistic regression | TFIDF | 0.88 | 0.90 | 0.89 |
| Cost sensitive logistic regression | TFIDF | 0.89 | 0.89 | 0.89 |
| Support vector machine | TFIDF | 0.91 | 0.91 | 0.91 |
| Naive Bayes | TFIDF | 0.85 | 0.91 | 0.88 |
| Logistic regression | Count vect | 0.89 | 0.92 | 0.91 |
| Cost sensitive logistic regression | Count vect | 0.90 | 0.91 | 0.91 |
| Support vector machine | Count vect | 0.89 | 0.92 | 0.91 |
| Naive Bayes | Count vect | 0.86 | 0.90 | 0.88 |
| Vanilla LSTM | Deep learning | 0.90 | 0.84 | 0.87 |
| Stacked LSTM | Deep learning | 0.85 | 0.88 | 0.87 |
| Bi-directional LSTM | Deep learning | 0.89 | 0.92 | 0.91 |
| GRU | Deep learning | 0.87 | 0.91 | 0.89 |
| Stacked GRU | Deep learning | 0.92 | 0.85 | 0.88 |
| CNN-LSTM | Deep learning | 0.83 | 0.95 | 0.89 |
| GRU-CNN | Deep learning | 0.86 | 0.92 | 0.89 |
| Proposed ensemble fuzzy method | Ensemble | 0.91 | 0.93 | 0.92 |
Experimental results for Amazon Alexa review data.
| Method | Principle | Sentiment correct classification rates (normalized) | ||
|---|---|---|---|---|
| Negative sentiment | Positive sentiment | Overall | ||
| Logistic regression | TFIDF | 0.06 | 1.00 | 0.88 |
| Cost sensitive logistic regression | TFIDF | 0.83 | 0.88 | 0.87 |
| Support vector machine | TFIDF | 0.47 | 0.98 | 0.91 |
| Naive Bayes | TFIDF | 0.01 | 1.00 | 0.87 |
| Logistic regression | Count vect | 0.06 | 1.00 | 0.88 |
| Cost sensitive logistic regression | Count vect | 0.83 | 0.88 | 0.87 |
| Support vector machine | Count vect | 0.47 | 0.98 | 0.91 |
| Naive Bayes | Count vect | 0.01 | 1.00 | 0.87 |
| Vanilla LSTM | Deep learning | 0.78 | 0.79 | 0.79 |
| Stacked LSTM | Deep learning | 0.64 | 0.83 | 0.81 |
| Bi-directional LSTM | Deep learning | 0.78 | 0.79 | 0.79 |
| GRU | Deep learning | 0.81 | 0.84 | 0.84 |
| Stacked GRU | Deep learning | 0.80 | 0.84 | 0.83 |
| CNN-LSTM | Deep learning | 0.60 | 0.90 | 0.86 |
| GRU-CNN | Deep learning | 0.70 | 0.88 | 0.86 |
| Proposed ensemble fuzzy method | Ensemble | 0.90 | 0.86 | 0.87 |
Experimental results for Rotten Tomatoes movies and critic review data.
| Method | Principle | Sentiment correct classification rates (normalized) | ||
|---|---|---|---|---|
| Negative sentiment | Positive sentiment | Overall | ||
| Logistic regression | TFIDF | 0.89 | 0.68 | 0.82 |
| Cost sensitive logistic regression | TFIDF | 0.81 | 0.80 | 0.81 |
| Support vector machine | TFIDF | 0.88 | 0.70 | 0.81 |
| Naive Bayes | TFIDF | 0.94 | 0.50 | 0.78 |
| Logistic regression | Count vect | 0.89 | 0.69 | 0.81 |
| Cost sensitive logistic regression | Count vect | 0.81 | 0.80 | 0.81 |
| Support vector machine | Count vect | 0.88 | 0.69 | 0.81 |
| Naive Bayes | Count vect | 0.85 | 0.72 | 0.80 |
| Vanilla LSTM | Deep learning | 0.84 | 0.73 | 0.77 |
| Stacked LSTM | Deep learning | 0.84 | 0.74 | 0.77 |
| Bi-directional LSTM | Deep learning | 0.85 | 0.74 | 0.78 |
| GRU | Deep learning | 0.83 | 0.74 | 0.77 |
| Stacked GRU | Deep learning | 0.84 | 0.74 | 0.77 |
| CNN-LSTM | Deep learning | 0.79 | 0.74 | 0.76 |
| GRU-CNN | Deep learning | 0.78 | 0.74 | 0.76 |
| Proposed ensemble fuzzy method | Ensemble | 0.83 | 0.83 | 0.83 |
Figure 8The fuzzy inference system used to test the single input-single output framework for the ablation study. (a) 2-class classification case. (b) 3-class classification case.
Figure 9The fuzzy inference system used to test the single input-single output framework for the ablation study. (a) 2-class classification case. (b) 3-class classification case.
Figure 10The binary classification framework of the proposed fuzzy inference mechanism.
Correct classification rates (in %) of the ablation study.
| Experiment | Single component | Two components | Three components | |||||
|---|---|---|---|---|---|---|---|---|
| Polarity | Bi-LSTM | Logistic reg | (Polarity + Bi-LSTM) | (Polarity + logistic reg) | (Bi-LSTM + logistic reg) | Proposed framework | ||
| Experiment 1: Coronavirus-tagged data | 3-class | 87.15 | 85.57 | 87.67 | 87.94 | 88.20 | 86.15 | 89.31 |
| Experiment 2: Google Play reviews | 2-class | 87.44 | 91.33 | 90.83 | 88.40 | 88.43 | 90.61 | 92.87 |
| Experiment 3: Amazon Alexa | 2-class | 83.27 | 82.33 | 88.19 | 86.27 | 84.56 | 86.23 | 86.72 |
| Experiment 4: Rotten Tomatoes | 2-class | 76.28 | 81.47 | 81.53 | 80.41 | 81.77 | 82.15 | 83.48 |
Figure 11Bar plots of the ablation study. Correct classification rates are normalized in the plot.