## 3 Methodology
### Experimental Setup  
The purpose of this study is to compare the existing drift detection methods on balanced and imbalanced multi-class data streams and find which of the compared methods contributes more to improve the performance of the base classifier and in what circumstances. Ten well-known drift detection methods are scientifically compared in this study on data streams with various drift types. In these experiments, we used the No Change Detection (NoCD) option to distinguish the performance of the base classifier without using any drift detector. It is to analyze the performance of the base classifier with a drift detector and without a drift detector. All these drift detection methods are used with default parameters, and no parameter tuning is performed. In real-time data stream classification data arrives so fast and may change the concept frequently. Therefore, if a model's parameters are tuned for the initial concept, they lose their worth if the concept changes. The summary of these methods is given in Table 3. All the experiments are performed in MOA [49], using a machine-equipped 2.3 GHz Intel i5 processor and 8 GB RAM. The results are evaluated in terms of the F-1 score metric which provides a way to combine both precisions and recall into a single measure that captures both properties. For data streams where the drift location is known such as streams with sudden drift, the methods are also evaluated using correct identification, distance from the actual drift location and identified location, false detection, and miss detection. The Hoeffding Tree classifier [50] is used as the base classifier because it is an incremental learner capable of learning from massive data streams. Hoeffding Tree with its incremental decision tree approach is capable of updating existing trees only utilizing the single input instance, eliminating the requirement to evaluate older instances.  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Sr** & **Method** & **Full Name** & **Technique** \\ \hline
1 & DDM [28] & Drift Detection Method & Increases or decreases the value or error rate based on the classification performance of the base classifier \\ \hline
2 & EDDM [29] & Early Drift Detection Method & Averages distances of two errors, running averages of standard deviations \\ \hline
3 & PH [36] & Page Hinckley & Monitors the difference between current accuracy and mean accuracy \\ \hline
4 & RDDM [30] & Reactive Drift Detection Method & Recalculates the DDM stats in the current concept is too long (exceeds the defined maximum value) \\ \hline
5 & CuSUM [38] & Cumulative Sum Drift Method & Monitors the mean of data. Considers a change when the mean reaches a certain threshold \\ \hline
6 & GMA [35] & Geometric Moving Average & Gives the most recent observation the greatest weight, and all previous observations’ weights decrease in geometric progression \\ \hline
7 & EWMA [51] & Exponentially weighted moving average & Monitors the moving average of the observations, and decreases the weights of the old observations exponentially \\ \hline
8 & HDDM\_A [39] & Hoeffding’s Drift Detection Method-Average & Monitors the performance metrics measured during the learning process using [PERSON]’s bounds (moving average) \\ \hline
9 & HDDM\_W [39] & Hoeffding’s Drift Detection Method-Weighted average & Monitors the performance metrics measured during the learning process using [PERSON]’s bounds (weighted moving average) \\ \hline
10 & STEPD [40] & Statistical Test of Equal Proportions & Computes the accuracy of the base classifier in the W most recent instances and compares it to its overall accuracy from the beginning of the learning process. \\ \hline \hline \end{tabular}
\end{table}
Table 3: Summary of drift detection methods considered for analysis.