集成学习(Ensemble Learning)通过构建并结合多个学习器来完成学习任务.
只包含同种类型的个体学习器,这样的集成是“同质”的;
包 含不同类型的个体学习器,这样的集成是“异质”的.
集成学习通过将多个学习器进行结合,常可获得比单一学习器 显著优越的泛化性能.
根据个体学习器的生成方式,目前的集成学习方法大致可分为两大类:
(1)个体学习器间存在强依赖关系、必须串行生成的序列化方法,代表是Boosting(GBDT)
(2)个体学习器间不存在强依赖关系、可同时生成的并行化方法,代表是Bagging (Random Forest)
Bagging :采用的是随机有放回的选择训练数据然后构造分类器,最后组合。
1. 给定一个弱学习算法,和一个训练集
2. 单个弱学习算法准确率不高
3. 将该学习算法使用多次,得出预测函数序列, 进行投票或者平均
4. 最后结果准确率将得到提高
几个特点: o 样本选择,训练集是在原始集中有放回选取的,从原始 集中选出的各轮训练集之间是独立的
o 样例权重,使用均匀取样,每个样例的权重相等
o 预测函数,所有预测函数的权重相等
o 并行计算,各个预测函数可以并行生成
Bagging之代表随机森林(Random Forest)
构造多棵决策树,形成一个森林,然后用这些决策树共同决策输出类别
两个随机:1.数据是随机选取的;2每棵决策树的构建所需的特征都是从整体的特征集随机选取的
有两个随机:
1. 输入数据是随机的从整体的训练数据中选取一部分作为一棵决 策树的构建,而且是有放回的选取;
2. 每棵决策树的构建所需的特征是从整体的特征集随机的选取的, 这两个随机过程使得随机森林很大程度上避免了过拟合现象的出现
RF构造过程:
选数据=》选特征=》构造书=》建森林=》做决策(多棵决策树同时进行决策,最后采用投票的方式进行类别的决策。)
RF优点:
o 在数据集上表现良好,两个随机性的引入,使得随机森林不容易 陷入过拟合,训练出的模型的方差小,泛化能力强。
o 在当前的很多数据集上,相对其他算法有着很大的优势,两个随 机性的引入,使得随机森林对部分特征缺失不敏感,具有很好的 抗噪声能力。
o 它能够处理很高维度(feature很多)的数据,并且不用做特征选 择,对数据集的适应能力强:既能处理离散型数据,也能处理连 续型数据,数据集无需规范化。
o 在创建随机森林的时候,对generalization error使用的是无偏估计。
o 在训练过程中,能够检测到feature间的互相影响。
o 训练速度快,可以得到变量重要性排序。
o 容易做成并行化方法,对于大数据时代的大样本训练速度有优势。
o 实现比较简单。