您好,我最近正在学习课程,并对Adaboost做一些调查
我使用Adaboost查看了一些代码来提高神经网络的性能
据我了解,使用多个类可以通过以下方式完成Adaboost的操作:
(1)将训练数据的每个数据加权为1。
(2)训练后,如果
分类器做错了,如果分类器正确预测,就可以减轻权重。
(3)最后,我们采用所有分类器的组合,并采用最大值(概率)
我可以用Keras和sklearn编写一些代码:
concatenate
我的问题是:
我想知道Adaboost如何与神经网络配合使用
我可以想象两种方法来确定Adaboost在这里的工作方式:
(1)完成训练(1小时)后,我们对训练数据重新加权,然后一次又一次地迭代直到迭代结束。
(2)如果所有数据的第一轮都已馈入神经网络,然后我们对训练数据进行加权。
(1)和(2)之间的区别在于我们如何在Adaboost中定义一个迭代:
(1)将花费很长时间才能完成整个迭代
(2)只是一些对我没有意义的原因,因为我认为整个过程不会收敛得如此之快,否则不需要将迭代次数设置为大。
答案 0 :(得分:1)
似乎只有少数人走这条路。
我想我会选择“堆栈”方法。