对集成学习的另一个想要探讨的问题
来源:13-6 Ada Boosting 和 Gradient Boosting
Howiedu
2022-08-12
bobo老师,通过对集成学习的总结和整理,我将集成学习处理分类问题分为了这样的两部分:
1、使用不同的超参数(kNN、逻辑回归、SVM)与非超参数(决策树)模型的整合模型,通过投票的方式获得最大化的预测正确。
2、使用随机操作(随机森林、adaboosting等),通过模型的不断迭代来最大化预测正确。
不知道我这样分类是否正确?
如果遇到了分类问题,是否可以直接将这个问题用这两种“公式”套一遍,跑这两种模型,选择最优的模型来使用?
随机森林算法只是以决策树为基准,那有没有以确定的最优超参数+kNN等方法为基准的随机森林?这种训练方法与其他基准的随机森林能否再进行集成学习?
问的问题有点多:)但是本质上就是这样的一个问题:
集成学习它所需要的并不是最优的算法是什么,无论我多少种算法进行组合,都可以称为集成学习。那么在实际的数据处理过程中是不是不能以一个“公式”套在所有的数据上来跑模型,而是需要把每一种模型都先跑一遍,再混合成集成模型跑一遍;带有超参数的跑一边,随机的也跑一遍?
可能是我的理解不够深入,希望老师您能给我做一下指点!感谢!
2回答
-
1)
大体这样分类没问题。
2)
如果遇到了分类问题,是否可以直接将这个问题用这两种“公式”套一遍,跑这两种模型,选择最优的模型来使用?
可以。
但其实,在实践中,你总结的第一种方案不太被使用。主要是因为不太存在,单独的五个强分类器,每个效果都不好,但是把他们放到一个 VotingClassifier 中,效果就好了这种情况。所以对于集成学习来说,以使用随机森林为主。使用很多“弱分类器”,创建出“强分类器”,是主要的手段。
3)
有没有以确定的最优超参数+kNN等方法为基准的随机森林?
如果我没有理解错,你的问题是,我可不可以训练一堆 kNN 的弱分类器,然后集成一个强分类器?依然是,理论上,可以。但实际上,效果不好。使用决策树集成随机森林,效果是最好的。具体可以参考这里的讨论:http://coding.imooc.com/learn/questiondetail/137706.html
4)
那么在实际的数据处理过程中是不是不能以一个“公式”套在所有的数据上来跑模型
非常非常正确。随机森林是典型的“非参数学习”,所有的非参数学习算法,都不是求解一个具体的“公式”,这是和之前学习的诸如线性回归,逻辑回归,SVM 等算法的本质区别。
5)
需要把每一种模型都先跑一遍,再混合成集成模型跑一遍?带有超参数的跑一边,随机的也跑一遍?
这个问题有一些“歧义”,关键是你说的“跑一遍”到底是什么意思。
但是,整体,这里就有 bagging 或者 pasting 这类算法,和 voting 这类算法的区别了。(虽然他们都叫集成学习。)
voting 算法,是需要先把每个模型跑出来,然后用调好的最优的算法做 voting 的;
但是 bagging 和 pasting 并没有去“调”每一个子模型,只是根据参数,直接训练出来,每个子模型训练出来是什么样,就是什么样,错了也没关系。所以叫“弱分类器”。
看看·你是否能理解?
继续加油!:)
232022-08-15 -
小白一只726
2023-09-14
不太理解这里的超参数模型和非超参数模型是啥意思..
012023-09-14
相似问题