【机器学习】决策树与集成算法问题简单总结

1. 决策树

1.1 概要

决策树算法既可以应用于分类任务也可以用于回归任务

训练阶段:给定训练数据集中根据特征构建数

测试阶段:根据构建好的树模型进行预测即可

如何选择特征以构建树模型呢?需要一个衡量标准来进行选择,答案是通过选择特征后的熵值进行选择。

1.2 熵值

通过熵值衡量特征划分的好坏,熵是表示随机变量不确定性的度量,越稳定熵越大。

H ( X ) = − ∑ i = 1 n P i log ⁡ P i H(X)=-\sum_{i=1}^n P_i\log P_i H(X)=i=1nPilogPi

理解:这里的n可以理解类别数,简单理解就是出现所有类的概率通过这一公式求得熵值。

结论:不确定性越大,熵值越大

信息增益:表示特征X使得类Y的不确定性减少的程度,即熵值减少量

方法:当确定了特征后,该特征中的每一种对应着目标的分类情况,根据每一种计算一个熵值,然后根据每一种的占比情况求取加权熵值,和原本的熵值的差值就是信息增益。根据最大的信息增益选择第一个结点即根结点。

1.3 决策树算法的分类

ID3

通过信息增益进行特征选择从而构建树模型

C4.5

通过信息增益率,

CART

使用GINI系数进行特征选择

结论:基尼系数越小代表效果越好,

1.4 决策树剪枝策略

剪枝的原因:防止过拟合

剪枝策略:预剪枝、后剪枝

预剪枝:建立决策树过程中进行剪枝,方法有:限制深度(特征数)、叶子结点个数、叶子结点样本数、信息增益量等

后剪枝:决策树建立完成后进行剪枝操作,方法:根据衡量标准剪枝叶子结点

2. 集成算法(Ensemble Learning)

集成学习是一大类模型融合策略和方法的统称。集成算法重点在于集成,简单说就是集百家之长,集成的方式也就表示了不同的集成算法。一般集成算法有如下分类:Bagging、Boosting、Stacking。

2.1 Bagging和Pasting

Bagging全称是bootstrap aggregation,允许训练实例被同一预测器多次采样,也称为自举汇聚法,Pasting指的是采样时样本不放回,允许被多个预测器采样但是不许被同一个预测器多次采样,通常是训练多个分类器取平均。

典型的就是**随机森林,**随机:数据采样随机,特征选择随机,不是使用所有的样本或者所有的特征,也保证了泛化能力

随机森林的优势:处理高维数据,不用特征选择,可以得到哪些特征较为重要,容易并行化,易于可视化展示

2.2 Boosting

通过弱分类器,通过加权训练模型,典型:AdaBoost、Xgboost、GBRT

Adaboost会根据前一次的分类效果调整数据权重

2.3 Stacking

通过聚合多个分类或者回归模型,通过分阶段来进行, 第一阶段得出每个分类器结果,第二阶段使用前一阶段结果训练

3. 常见问题

基分类器:常用的基分类器是决策树,为什么?

(1)决策树可以方便将样本权重整合到训练过程中,不需要使用过采样方法调整样本权重

(2)可以通过调整树的层数来对决策树的表达能力和泛化能力做折中

(3)数据样本的扰动对决策树影响较大,从而构成的基分类器随机性较大,增加其多样性

神经网络模型也适合作为基分类器,也是因为其不稳定,可以引入随机性

为什么基分类器不能替换成线性分类器比如K-近邻?

(1)首先线性分类器属于稳定的分类器,方差较小,同时采样方式也导致通过集成后得到的效果不一定比原来好,很难收敛。

(2)不稳定分类器带来一定的随机性,通过集成后的方差比原来低,所以基分类器一般不会选择线性分类器这些稳定的分类器,决策树本身对样本分布较为敏感所以适用。

通过偏差和方差定量解释过拟合、欠拟合?

偏差:训练模型输出与真实之间的差距,问题通常是对模型算法做了错误的假设导致,由偏差带来的误差通常在训练误差上就能体现。偏差大,即欠拟合。

方差:训练模型输出的方差,通常是由于模型复杂度较高导致,由方差带来的误差通常体现在测试误差相对于训练误差的增量上。方差大,即过拟合。

Bagging能够提升弱分类器的性能原因是降低了方差,Boosting能够提升弱分类器的性能原因是降低了偏差?
Bagging是取平均,原本样本采样不足,通过Bagging进行取平均,从而降低了方差,即输出的变化降低了;Boosting是提升算法,根据错误不断缩小损失函数,使得偏差减低,不会降低方差,因为其分类器间具有较强的相关性,缺乏独立性所以不会降低方差。

参考链接:《百面机器学习》、《统计学习方法》、《机器学习实战》

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值