栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【西瓜书学习】1、决策树

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【西瓜书学习】1、决策树

思想:希望决策树的分支节点所包含的样本尽可能属于同一类别,即节点的纯度越来越高。

1. 信息熵 (Information Entropy)

信息熵(Information Entropy)用于度量样本集合 “纯度(purity)” 的指标。

假定当前样本集合D中第k类样本所占比例为 p k p_k pk​(k=1, 2…|y|) ,则D的信息熵定义为
E n t ( D ) = − ∑ k = 1 ∣ y ∣ p k l o g 2 p k Ent(D)= -sum_{k=1}^{ |y|}p_klog_2^{p_k} Ent(D)=−k=1∑∣y∣​pk​log2pk​​
Ent(D)值越小,则D的纯度越高。


2. 信息增益 (Information Gain) 与 ID3 决策树算法

用于计算属性a对样本集D进行划分所获的的 “信息增益”
G a i n ( D , a ) = E n t ( D ) − ∑ v = 1 V | D v | | D | E n t ( D v ) Gain(D,a)=Ent(D)-sum_{v=1}^Vfrac{|D^v|}{|D|}Ent(D^v) Gain(D,a)=Ent(D)−v=1∑V​|D||Dv|​Ent(Dv)

一般而言,信息增益越大,意味着使用属性a来进行划分所获得的“纯度提升”越大。

因此,我么可用信息增益来进行决策树的划分属性选择,即选择属性 a ∗ = a r g m a x G a i n ( D , a ) a_*=argmax Gain(D, a) a∗​=argmaxGain(D,a),著名的ID3决策树算法就是以信息增益为准则来选择划分属性

ID3 决策树算法(Iteration Dichotomiser 迭代二分类器) 是基于信息增益的决策树算法。


4. 信息增益率(Information Gain Ratio) 与 C4.5 决策树算法

因为信息增益准则对可取值数目较多的属性有所偏好,为了避免这个情况,C4.5 决策树算法使用 “信息增益率”来决策

信息增益率:
G a i n _ r a t i o ( D , a ) = G a i n ( D , a ) I V ( a ) Gain_ratio(D,a)=frac{Gain(D,a)}{IV(a)} Gain_ratio(D,a)=IV(a)Gain(D,a)​ 其中, I V ( a ) = − ∑ v = 1 V D v D l o g 2 D v D 其中,IV(a)=-sum_{v=1}^V{frac{D^v}{D} log_2^{frac{D^v}{D} }} 其中,IV(a)=−v=1∑V​DDv​log2DDv​​

需要注意的是:增益率准则对可取值数目较少的属性值有所偏好。因此,C4.5 算法并不是直接选择增益最大的候选划分属性,而是使用了一个启发式:先从候选划分属性中找出信息增益高于平均水平的属性,再从中选择增益率最高的。


5. 基尼指数(Gini) 与 CART 决策树算法

基尼指数是另一种用于衡量数据集纯度的指标。
基尼值: G i n i ( D ) = 1 − ∑ k = 1 y p k 2 基尼值: Gini(D) = 1-sum_{k=1}^yp_k^2 基尼值:Gini(D)=1−k=1∑y​pk2​
基尼值 Gini(D) 越小,数据集的纯度越高。
基尼指标: G i n i _ i n d e x ( D , a ) = ∑ v = 1 V D v D G i n i ( D ) 基尼指标: Gini_index(D,a) = sum_{v=1}^Vfrac{D^v}{D} Gini(D) 基尼指标:Gini_index(D,a)=v=1∑V​DDv​Gini(D)

我们在候选属性集合A中,选择那个使得划分后属性基尼指数最小的属性作为最优划分属性

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1018303.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号