第九章《搞懂算法:决策树是怎么回事》笔记

决策树算法是机器学习中很经典的一个算法,它既可以作为分类算法,也可以作为回归算法。

9.1 典型的决策树是什么样的

决策树算法是依据"分而治之"的思想,每次根据某属性的值对样本进行分类,然后传递给下个属性继续进行分类判断。

9.2 决策树算法的关键是什么

找到这棵具体的决策树的关键在于判断根节点的属性,根节点选择哪个特征变量是最为关键的, 究竟应该选择哪个特征变量是整个决策树算法的核心所在。因为一旦选定了根节点,我们就可 以依此类推选择根节点的子节点,直到叶节点。通过递归方法,我们就得到了一棵决策树。有了一棵决策树,我们循环调用就可以得到若干棵决策树。

如何选择根节点呢?选择的原则就是其信息增益最大,也就是尽可能消除决策的不确定性。

9.3 信息、信息量与信息熵

(1)信息是什么?

1928 年哈特莱给出过"信息"的一个定义:"信息就是不确定性的消除。"

(2)信息量是什么?

信息量的量化计算最早也是由哈特莱提出的,他将消息数的对数值 定义为信息量。具体来说,假设信息源有 m 种等概率的消息,那么信息量就是 。哈特莱的公式中有个假设条件,那就是"结果是等概率出现的"。

信息论定义信息量为 。其中,Xi 表示某个发生的事件,p 表示这个事件发生的 概率。

(3)信息熵是什么?

信息熵是信息论创立者香农受到热力学"熵"这个概念的启发而创立的,它度量了信源的 不确定性程度。如果说,信息量计算公式()度量的是某一个具体事件发生时所携 带的信息量,那么信息熵就是最终结果出来之前所有可能结果的信息量的期望值。

根据信息论,信息熵的计算公式为:。信息熵越大,表示事件结果的不确定性越大;信息熵越小,表示事件结果的确定性越大。

信息增益是两个信息熵的差异,表示信息熵的变化程度,在决策树算法中有着重要的应用。

9.4 信息增益的计算过程

9.5 剪枝处理是怎么回事

通过剪枝处理来去掉一些分支,从而降低过拟合风险。

决策树剪枝处理有两种方式:预剪枝和后剪枝。预剪枝是指决策树生成节点前评估当前节 点的划分是否能够带来决策树泛化能力的提升。如果当前节点的划分不能带来决策树泛化能力 的提升,则以当前节点为叶节点并停止划分。后剪枝是指先通过训练样本数据生成一棵完整的 决策树,然后自底向上对非叶节点进行评估和替换。如果某个节点的子树被替换成叶节点后, 决策树泛化能力得到了提升,那么就进行替换。

9.6 编程实践:手把手教你写代码

相关推荐
梦回江东10 分钟前
ansible中的主机清单
算法
青梅橘子皮15 分钟前
string---入门OJ题(1)
数据结构·算法
qq_4542450333 分钟前
BasicMethod.Map 设计框架:8 个并行基础模块的数学根基与实现
数据结构·算法·c#
青山木40 分钟前
Hot 100 --- 二叉树与递归
java·数据结构·算法·leetcode·深度优先
r_oo_ki_e_1 小时前
Java反射机制学习笔记
java·笔记·学习
珠海西格电力1 小时前
数据采集与治理:零碳园区管理系统的 “生命线”
大数据·人工智能·算法·架构·能源
wahahaman2 小时前
基于GBDT的次日降水量预测实验
人工智能·python·机器学习·数据分析
Nontee2 小时前
数据类型与包装类 — 一个新手学Java的数据类型笔记
java·笔记·python
●VON2 小时前
HarmonyKit | 鸿蒙新特性:router 导航 API 从 pushUrl 到 UIContext 的演进
算法·华为·交互·harmonyos
星释2 小时前
鸿蒙智能体开发实战:31.鸿蒙壁纸大师 - 环境搭建与基础配置
算法·华为·ai·harmonyos·鸿蒙