C2-4.2.2 决策树-纯度+信息熵+信息增益

C2-4.2.2 决策树-纯度+信息熵+信息增益

1、首先了解他的应用背景------决策树

其实说白了,就是一个二叉树

2、纯度

我们举一个买黄金的例子吧!黄金有999 和 9999 。 他们是有区别的,代表着黄金的纯度(相对杂质而言 ),那在决策树中------我们也引入了"纯度 "这一概念。如果结果集中,全是这一类的,那么我们说"vary pure"。如果结果集中有6个,但是3个是一个类别,那么我们说"not pure",把除这三个外的东西叫做"杂质"

2.1 纯度简述

  • 如果一个结果集(经过 一次 或多次 二叉树判别),都是 猫 / 都是 非猫,那么就说这个结果集 very pure

  • 如果一个结果集 既有 猫 又有 非猫,那么就是not pure 。但是not pure 也分级别 。------引出我们计算的公式

  • P1:是 猫的纯度。

    • 当一组数据有6个,猫有0个时,熵为0,纯度最高

    • 当一组数据有6个,猫有3个时,熵为0.92,纯度不好

      ...

3、信息熵(entropy )

那买黄金,有专业的机器来判别我们的黄金的纯度,那在决策树中的结果集中,如何判别纯度呢 / 判别纯度的标准??------这就引出了**"信息熵"** 的定义。

3.1 信息熵的定义

In Machine Learning, entropy ※※measures the level of disorder or uncertainty in a given dataset or system . It is a metric that quantifies the amount of information in a dataset, and it is commonly used to evaluate the quality of a model and its ability to make accurate predictions.

※A higher entropy value indicates a more heterogeneous dataset with diverse classes, while a lower entropy signifies a more pure and homogeneous subset of data. Decision tree models can use entropy to determine the best splits to make informed decisions and build accurate predictive models.

  • 【※※※总结】:
    • 信息熵是用来衡量 给出的数据集中 数据的纯度的
    • 信息熵越小,数据就越纯。
    • 通常用在机器学习分类的情况下

3.2 信息熵公式

4、信息增益(Information Gain)

4.1、信息增益概念:

Information gain calculates the reduction in entropy or surprise from transforming a dataset in some way.

It is commonly used in the construction of decision trees from a training dataset, by evaluating the information gain for each variable, and selecting the variable that maximizes the information gain , which in turn minimizes the entropy and best splits the dataset into groups for effective classification.

【※※※总结】:

  • 信息增益:是计算信息熵的减少量/看做减少速率的
  • 被广泛用在 决策树的节点选择上:对每一个可选的节点 进行信息增益判断,选择结果最大的作为节点------才能产生最小的信息熵结果
  • 信息增益代表了在一个条件下,信息复杂度(不确定性)减少的程度。

4.2 信息增益公式:

相关推荐
纪元A梦2 小时前
贪心算法应用:K-Means++初始化详解
算法·贪心算法·kmeans
_不会dp不改名_2 小时前
leetcode_21 合并两个有序链表
算法·leetcode·链表
mark-puls2 小时前
C语言打印爱心
c语言·开发语言·算法
Python技术极客3 小时前
将 Python 应用打包成 exe 软件,仅需一行代码搞定!
算法
睡不醒的kun3 小时前
leetcode算法刷题的第三十四天
数据结构·c++·算法·leetcode·职场和发展·贪心算法·动态规划
吃着火锅x唱着歌3 小时前
LeetCode 978.最长湍流子数组
数据结构·算法·leetcode
我星期八休息3 小时前
深入理解跳表(Skip List):原理、实现与应用
开发语言·数据结构·人工智能·python·算法·list
lingran__3 小时前
速通ACM省铜第四天 赋源码(G-C-D, Unlucky!)
c++·算法
蒋星熠4 小时前
如何在Anaconda中配置你的CUDA & Pytorch & cuNN环境(2025最新教程)
开发语言·人工智能·pytorch·python·深度学习·机器学习·ai
Hcoco_me4 小时前
什么是机器学习?
人工智能·机器学习