目录
概述
决策树:被用于分类 回归任务
特点: 树形结构,if-then规则的合集,模型可读性强、分类速度快
决策树学习步骤: 特征选择、决策树的生成、决策树的修剪
决策树学习的目标: 从训练数据中归纳出一组分类规则,与训练数据矛盾较小且具有较好的泛化能力
学习方法:用损失函数表示上一目标,常用损失函数——正则化的极大似然
特征选择
目的: 选择对训练数据有足够分类能力的特征,提高学习效率
准则:信息增益、信息增益率
首先介绍 熵 和 条件熵 的定义
熵:随机变量不确定度的度量
X的概率分布如下
X的熵定义为
曲线图如下H(X)在p = 0, 1时为0 p= 0.5 取最大值
条件熵
设有随机变量(X, Y)联合概率分布为
条件熵 H(Y|X) 表示随机变量X 的条件下 随机变量Y的不确定性
信息增益
在已知特征X的信息后,使得类Y的信息不确定度减小的程度
信息增益大的特征具有更强的分类能力
——> 特征选择的方法: 对训练集,计算每个特征的信息增益,比较大小后,选择信息增益最大的特征
信息增益比
目的:为了解决信息增益作为特征选择的基准,存在偏向取值较多的特征的问题。
但 同时引入了 信息增益比倾向于选择特征取值较少的特征
决策树的生成
ID3算法
在决策树各个节点处应用信息增益准则选择特征,递归构建树。
具体步骤:
从根节点开始,对节点计算所有可能的特征的信息增益,选择增益最大的特征作为节点特征。在对子节点递归调用上述方法。直至信息增益均很小或没有特征可选位置
C4.5
在决策树各个节点处应用信息增益比准则选择特征,递归构建树
CART
CART假设决策树为二叉树
基尼指数:基尼指数越大,不确定性越大
特征选择基准: 基尼指数最小化
基尼指数
对于样本集合D,其基尼系数为
K为类的个数,C_k为属于第k类的样本子集
若D根据特征A的某一取值α被分成D1, D2两部分
在A的条件下,D的基尼系数定义为
生成过程:
(1)对于D计算现有特征对该数据集的基尼指数,计算每个特征及其可能的取值
(2)选择基尼系数最小的特征及其取值,作为最优特征与最优分类点
(3)递归调用
决策树的剪枝
目的:未剪枝的决策树对训练数据分类效果较好,但容易过拟合,通过简化决策树,增强泛化能力
基准: 损失函数
loss = 模型对训练数据的误差 + α * 模型复杂度
α决定了期望中的剪枝后的决策树的复杂度
步骤: (1)计算每个节点的经验熵
(2)递归的从树的叶节点回缩
(3)如果回缩后的损失函数小于原损失函数,进行剪枝
高频考点:
- 决策树,xgboost,bagging以及boosting的区别
- 决策树的剪枝、特征选择
特征选择: 信息熵增益 or 信息熵增益比 对应两个不同的算法 ID3 C4.5
剪枝:树的复杂程度和测试集分类效果的均衡
- 信息增益和信息增益率的区别
信息增益中,样本数目多的特征影响大
信息增益率中,样本数量少的特征影响大
- 决策树是否了解,从决策树到bagging,boosting,GBDT,XGBoost
- 决策树中的熵代表什么含义?如何理解决策树中的过度拟合?会有什么后果?
代表随机变量不确定度 训练集效果好,测试集泛化能力差
- 决策树中有哪些参数,如何避免决策树的过拟合
剪枝
- 随机森林相比决策树的优点有什么
- 决策树的启发式算法有哪些,不同算法分别用了什么准则来选择特征
ID3 C4.5 CART 信息增益 信息增益率 基尼指数
- lightgbm与决策树的区别
- ID3决策树结点分裂准则,怎么求,让我写求解过程
信息增益最大
- 信息熵怎么求
见上
- 归一化对LR和决策树的影响
归一化可以加快LR训练速度, 对决策树无影响
数值缩放不会影响分类位置,对树结构没有影响。并且决策树不能进行梯度下降,树模型是阶跃的,阶跃点不可导,无需归一化。
对于如adaboost, SVM, LR,KNN, K-means等 ,当特征值差别很大,为归一化前, 梯度下降时,损失函数的等高线是椭圆形,
归一化后等高线为圆形,寻找最优点时所需的迭代次数
- 决策树(原理、分裂准则、缺点、熵)
原理 见上 分裂准则 见上 熵 见上
缺点 偏向数据更多 或更少的特征 ; 容易过拟合; 忽略属性间的相关性