Boosting作用
如果一个弱分类器的错误率低于50%,那么通过boosting之后可以使得弱分类器在训练集上的错误率降低到0%
Boosting框架
获取第一个分类器$f_1(x)$
找到另一个分类器$f_2(x)$去帮助$f_1(x)$
- $f_2(x)$要弥补$f_1(x)$,要和$f_1(x)$互补
- 获取第二个分类器$f_2(x)$
- ……
- 最后,combine所有的分类器
- 注意(每个分类器的学习是有顺序的)
Adaboosting
adaboosting的思想是:
每一组数据都有一个weight,初始weight都为1 ,数据集$data1$
用数据训练一个分类器$f_1(x)$
调整数据的weight,得到数据集$data2$,使得$f_1(x)$在新数据上的分类正确率降低到50%
- 其实这个weight最终会影响损失函数,使得损失函数加权,对错误的分类和正确的分类的权值不同
- 二分类的正确率不可能低于50%
- 调整weight的策略是,如果一个数据分类错误,那么这个数据的weight乘一个d,如果数据分类正确,那么该数据的weight除以一个d,之后,使得分类正确的加权损失和分类错误的损失相等,就可以解出d。
- 在数据集$data2$上训练分类器$f_2(x)$
- ……
- 最后就到了combine阶段,对不同的分类器加权和,权值的设置和d有关。