12.07.2015 Views

A Comparison of Decision Tree Ensemble Creation Techniques Ç

A Comparison of Decision Tree Ensemble Creation Techniques Ç

A Comparison of Decision Tree Ensemble Creation Techniques Ç

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

178 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 1, JANUARY 2007TABLE 5Number <strong>of</strong> <strong>Tree</strong>s and Test Set Accuracy <strong>of</strong> the Stopping Criteria for Random Forests and Baggingestimate quirks on data sets with a small number <strong>of</strong> examples. Smalldata sets (number <strong>of</strong> examples < 1,000) can <strong>of</strong>ten have a very lowerror estimate with a rather small number <strong>of</strong> decision trees (50 to100), but then the addition <strong>of</strong> more trees results in a greater error ratein both the out-<strong>of</strong>-bag error and the test set error, as might be shownin a 10-fold cross-validation. This behavior is contrary to manyexperiments which have shown that test set error steadily decreaseswith an increasing number <strong>of</strong> classifiers until it plateaus. Wespeculate that this is a result <strong>of</strong> instability in the predictions leadingto a “lucky guess” by the ensemble for such data sets. Since thedecision to stop building additional classifiers is more effective, in atime-saving sense, for large data sets, we believe it is more importantto concentrate on data sets with a larger number <strong>of</strong> examples.We have developed an algorithm which appears to provide areasonable solution to the problem <strong>of</strong> deciding when enoughclassifiers have been created for an ensemble. It works by firstsmoothing the out-<strong>of</strong>-bag error graph with a sliding window inorder to reduce the variance. We have chosen a window size <strong>of</strong> 5for our experiments. After the smoothing has been completed, thealgorithm takes windows <strong>of</strong> size 20 on the smoothed data pointsand determines the maximum accuracy within that window. Itcontinues to process windows <strong>of</strong> size 20 until the maximumaccuracy within that window no longer increases. At this point, thestopping criterion has been reached and the algorithm returns theensemble with the maximum raw accuracy from within thatwindow. The algorithm is shown in Algorithm 1.Algorithm 1 Algorithm for deciding when to stop buildingclassifiers1: SlideSize ( 5, SlideWindowSize ( 5, BuildSize ( 202: A½nŠ ( Raw <strong>Ensemble</strong> accuracy with n trees3: S½nŠ ( Average <strong>Ensemble</strong> accuracy with n trees over theprevious SlideWindowSize trees4: W½nŠ ( Maximum smoothed value5: repeat6: Add (BuildSize) more trees to the ensemble7: Num<strong>Tree</strong>s ¼ Num<strong>Tree</strong>s þ BuildSize//Update A½Š with raw accuracy estimates obtained fromout-<strong>of</strong>-bag error8: for x ( Num<strong>Tree</strong>s BuildSize to Num<strong>Tree</strong>s do9: A½xŠ ( VotedAccuracy(T ree 1 ...<strong>Tree</strong> x )10: end for//Update S½Š with averaged accuracy estimates11: for x ( Num<strong>Tree</strong>s BuildSize to Num<strong>Tree</strong>s do12: S½xŠ ( Average(A½x SlideSizeŠ ...A½xŠ)13: end for//Update maximum smoothed accuracy within window14: W[NumT rees=BuildSize 1]( maxðS½Num<strong>Tree</strong>s BuildSizeŠ ...S½Num<strong>Tree</strong>sŠ)15: until ðW½NumT rees=BuildSize 1Š W½NumT rees=BuildSize 2ŠÞ16: Stop at tree argmax j ðA½jŠjj 2½Num<strong>Tree</strong>s 2 BuildSizeŠ ...½Num<strong>Tree</strong>s BuildSizeŠÞ6.2 ExperimentsWe compare the stopping points and the resulting test set accuracy<strong>of</strong> ensembles built out to 2,000 trees using Random Forests-lg and a10-fold cross-validation. For this comparison we examine 1) thestopping point <strong>of</strong> our algorithm, 2) the stopping point by taking theminimum out-<strong>of</strong>-bag error over all 2,000 trees, and 3) an oraclealgorithm which looks at the lowest observed error on the test setover the 2,000 created trees (as trees are added sequentially).Thirteen <strong>of</strong> the previously used data sets with greater than1,000 examples are used. The results are shown in Table 5.For most data sets, the out-<strong>of</strong>-bag error continues to decreaselong into the training stage. This <strong>of</strong>ten does not result in anyimprovement <strong>of</strong> test set performance. Across all 13 data sets the totalgain by using the minimum out-<strong>of</strong>-bag error rather than ouralgorithm was only 0.06 percent on average. Comparing ouralgorithm to the oracle, the accuracy loss is less than 0.25 percentper data set. In comparing the number <strong>of</strong> trees used, our methoduses many fewer trees than the other methods. On average, we use1,140 fewer trees compared to the minimum out-<strong>of</strong>-bag error and755 fewer trees compared to the oracle method. While thesenumbers are clearly influenced by the maximum number <strong>of</strong> treeschosen to build, it is also evident that looking at the maximum out<strong>of</strong>-bagaccuracy causes the algorithm to continue building a largenumber <strong>of</strong> trees.We have also tested this method on the bagged trees without theuse <strong>of</strong> random forests. We generated half (1,000) the number <strong>of</strong> thetrees used in the previous experiment in order to shorten thepreviously observed large over estimation on the number <strong>of</strong> treesusing the minimum out-<strong>of</strong>-bag error alone and to reduce thetraining time. The results for this experiment are shown in Table 5.The use <strong>of</strong> our algorithm results in an average net loss <strong>of</strong> 0.12 percentper data set compared to the minimum out-<strong>of</strong>-bag error, while using431 fewer trees. Compared to the oracle method, there is a net loss <strong>of</strong>0.25 percent per data set (consistent with the previous experiment)while using 442 fewer trees.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!