II. MÉTODO
2.3 Rigor Científico
.
Where W+ and W− are, respectively, the sum of the weights of the examples well and bad classified.
For the last question, how to train the base learner, it must be a multi-class learner, and we want to use binary learners (only one literal). Then, for each iteration, we train the weak learner using a binary problem: one class (selected randomly) against the others. The output of this weak learner, hBt (x) is binary. On the other hand, we do not generate a unique αt, but for each class, l, an αtl is selected. They are selected considering how good is the weak learner for discriminating between the class l and the rest of classes. This is a binary problem so the selection of the values can be done as indicated in [Schapire and Singer (1998)]. Now, we can define ht(x, l) = αtlhBt (x) and αt= 1 and we use AdaBoost.MH.
3. Interval Based Literals
Figure 2 shows a classification of the predicates used to describe the series.
Point based predicates use only one point of the series:
• point le(Example, Variable, Point, Threshold) it is true if, for the Example, the value of the Variable at the Point is less or equal than Threshold.
Note that a learner that only uses this predicate is equivalent to an attribute-value learning algorithm. This predicate is introduced to test the results obtained with boosting without using interval based predicates.
Two kinds of interval predicates are used: relative and region based. Rel-ative predicates consider the differences between the values in the interval.
Region based predicates are based on the presence of the values of a variable in a region during an interval. This section only introduces the predicates [Rodr´ıguez et al. (2001)] gives a more detailed description, including how to select them efficiently.
Region based: Sometimes, always, true_percentage Relative: increases, decreases, stays
Interval based Point based: point_le Predicates
Fig. 2. Classification of the predicates.
3.1. Relative Predicates
A natural way of describing series is to indicate when they increase, decrease or stay. These predicates deal with these concepts:
• increases(Example, Variable, Beginning, End, Value). It is true, for the Example, if the difference between the values of the Variable for End and Beginning is greater or equal than Value.
• decreases(Example, Variable, Beginning, End, Value).
• stays(Example, Variable, Beginning, End, Value). It is true, for the Example, if the range of values of the Variable in the interval is less or equal than Value.
Frequently, series are noisy and, hence, a strict definition of increases and decreases in an interval i.e., the relation holds for all the points in the interval, is not useful. It is possible to filter the series prior to the learning process, but we believe that a system for time series classification must not rely on the assumption that the data is clean. For these two predicates we consider what happens only in the extremes of the interval. The parameter Value is necessary for indicating the amount of change.
For the predicate stays it is neither useful to use a strict definition. In this case all the points in the interval are considered. The parameter Value is used to indicate the maximum allowed difference between the values in the interval.
3.2. Region Based Predicates
The selection and definition of these predicates is based in the ones used in a visual rule language for dynamic systems [Alonso Gonz´alez and Rodr´ıguez Diez (1999)]. These predicates are:
• always(Example, Variable, Region, Beginning, End). It is true, for the Exam-ple, if the Variable is always in this Region in the interval between Begin-ning and End.
• sometimes(Example, Variable, Region, Beginning, End).
• true percentage(Example, Variable, Region, Beginning, End, Percentage). It is true, for the Example, if the percentage of the time between Beginning and End where the variable is in Region is greater or equal to Percentage.
Once that it is decided to work with temporal intervals, the use and definition of the predicates always and sometimes is natural, due to the fact that they are the extension of the conjunction and disjunction to intervals.
Since one appears too demanding and the other too flexible, a third one has been introduced, true percentage. It is a “relaxed always” (or a “restricted sometimes”). The additional parameter indicates the degree of flexibility (or restriction).
Regions. The regions that appear in the previous predicates are inter-vals in the domain of values of the variable. In some cases the definitions of these regions can be obtained from an expert, as background knowledge.
Otherwise, they can be obtained with a discretization preprocess, which obtains r disjoint, consecutive intervals. The regions considered are these r intervals (equality tests) and others formed by the union of the intervals 1, . . . , i (less or equal tests).
The reasons for fixing the regions before the classifier induction, instead of obtaining them while inducing, are efficiency and comprehensibility.
The literals are easier to understand if the regions are few, fixed and not overlapped.
3.3. Classifier Example
Table 1 shows a classifier. It was obtained from the data set CBF (Section 6.1). This classifier is composed by 10 base classifiers. The first column shows the literal. For each class in the data set there is another column, with the weight associated to the literal for that class.
In order to classify a new example, a weight is calculated for each class, and then the example is assigned to the class with greater weight. Initially, the weight of each class is 0. For each base classifier, the literal is evaluated.
If it is true, then, for each class, its weight is updated adding the weight of
Table 1. Classifier example, for the CBF data set (Section 6.1). For each literal, a weight is associated to every class.
Literal Cylinder Bell Funnel
true percentage(E, x, 1 4, 4, 36, 95) −0.552084 3.431576 −0.543762 not true percentage(E, x, 1 4, 16, 80, 40) 1.336955 0.297363 −0.527967 true percentage(E, x, 3, 49, 113, 25) −0.783590 −0.624340 1.104166 decreases(E, x, 34, 50, 1.20) −0.179658 0.180668 0.771224 not true percentage(E, x, 4, 14, 78, 15) 0.899025 −0.234799 −0.534271 decreases(E, x, 35, 51, 1.20) −0.289225 −0.477789 0.832881 decreases(E, x, 32, 64, 0.60) −0.028495 −0.462483 0.733433 not true percentage(E, x, 3, 12, 76, 15) 0.971446 −0.676715 −0.248722 true percentage(E, x, 1 4, 18, 34, 95) 0.085362 3.103075 −0.351317 true percentage(E, x, 1 3, 34, 38, 30) 0.041179 2.053417 0.134683
the class for the literal. If the literal is false, then the weight of the class for the literal is subtracted from the weight of the class.
The first literal in the table “true percentage(E, x, 1 4, 4, 36, 95)” has associated for each class the weights −0.55, 3.43 and −0.54. This means that if the literal is true (false), it is likely that the class is (not) the second one. This literal is not useful for discriminating between the first and the third class.