一般而言,决策树的生成包含了特征选择、树的构造、树的剪枝三个过程, 本节将在第一个问题中对几种常用的决策树进行对比,在第二个问题中探讨决策 树不同剪枝方法之间的区别与联系.
问题1 在构建决策树过程中有哪些优化方法
我们知道,决策树的目标是从一组样本数据中,根据不同的特征和属性,建 立一棵树形的分类结构.我们既希望它能拟合训练数据,达到良好的分类效果, 同时又希望控制其复杂度,使得模型具有一定的泛化能力.对于一个特定的问 题,决策树的选择可能有很多种.
从若干不同的决策树中选取最优的决策树是一个NP完全问题,在实际中我们 通常会采用启发式学习的方法去构建一棵满足启发式条件的决策树.
常用的决策树算法有ID3、C4.5、CART,它们构建树所使用的启发式函数各 是什么?除了构建准则之外,它们之间的区别与联系是什么?
分析与解答
首先,我们回顾一下这几种决策树构造时使用的准则.
■ ID3—— 最大信息增益
对于样本集合D D D, 类别数为K K K, 数据集D D D 的经验熵表示为
H ( D ) = ? ∑ k = 1 K ∣ C k ∣ ∣ D ∣ log ? 2 ∣ C k ∣ ∣ D ∣ H(D)=-\sum_{k=1}^{K} \frac{\left|C_{k}\right|}{|D|} \log _{2} \frac{\left|C_{k}\right|}{|D|} H(D)=?k=1∑K?∣D∣∣Ck?∣?log2?∣D∣∣Ck?∣?
其中C k C_{k} Ck? 是样本集合D D D 中属于第k k k 类的样本子集,∣ C k ∣ \mid C_{k}\mid ∣Ck?∣ 表示该子集的元素个数,∣ D ∣ \mid D \mid ∣D∣ 表示 样本集合的元素个数.
然后计算某个特征A A A 对于数据集D D D 的经验条件樀H ( D ∣ A ) H(D \mid A) H(D∣A) 为
H ( D ∣ A ) = ∑ i = 1 n ∣ D i ∣ ∣ D ∣ H ( D i ) = ∑ i = 1 n ∣ D i ∣ ∣ D ∣ ( ? ∑ k = 1 k ∣ ∣ D i k ∣ ∣ D i ∣ log ? 2 ∣ D i k ∣ ∣ D i ∣ ) , H(D \mid A)=\sum_{i=1}^{n} \frac{\left|D_{i}\right|}{|D|} H\left(D_{i}\right)=\sum_{i=1}^{n} \frac{\left|D_{i}\right|}{|D|}\left(-\sum_{k=1}^{k} \mid \frac{\left|D_{i k}\right|}{\left|D_{i}\right|} \log _{2} \frac{\left|D_{i k}\right|}{\left|D_{i}\right|}\right), H(D∣A)=i=1∑n?∣D∣∣Di?∣?H(Di?)=i=1∑n?∣D∣∣Di?∣?(?k=1∑k?∣∣Di?∣∣Dik?∣?log2?∣Di?∣∣Dik?∣?),
其中,D i D_{i} Di? 表示D D D 中特征A A A 取第i i i 个值的样本子集,D i k D_{i k} Dik? 表示D i D_{i} Di? 中属于第k k k 类的样本子集.
于是信息增益g ( D , A ) g(D, A) g(D,A) 可以表示为二者之差, 可得
g ( D , A ) = H ( D ) ? H ( D ∣ A ) . g(D, A)=H(D)-H(D \mid A) . g(D,A)=H(D)?H(D∣A).
■ C4.5——最大信息增益比
特征A A A 对于数据集D D D 的信息增益比定义为
g R ( D , A ) = g ( D , A ) H A ( D ) , g_{R}(D, A)=\frac{g(D, A)}{H_{A}(D)}, gR?(D,A)=HA?(D)g(D,A)?,
其中
H A ( D ) = ? ∑ i = 1 n ∣ D i ∣ ∣ D ∣ log ? 2 ∣ D i ∣ ∣ D ∣ H_{A}(D)=-\sum_{i=1}^{n} \frac{\left|D_{i}\right|}{|D|} \log _{2} \frac{\left|D_{i}\right|}{|D|} HA?(D)=?i=1∑n?∣D∣∣Di?∣?log2?∣D∣∣Di?∣?
称为数据集D D D 关于A A A 的取值熵.
■ CART——最大基尼指数(Gini)
Gini描述的是数据的纯度, 与信息熵含义类似.
Gini ? ( D ) = 1 ? ∑ k = 1 n ( ∣ C k ∣ ∣ D ∣ ) 2 . \{Gini}(D)=1-\sum_{k=1}^{n}\left(\frac{\left|C_{k}\right|}{|D|}\right)^{2} . Gini(D)=1?k=1∑n?(∣D∣∣Ck?∣?)2.
CART在每一次迭代中选择基尼指数最小的特征及其对应的切分点进行分类. 但与ID3、C4.5不同的是, CART是一颗二叉树, 采用二元切割法, 每一步将数据 按特征A A A 的取值切成两份, 分别进入左右子树.特征A A A 的 Gini指数定义为
Gini ? ( D ∣ A ) = ∑ i = 1 n ∣ D i ∣ ∣ D ∣ Gini ? ( D i ) . \{Gini}(D \mid A)=\sum_{i=1}^{n} \frac{\left|D_{i}\right|}{|D|} \{Gini}\left(D_{i}\right) \text {. } Gini(D∣A)=i=1∑n?∣D∣∣Di?∣?Gini(Di?).
- 七年级上册英语书27页翻译,英语初一上册27页3b部分解释急急.......
- 七年级上册数学常考题型归纳,求初一上期中考试常考的题型
- 七年级地理手绘地图,七年级地理暑假作业问题
- 一颗柠檬怎么切,自制一颗柠檬茶怎么做
- 一页纸报告excel模板,WORD 高手请进,如何运用模板?
- 一键ghos装系统,一键ghos重装系统怎么用
- 一髻儿,把“树尖上顶着一髻儿白花”中的“顶”换成“覆盖”好不好?谈谈理由
- 水培地瓜哪个头朝下
- 菊花怎么养盆栽
- 桃树病害