To meet a budget-based limitation for arbitrary data streams despite a reliable fixed setting of selection thresholds (as discussed above), we recalculate the labelling expense for each new incoming sample \(\mathbf {x}(N)\)  as \(Sel(N)/N\) , with \(N\)  being the number of samples seen so far and \(Sel(N)\)  the number of selected samples, and simply check whether the budget would be exhausted when the next sample is selected. Only if this is not the case, the sample is selected whenever it meets one of the three criteria discussed above, i.e. (REF ), (REF ) and (REF ).
However, such situations can jeopardize the classifier's significance and accuracy, because the training process may be capped off too early when the classifier is not yet mature enough to select samples properly [1]}. Therefore, we adopt the variable sampling strategy according to the suggestions in [2]}, which aims to counterbalance the actual labelling expense and in turn consumes the budget more uniformly irrespective of the types of possible dynamics/changes contained in the data.
This is achieved by adapting the thresholds in (REF ) and (REF ) autonomously based on the level of exhaustiveness of the budget (i.e. increasing them when the exhaustiveness becomes closer) and based on the recent selected samples.
