机器学习之集成学习简介
Posted 未央夜色
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习之集成学习简介相关的知识,希望对你有一定的参考价值。
综述
集体学习:
将不同的分类器组合起来。
先产生个体学习,在根据多个个体学习完成学习任务。
每个个体学习可以采用的算法可以不同
集成学习可能有不同的提升/不变/降低
这要求学习器:
- 单个个体不能太差
- 学习器之间要有差异/多样性
理论上来说,如果单个学习器之间相互独立,当个数很多的时候,集成学习的正确率非常高,趋近于满分
如何产生好而不同的个体学习器,是集成学习的核心问题
bagging
有放回
- 从有放回的从原数据集中选择S次,得到一个大小为S的新数据集(大小和原数据集相等)
- 对于每个新数据集,建立分类器(可以用不同方法)
- m个分类器的结果投票,多数表决
随机森林
综述
在baggiung基础上的改进。相对于普通DT有改进。
普通DT是在某个节点的所有属性中选择一个最优的
RD是在所有节点的属性中随机选择K个,在这K个里面选择最优的
随机性
样本随机,属性随机。
- 随机的从原始数据集中选择样本组成新的数据集
- 随机选择K个属性,建立决策树(N个属性,K选择log(N))
流程
- 从数据集中又放回的选出M个样本
- 重复上述操作N次,得到N个子集,每个子集中有M个样本
- 建立分类器,对每个子集训练
评价
- 实现简单,性能强大
- 可以并行化计算,代价小,适合处理大数据
- 能够在结果中给出哪些特征比较重要
- 防止过拟合,准确率高
boosting
- boosting集中关注被已有分类器错分的那些数据来获得新的分类器。重点关注做错的训练样本。
- boosting的每个分类器都有不同的权重
- 训练过程的每一轮中,根据样本分布为每个训练样本重新赋一个新的权重。
adaboost
综述
- 将弱学习提升为强学习,不改变所给的训练数据,而不断改变训练数据权值的分布,使得训练数据在基本分类器的学习中起不同的作用,这就是AdaBoost的一个特点。
- 前一个分类器改变权重,同时组成最后的分类器。
- 分类器的重要性依赖于他的错误率
- 最基本的性质是在学习过程中不断减少训练误差
adaboost总体结构
算法流程
- 初始化所有样本,权重设置为一样的
- 训练分类器,对每个样本进行分类
- 根据样本判断的结果,更新每个样本的权重,分类正确的样本降低权重,分类错误的样本增加权重
- 开始第二次训练
- 重复上述,直到达到指定的精确度/分类器个数
权重
样本的权重和分类器的权重。
错误率–>G1的系数alpha–>更新权重。
错误率影响分类器权重alpha,分类器权重alpha影响样本权重。
不改变训练数据,不断改变训练数据的权重分布,让不同的训练数据在学习器中起不同的作用
计算分类器在数据集上的错误率
错误率 = 错误分类的样本个数/所有的样本个数根据错误率计算分类器权重alpha的值
更新样本的权重
总体的分类判决:
分类结果的判定规则
评价
- 能把弱分类器组合成强分类器,准确度高
- 相比于RF,给每个分类器也赋给了权重
- 不易出现过拟合
- 代价大,每次迭代都要重新训练分类器
- 对噪声和异常数据敏感。
adaboost两个最大的特点:
- 每次调整训练数据的权重
- 利用基本分类器的线性组合构建最终分类器
性能指标
正确率
对预测结果而言,预测为正的样本中有多少是真正的正样本。
A个正例,预测B个正例
A中出现在B中的个数/B的个数召回率
针对我们原来的样本而言,表示的是样本中的正例有多少被预测正确了。
A个正例,预测B个正例
B中出现在A中的个数/A的个数ROC
接收者操作特征。
AUC:曲线下的面积。表征分类器的平均性能值。
GBDT
梯度提升决策树
结合策略
平均法
- 简单平均
- 加权平均
- 加权平均不一定优于简单平均
- 当分类器效果差不多时,简单平均更合适
- 当分类器效果差别较大,加权平均更合适
投票法
- 绝对多数投票:过半
- 相对多数投票:选最多票的
- 加权投票
学习法
- 将初级学习器的结果当做输入
对比adaboost和随机森林
- 二者都是进行投票表决,RF进行的是公平投票,ada进行的是权重投票
- RF是并行的,ada是串行的
- 都会给权重,ada是给分类器和样本权重,RF只给样本权重(随机选择样本点个数)
- RF在总体数据集中速记选取样本,ada选择所有样本。
以上是关于机器学习之集成学习简介的主要内容,如果未能解决你的问题,请参考以下文章