机器学习—选择拆分信息增益

构建决策树时,我们需要决定在节点上拆分什么特性,将根据什么特征选择减少熵,最大减少熵或减少杂质,或在决策树中最大化纯度,学习熵的减少称为信息增益,因此,选择在决策树中的每一个节点上使用什么特性进行拆分。

如何选择信息增益?

在决策树的根节点上,建立识别猫和不识别猫的能力,如果我们使用根节点的耳朵形状特征,这就是我们会得到的五个左边例子和五个右边例子,在左边我们有四只猫,所以P1=4/5=0.8,在右边,只有一只猫,P1=1/5=0.2,如果将熵公式应用于数据的左侧子集和右侧子集,将会发现左边的杂质程度H(0.8)=0.72,在右边H(0.2)=0.72,这就是左右分支的熵,这是在耳朵形状特征上分开。如果在脸型上进行分类,然后圆脸的数据有七个,其中有四只猫,所以P1=4/7=0.57,右边1/3是猫,P1=0.33,所以H(0.57)=0.99,H(0.33)=0.92,所以左右两侧的杂质程度似乎要高得多。最后,在根节点上使用第三个可能的特性选择,胡须的特征,在这种情况下,根据胡须是否存在来分类,左边的P1=3/4=0.75,右边的P1=2/6=0.33,熵值如下H(0.75)=0.81,H(0.33)=0.92,所以在根节点使用的特性的这三个选项,哪一种更有效,事实证明,与其看这些熵数并将它们进行比较,不如对它们进行加权平均是有用的。

有一个节点,里面有很多例子,熵很高,这会很糟糕,因为熵是杂质的度量 ,如果你有一个非常大和不纯净的数据集与有几个例子和一个非常不纯净的数据集相比,所以关键的决定是这三种可能的特征选择,在根节点中使用,我们想使用哪一个与这些分类中每一个相关联的是两个数字,左边分支上的熵和右边分支上的熵,为了从这些中挑选,我们可以把两个数字组合成一个数字,所以,我们可以只做这三个选择,把这两个数字组合起来的方法是用加权平均数,因为在左分支和右分支中,低熵是非常重要的,也取决于有多少例子进入了左右分支,因为如果有很多例子进入了左分支,更重要的是要确保熵值低,在本例中,十个例子有五个例子去了左分支,所以我们可以计算加权平均数(5/10H(0.8)+5/10H(0.2)),中间和右边例子同上,我们选择拆分的方法是通过计算这三个数字哪个最低,得出哪个杂质最少,纯度最高,因为这给了我们平均加权熵最低的左右分支。

在构建决策树的过程中,我们实际上要对这些公式再做一个修改,与其计算加权平均熵,我们要计算熵的减少,所以,如果我们去根节点,在根节点上,已经从所有十个示例开始,有五只猫和五只狗,所以在根节点,我们得到P1=5/10=0.5,所以根节点的熵值H(0.5)=1,这是最大的纯度,因为是五只猫和五只狗,所以我们实际上要用来选择分类的公式不是左右分支的加权熵,取而代之的是根节点的熵,计算得到三个数字:0.28、0.03、0.12,这些被称为信息增益 。他测量的是你在树上得到的熵的减少,由分类产生的,因为熵原本是在根节点通过分类,最终得到的熵值较低,这两个值之间的差异是熵的减少,在耳朵形状分类的情况下,信息增益为0.28.

为什么要计算信息增益?

事实证明,决定何时停止的标准之一,如果熵的减少量太小在这种情况下,你可以决定你只是不必要的增加了树的大小,冒着过度拥挤的风险,决定不再费心,如果熵的减少在阈值以下太小,在这个特殊的例子中,在耳朵形状上的分类导致熵的最大减少,所以我们会选择在根节点的耳朵形状特征上分类。

以耳朵特征为例,定义,左分支为P1left=左边子集中具有正标签的示例的分数,有四只猫所以=4/5,把W定义为例子的分数,在所有到左边分支的根节点的例子,=5/10,类似的,右分支定义为P1right,作为正例的分数,只有一个是猫,即为1/5,同样Wriget=5/10,P1root=0.5,所以公式如下所示,所以有了熵的定义,可以计算与选择任何特定特性相关联的信息增益,在节点上拆分,然后在所有可能的功能中,可以选择分类,然后选择一个给你最高的信息增益,这将提高数据子集的纯度。在决策树的左右分支上,这将导致一个特性的分类,增加了数据子集的纯度。

相关推荐
SuniaWang3 小时前
《Spring AI + 大模型全栈实战》学习手册系列 · 专题六:《Vue3 前端开发实战:打造企业级 RAG 问答界面》
java·前端·人工智能·spring boot·后端·spring·架构
IDZSY04304 小时前
AI社交平台进阶指南:如何用AI社交提升工作学习效率
人工智能·学习
七七powerful4 小时前
运维养龙虾--AI 驱动的架构图革命:draw.io MCP 让运维画图效率提升 10 倍,使用codebuddy实战
运维·人工智能·draw.io
水星梦月4 小时前
大白话讲解AI/LLM核心概念
人工智能
温九味闻醉5 小时前
关于腾讯广告算法大赛2025项目分析1 - dataset.py
人工智能·算法·机器学习
White-Legend5 小时前
第三波GPT5.4 日400刀
人工智能·ai编程
. . . . .5 小时前
Claude Code Hooks的原理、触发执行机制以及如何编写 Hooks
人工智能
w_t_y_y5 小时前
codex(一)下载安装&使用
人工智能
唐兴通个人5 小时前
唐兴通应邀为平安财产险北京分公司高层主讲《新媒体营销》专项培训,引领保险业AI时代内容营销变革
人工智能