4.3 The Prediction Analysis Module
To improve the tracking performance of the algorithm, a prediction component was
added. The original competing windows algorithm (CWA) [3] on which this work is
based, used an estimate of the change in the concept to handle drift in the target concept
θ
t
. This approach has been modified to allow the system to predict the future rate of
change ǫ
t
.
The rate of change ǫ
t
prediction involves the analysis of the short term history of the
change observed in the target concept. If the history indicates that the rate of change has
been consistent then the predicted rate of change is the average of the past ǫ
t
. However,
if the rate of change has not been consistent, then the prediction is derived based on the
short term trend of past ǫ
t
and the difference between the predicted ǫ
t
and the actual ǫ
t
.
Hence, if the trend shows an increasing rate of change and the true rate is still larger
than the predicted rate, then future predicted values are increased. The analysis of ǫ
t
is
used to control the size of the system’s memory. If the actual ǫ
t
is significantly larger
than the predicted ǫ
t
, then the size of the current window is too large, and it needs to be
reduced. This in turn is used to remove more instances with low evidence value in the
window. However, if the predicted ǫ
t
is larger, then the window size can be increased
and it may not be necessary to forget any of the instances currently in the memory.
4.4 Algorithm Description (MRL)
Overall the algorithm attempts to detect and track changes in the target concept using a
multi-resolution approach. The algorithm uses two windows which compete to produce
the best interpretation of the data. The reason for using multiple windows is that in
order to deal with all types of drift, more than one interpretation of the data is needed.
Furthermore, the use of two windows allows a more gradual forgetting as data discarded
from the smaller of the two windows is not discarded from the larger window. The
concept tracked, as mentioned in the introduction, is represented by a combination of
instance generalizations, data predictors and the rate of change observed when concept
was stable. Both the instance generalization and the data predictors are in essence partial
instances that describe the common characteristics of the data observed in the window.
The main body of the algorithm is shown in Figure 4.4 while the forgetting and
prediction components are shown in Figures 4.4 and 4.4 respectively. The notations
used are as follows: θ
t
is the concept tracked at time t, l
c
(w ) is the length of the window
w, ǫ
c
(w ) is the rate of change in window w, Ψ is the forget set.
The processing done by the algorithm is outlined below. Initially, after the average
of the data vectors in the window has been computed, the number of observations over
which the change is consistent is set to 1. Then for each subsequent data sample ob-
served, the system attempts to determine the rate of change. To do this, the concept def-
inition for each of the two windows is updated at each step t using the formula ¯x
t
(w ) =
1/|w |
P
|w|−1
i=0
x
t−i
. This newly derived concept definition is then used to compute the
change in the window. The change is obtained by subtracting the concept value in the
window at time t-1 from the concept value in the window at time t. The current change
is then compared with the consistency threshold. If the current change in the window is
smaller than or equal to the consistency threshold ǫ
c
, then the persistence value for the
57