1. 集成学习概念
通过构建并组合多个学习器来完成学习任务的过程即为集成学习。集成学习通过将多个学习器进行结合,常获得比单一学习器显著优越的泛化性能。
2.个体学习器概念
个体学习器的概念是相对集成学习而言,表示集成学习中的一种学习器,根据个体学习器是否是同类型的学习器,分为同质和异质。
3. boosting与bagging
boosting: 是一族可将弱学习器提升为强学习器的算法。这族算法的工作机制类似:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练对训练样本分步进行调整,使得先前基学习器做错的训练样本在后续受到更多的关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直到 基学习器数目达到事先指定的值T,最终将这T个基学习器进行加权结合。
bagging:是并行式学习方法最著名的代表。给定包含m个样本的数据集,我们先随机取出一个样本放入采样集中,再把该样本放回初始数据集,使得下次采样时该样本时该样本仍有可能被选中,选出T个含有m个训练样本的采样集,然后基于每个采样集训练出一个基学习器,再将这些基学习器进行结合。
4. 结合策略(平均法,投票法,学习法)
(1)平均法—用于回归
对于回归问题,常见的就是平均法(averaging)通常有简单平均法,以及加权平均法。加权平均法的权重是从训练数据中学习而得,在现实任务中的训练样本通常不充分或存在噪声,使得学习的权重不一定可靠。因此,一般地在个体学习器性能相差较大时宜采用加权平均法,而在个体学习器性能相近时使用简单平均法。
(2)投票法-用于分类
绝对多数投票法:超过半数的
相对多数投票法:得票最多的
加权投票法:按权重来进行投票的
(3)学习法
一种更为强大的结合策略是使用”学习法”,即通过另一个学习器来进行结合,把个体学习器称为初级学习器,用于结合的学习器称为次级学习器或元学习器。对于学习法,代表方法是stacking,当使用stacking的结合策略时, 我们不是对弱学习器的结果做简单的逻辑处理,而是再加上一层学习器,也就是说,我们将训练集弱学习器的学习结果作为输入,将训练集的输出作为输出,重新训练一个学习器来得到最终结果。
5. 随机森林思想
本质:决策树+bagging +随机属性
思想:RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。
6. 随机森林的推广
随机森林推广算法的作用不是在于做预测。
RF推广算法在实际应用中占有比较好的特性,应用比较广泛,主要应用在:分类、回归、特征转换、异常点检测等。常见的RF变种算法如下:Extra Tree、Totally Random Tree Embedding(TRTE)、Isolation Forest
7. 优缺点
优点:简单、容易实现、计算开销小
缺点:基学习器的多样性不仅来自样本扰动、还有属性扰动
8. sklearn参数2
n_estimators:integer, optional (default=10) 森林中树的棵树
criterion:string, optional (default=”gini”)分割特征的测量方法
max_depth:integer or None, optional (default=None)树的最大深度
min_samples_split:分割内部节点所需要的最小样本数量
min_samples_leaf:需要在叶子结点上的最小样本数量
min_weight_fraction_leaf:一个叶子节点所需要的权重总和(所有的输入样本)的最小加权分数。当sample_weight没有提供时,样本具有相同的权重
max_features:最大特征数
max_leaf_nodes:最大叶子节点数
min_impurity_decrease:如果节点的分裂导致不纯度下降程度大于或者等于这个节点的值,那么这个节点将会被分裂。
min_impurity_split:已弃用
bootstrap:是否采用放回抽样
oob_score:是否使用袋外样本来估计泛化精度
n_jobs:用于拟合和预测的并行运行的工作(作业)数量。如果值为-1,那么工作数量被设置为核的数量。
random_state:随机数生成器使用的种子
verbose:控制决策树建立过程的冗余度
warm_start:当被设置为True时,复用之前的方法,用来给全体拟合和添加更多的估计器,反之,仅仅只是为了拟合一个全新的森林。
class_weight:相关联的类的可选的权值。如果没有给值,所有的类到都应该有一个权值
9.应用场景
一般需要分类和回归的场景。