## 4 LeSSA--Implementation and Technical Details
### Linguistic Rules
#### 4.2.6 Active Self-Training Based Sentiment Learner
First, the feature space of the labeled data Y which is created with SBC technique is divided into two views, Y = (**Y\({}^{1}\)**, **Y\({}^{2}\)**). Then a pool of unlabeled data, let us represent it by \(X^{1}\) is also divided into two views (**X\({}_{1}\)\({}^{1}\)**, **X\({}_{2}\)\({}^{1}\)**). After then, separate classifiers S1 and S2 are trained on one view, **Y\({}^{1}\)**, **Y\({}^{2}\)** respectively. Further, the classifier S1 is applied to the unlabeled view **X\({}_{1}\)\({}^{1}\)** to select some of the high confident level classified examples according to a specific threshold predicted by the classifier S1 and added into the training data. Then applying classifier S2 to the unlabeled view **X\({}_{2}\)\({}^{1}\)**. Some of the best informative examples are selected by active learning (utilizing uncertainty sampling scheme) and assigned to a domain expert for manual annotation that is added into the training data. This process continues for several iterations until the termination criteria is satisfied. After several numbers of iterations, we obtain a set of labeled data from the co-training components of classifier S1 and S2. The labeled data obtained from two co-training components are integrated into a final classifier. The final trained sentiment classifier is then used for test review classification. The procedure used for ASCT based sentiment learning is described in Algorithm 4. The workflow for ASCT-SL is shown in Figure 6.

Figure 5: Active self-training for learning sentiment classifier. ```
inputs:\(X-\{x_{1},\ x_{2},\ldots,\ x_{m}\}\);/*unlabeled data of \(n\) instances*/ \(Y-\{y_{1},\ y_{2},\ldots,\ y_{m}\}\);/*labeled data of \(n\) instances*/ \(\mathbf{S}-\{s_{1},\ s_{2}\}\);/*classifiers*/ \(\lambda-\{\lambda_{1},\ \lambda_{2}\}\);/*Thresholds*/ output:/*labeled data, \(\{Y_{\text{O}}\}\) leq \(|\mathbf{Y_{\text{O}}}|\) leq \(|\mathbf{Y_{\text{O}}}|+|\mathbf{X_{\text{L}}}|\), leq: less than or equal to */ \(Y_{\text{O}}-\{y_{1},\ y_{2},\ldots,\ y_{m}\}\);
```

**Algorithm 4** Active self co-training (ASCT) based learning

### Sentiment Analysis with Classification Fusion

The idea of classification fusion is to utilize multiple classification models and combine their predictions in some way, such as voting. The primary aim of classification fusion is to decrease the error rate in classification tasks, which may occur in single classifiers [65], and also to improve generalization

Figure 6: Active Self-Co-Training for learning Sentiment classifier. ability/robustness over a single classifier and enhance the classification performance of the system. Classifier fusion produces better results when there is an obvious diversity among classifiers. In this paper, the predictions (votes) of all the designed and implemented sentiment classification models on test review are combined using majority voting to determine the final sentiment orientation and produce improved results. The details of classification fusion for designed sentiment classification models are given in the below case study. Case Study--Classification Fusion

In this case, each sentiment learner predicts the sentiment label (positive or negative) of test textual review document. The predictions from each sentiment learner on test review are then combined and provided to a fusion module that determines the final sentiment polarity of test review based on a majority voting scheme. For example, we have a test textual review document from movie review dataset given in Figure 7. The five different designed sentiment learners, WCSL-SL, HRPL-SL, ST-SL, AST-SL, ASCT-SL predict the sentiment polarity for the input textual review document. The predicted polarities of test textual review document are combined based on majority voting using a threshold t (i.e., t \(\geq\) c, c = 3, where c is the value of threshold) to determine the same polarity (final sentiment polarity) predicted by at least three sentiment learners.