//2014年11月5日
//集成学习三大传统框架:bagging,boosting,stacking
//参见http://www.cnblogs.com/tornadomeet/archive/2012/03/21/2409421.html
//Ref:Seewald A K, Fürnkranz J. An evaluation of grading classifiers[M] Advances in Intelligent Data Analysis. Springer Berlin Heidelberg, 2001: 115-124.
1.我们通过和stacking对比的方式来介绍,因为文中提到“Hence, just like stacking may be viewed as a generalization of voting, grading may be viewed as a generalization of selection by cross-validation and therefore fills a conceptual gap in the space of meta-classification schemes. ”
2.算法示意图
我们有数据集(图a),n个分类器训练结果为图b。
stacking的算法为图d,将n个分类器的训练结果合并,替代class成为新的数据集,最后用新数据集训练新的一个分类器,作为最终分类器。
对stacking评价:By providing the true class labels as the target function, stacking provides its meta-learner with indirect feedback about the correctness of its base classifiers.This feedback can be made more explicit.(就是我们的grading classifier)
grading classifier的算法为图c与图e。首先是图c,我们只关心各个分类器(base classifier)其分类正确or错误,所以我们把训练结果预测正确的记为+,训练结果预测错误的记为 —。对每个分类器(base classifier),用+,—替代class,特征不变,成为新的数据集,训练出一个meta classifier(图e)。meta classifer将特征空间分为两块,一块的class是+,表示这个meta classifier对应的base classifier在这半块分类表现好。而对应—的则代表分类表现较差。
训练完,进入分类阶段,对每一个新的example,我们可以通过“看”每个分类器的meta classifier知道其适不适合对这个example进行分类。这样,我们就可以挑选一部分可靠的分类器对其进行分类了。
写完才发现是2001年的论文。。。