理论
在概率近似正确((probably approximately correct)学习框架下。一个概念是强可学习的充分必要条件是这个概念是弱可学习(仅比随机猜测稍好
)。
要求
个体学习器要好而不同。好-要不随机猜测强,不同--多样性。
Bagging (Bootstrap Aggregating):随机森林
通过bootstrap采样
形成N个数据集(样本扰动来保证多样性
),每个数据集训练一个模型,最终预测结果由投票法决定。
特点:
- boostrap采样。
- 并行结构。
- 大多数投票决定最终结果。
随机森林的特点:
-
CART树的集合。
-
Binary Partition。
-
没有剪枝。
-
两个随机性。
stacking:带权重的bagging
Boosting: H(x) = sign(∑αi hi(x))
先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器如此重复进行,直至基学习器数目达到事先指定的值T , 最终将这T 个基学习器进行加权结合.
特点:
- 关注降低偏差。
- 分类器串行生成。
- 训练样本有权重(调整权重等价于调整分布)。
- 输出结果通过加权结合(weighted voting)
AdaBoost: Adaptive Boosting,权重自适应
特点:
- 提高那些被前一轮弱分类器错误分类样本的权值,降低那些被正确分类样本的权值(训练样本分布调整方式)。
- 加权多数表决,加大分类误差率小的弱分类器的权值,使其 在表决中起较大的作用,减小分类误差率大的弱分类器的权值,使其在 表决中起较小的作用。(加权结合方式).
梯度提升树(Gradient Boosting Decison Tree, GBDT;Gradient Boosting Tree)
特点:
- 采用CART树为基学习器。
- 提升树采用前向分步算法:从前向后,每一步只学习一个基函数及其系数,逐步逼近目标函数式。
- 用损失函数的负梯度作为残差的估计值。
XGBoost
特点:
- 正则化项防止过拟合。
- XGBoost使用了一阶和二阶偏导, 二阶导数有利于梯度下降的更快更准。