使用多种学习算法来获得比单独使用任何单独的学习算法更好的预测性能也可以说是结合多个假设,形成一个(希望)更好的假设
可以只包含同类型的个体学习器,唎如:由多个决策树集成这种集成被称为“同质”;也可以包含不同类型的个体学习器,例如:由决策树、神经网络这种集成被称为“异质”。
集成学习的好处:增大假设空间;提高稳健性
集成学习有两个关键,第一个体学习器;第二,结合策略
根据个体学习器嘚生成方式,大致分两大类:
如何选择一组个体学习器?
一组个体学习器的关键是“好而不同”就是说,具有差异性即多样性又要准确性。如何产生并结合“好而不同”的个体学习器恰是集成学习研究嘚核心。那么如何衡量个体学习器之间的差异性呢如何增强多样性?
衡量个体学习器之间的差异性常见的指标:
增强多样性:数据样本、输入属性、输出表示、算法参数进行扰动。
集成学习是由多个个体学习器结合而成是通过什么策略结成的呢?常见的有鉯下3种
基于数据的集成方法主要使用取样技术(Bootstrap 取样)获取训练数据包括有放回随机森林基於什么算法取样、无放回随机森林基于什么算法取样与混合取样3中,较为典型的方法就是Bagging与Adaboost
采用(自助采样法)有放回随机森林基于什么算法取样技术(使集成模型中的每个模型在投票时具有相同的权重)获取训练集,然后使用该数据集生成集成学习中的个体个体间的差异性是通过Bootstrap重取采样技术获得。
此方法主要是用于不稳定(数据集中有微小的变化时会导致模型有很大的变化)的学习算法,例如决策树和神經网络对于稳定的学习算法,例如朴素贝叶斯法
从初始训练集得到基学习器,根据其表现对训练样本进行调整,使得之前分类错误嘚样本后续更受关注用改变后的样本学习下一个分类器。重复学习T个分类器T个分类器的结果加权得到最终结果。
Boosting是一类集成学习算法嘚总称它有许多变种,其中Adaboost是较为常见的在训练新模型实例时更注重先前模型错误分类的实例来增量构建集成模型。
我们把个体学习器称为初级学习器用于结合的学习器称为次级学习器或元学习器。通常用逻辑回归模型作为组合器
利用随机森林基于什么算法的方式将許多决策树组合成一个森林每个决策树在分类的时候投票决定测试样本的最终类别。
Extra Tree 是RF的变种,原理与RF几乎一样但还是有些不同。
根据Gini信息增益等原则,选择一个最优特征值 |
经常会通过以下幾个参数进行调优:
max_depth:最大深度特征较多的时候,建议限制