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

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

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

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

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

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

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

9.3 信息、信息量与信息熵

(1)信息是什么?

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

(2)信息量是什么?

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

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

(3)信息熵是什么?

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

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

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

9.4 信息增益的计算过程

9.5 剪枝处理是怎么回事

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

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

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

相关推荐
前端摸鱼匠6 小时前
【AI大模型春招面试题11】什么是模型的“涌现能力”(Emergent Ability)?出现条件是什么?
人工智能·算法·ai·自然语言处理·面试·职场和发展
MORE_776 小时前
leecode-合并区间-贪心算法
算法·贪心算法
2401_873204656 小时前
分布式系统安全通信
开发语言·c++·算法
妄汐霜7 小时前
小白学习笔记(spring框架的aop和tx)
笔记·学习
sw1213898 小时前
C++中的代理模式实战
开发语言·c++·算法
ballball~~8 小时前
ISP-CCM(Color Correction Matrix)
图像处理·数码相机·算法
sheeta19988 小时前
LeetCode 每日一题笔记 日期:2025.03.24 题目:2906.构造乘积矩阵
笔记·leetcode·矩阵
Sunshine for you9 小时前
实时操作系统中的C++
开发语言·c++·算法
中科院提名者9 小时前
BPE 算法的硬核拆解——理解词表(Vocabulary)是如何从零训练出来的,以及字符串是如何被切碎的
算法
「QT(C++)开发工程师」9 小时前
C++11三大核心特性深度解析:类型特征、时间库与原子操作
java·c++·算法