## 3 Reduction of Data Streams  
To reduce memory use and the processing time of the ensemble classification algorithm, we propose an approximate attribute reduction algorithm in this paper. The approximate attribute reduction algorithm uses mutual information gain as the attribute importance metric and two parameters known as the correction coefficient and approximation as the reduction thresholds. We implement a forward heuristic search to determine the core attributes of a decision table and reduce the attributes in an approximate manner in the proposed attribute reduction algorithm. The algorithm improves the performance when dealing with uncertainty using rough sets and mutual information. Relaxation of the attribute reduction measure is used to reduce the computation complexity and increase the difference between base classifiers in the algorithm. The data in a sliding window can be seen as a decision system \(T=(\mathbf{U},\mathbf{A},f)\) where \(\mathbf{U}=\{x_{1},x_{2},\cdots,x_{n}\}\) is a set of samples, \(\mathbf{C}=\{s_{1},s_{2},\cdots,s_{m}\}\) is a set of condition attributes, and \(\mathbf{Y}=\{y_{1},y_{2},\cdots,y_{q}\}\) is a set of decision attributes and where \(\mathbf{A}=\mathbf{C}\cup\mathbf{Y}\) and \(\mathbf{C}\cap\mathbf{Y}=\varnothing\). Moreover, \(f=\left\{x|x\in\mathbf{R},x=g_{ij}\right\}\), \(i=1,2,\cdots,n\), \(j=1,2,\cdots,m\), where \(g_{ij}\) is the \(j\)th condition attribute value for the \(i\)th sample. \(\mathbf{B}\) is a subset of condition attributes. If \(\mathbf{B}\subset\mathbf{C}\), for any attribute \(s\in\mathbf{C}-\mathbf{B}\), the importance \(SGF_{\beta}(s,\mathbf{B},\mathbf{Y})\) based on mutual information is outlined in Reference [12]. \[SGF_{\beta}(s,\mathbf{B},\mathbf{Y})=H_{\beta}(\mathbf{B}\rightarrow\mathbf{Y })-H_{\beta}(\mathbf{B}\cup\{s\}\rightarrow\mathbf{Y}) \tag{1}\]  
where \(H_{\beta}(\mathbf{B}\rightarrow\mathbf{Y})\) is the variable-precision rough entropy and \(\beta\) is the approximation precision factor where \(\beta\in(0.5,1]\). Moreover, if \(\frac{H_{\beta}(\mathbf{B}\rightarrow\mathbf{Y})}{H_{\beta}(\mathbf{B} \rightarrow\mathbf{Y})}\geq\epsilon,\epsilon\in[0.9,1]\), \(H_{\beta}(\mathbf{B}\rightarrow\mathbf{Y})\) and \(H_{\beta}(\mathbf{B}^{\prime}\rightarrow\mathbf{Y})\) are treated as equal where \(\epsilon\) is the correction coefficient [12]. If mutual information \(I(\mathbf{B};\mathbf{Y})\geq\delta\times I(\mathbf{C};\mathbf{Y}),\delta\in(0,1]\), \(\mathbf{B}\) is called an approximate reduction of \(\mathbf{C}\) relative to \(\mathbf{Y}\) and \(\delta\) is the approximation [11]. The pseudocode of the proposed approximate attribute reduction algorithm is given in Algorithm 1. ```
Input: Decision system \(T=(\mathbf{U},\mathbf{A},f)\), correction coefficient \(\epsilon\in[0.9,1]\), approximation precision factor \(\beta\in(0.5,1]\), approximation \(\delta\in[0.9,1]\) Output: Approximate reduction \(\mathbf{B}\) of \(\mathbf{C}\)
1: Discrete input data and calculate \(I(\mathbf{C};\mathbf{Y})\);
2:\(i=1\), \(\mathbf{G}=\mathbf{C}\), \(\mathsf{Core}_{\mathbf{Y}}(\mathbf{C})=\varnothing\);
3: Calculate \(Z=H_{\beta}(\mathbf{C}\rightarrow\mathbf{Y})\);
4:\(\forall g\in\mathbf{G}\), calculate \(Z^{\prime}=H_{\beta}(\mathbf{C}-\{g\}\rightarrow\mathbf{Y})\);
5: If \(Z/Z^{\prime}\geq\epsilon\), \(\mathsf{Core}_{\mathbf{Y}}(\mathbf{C})=\mathsf{Core}_{\mathbf{Y}}(\mathbf{C}) \cup\{g\}\);
6:\(\mathbf{G}=\mathbf{G}-\{g\}\);
7:\(i=i+1\), if \(i>m\), go to line 8, otherwise, go to line 4;
8:\(\mathbf{B}=\mathsf{Core}_{\mathbf{Y}}(\mathbf{C})\);
9:\(\forall s_{i}^{*}\in\mathbf{C}-\mathbf{B}\), \(1\leq i\leq|\mathbf{C}-\mathbf{B}|\), calculate \(SGF_{\beta}(s_{i}^{*},\mathbf{B},\mathbf{Y})\);
10:If \(SGF_{\beta}(s_{i}^{*},\mathbf{B},\mathbf{Y})=\underset{i=1}{\max}SGF_{\beta}(s_ {i}^{*},\mathbf{B},\mathbf{Y})\), \(\mathbf{B}=\mathbf{B}\cup\{s_{i}^{*}\}\);
11: If \(I(\mathbf{B};\mathbf{Y})\geq\delta\times I(\mathbf{C};\mathbf{Y})\), go to line 12, otherwise, go to line 9;
12: Output approximate reduction \(\mathbf{B}\).