转自:通俗理解条件熵

前面我们总结了信息熵的概念通俗理解信息熵 - 知乎专栏,这次我们来理解一下条件熵。

我们首先知道信息熵是考虑该随机变量的所有可能取值,即所有可能发生事件所带来的信息量的期望。公式如下:

我们的条件熵的定义是:定义为X给定条件下,Y的条件概率分布的熵对X的数学期望

这个还是比较抽象,下面我们解释一下:

设有随机变量(X,Y),其联合概率分布为

条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性。随机变量X给定的条件下随机变量Y的条件熵H(Y|X)

公式

下面推导一下条件熵的公式:

注意

注意,这个条件熵,是指在给定某个数(某个变量为某个值)的情况下,另一个变量的熵是多少,变量的不确定性是多少?

因为条件熵中X也是一个变量,意思是在一个变量X的条件下(变量X的每个值都会取),另一个变量Y熵对X的期望。

这是最容易错的!

例子

下面通过例子来解释一下:

假如我们有上面数据:

设随机变量Y={嫁,不嫁}

我们可以统计出,嫁的个数为6/12 = 1/2

不嫁的个数为6/12 = 1/2

那么Y的熵,根据熵的公式来算,可以得到H(Y) = -1/2log1/2 -1/2log1/2

为了引出条件熵,我们现在还有一个变量X,代表长相是帅还是不帅,当长相是不帅的时候,统计如下红色所示:

可以得出,当已知不帅的条件下,满足条件的只有4个数据了,这四个数据中,不嫁的个数为1个,占1/4

嫁的个数为3个,占3/4

那么此时的H(Y|X = 不帅) = -1/4log1/4-3/4log3/4

p(X = 不帅) = 4/12 = 1/3

同理我们可以得到:

当已知帅的条件下,满足条件的有8个数据了,这八个数据中,不嫁的个数为5个,占5/8

嫁的个数为3个,占3/8

那么此时的H(Y|X = 帅) = -5/8log5/8-3/8log3/8

p(X = 帅) = 8/12 = 2/3

计算结果

有了上面的铺垫之后,我们终于可以计算我们的条件熵了,我们现在需要求:

H(Y|X = 长相)

也就是说,我们想要求出当已知长相的条件下的条件熵。

根据公式我们可以知道,长相可以取帅与不帅俩种

条件熵是另一个变量Y熵对X(条件)的期望。

公式为:

H(Y|X=长相) = p(X =帅)*H(Y|X=帅)+p(X =不帅)*H(Y|X=不帅)

然后将上面已经求得的答案带入即可求出条件熵!

这里比较容易错误就是忽略了X也是可以取多个值,然后对其求期望!!

转自:通俗理解条件熵

机器学习:什么是条件熵?相关推荐

  1. 相对熵与交叉熵_详解机器学习中的熵、条件熵、相对熵、交叉熵

    目录 信息熵 条件熵 相对熵 交叉熵 总结 一  信息熵 (information entropy) 熵 (entropy) 这一词最初来源于热力学.1948年,克劳德·爱尔伍德·香农将热力学中的熵引 ...

  2. 解释机器学习中的熵、联合熵、条件熵、相对熵和交叉熵

    原文地址:https://www.cnblogs.com/kyrieng/p/8694705.html 1.信息熵 (information entropy) 熵 (entropy) 这一词最初来源于 ...

  3. 详解机器学习中的熵、条件熵、相对熵、交叉熵

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 目录 信息熵 条件熵 相对熵 交叉熵 总结 一 信息熵 (info ...

  4. 机器学习进阶(4):熵,联合熵,条件熵,互信息的推导和联系

    文章目录 前言 熵 联合熵 条件熵 互信息 几种熵之间的关系 前言 机器学习领域有一个十分重要的概念:熵.大家或多或少都听过一些熵的概念和定义,但是可能对他们的关系不是很清楚,本文就熵,联合熵,条件熵 ...

  5. 机器学习:信息熵,基尼系数,条件熵,条件基尼系数,信息增益,信息增益比,基尼增益,决策树代码实现(一)

    文章目录 初始化,涉及到使用的变量: 信息熵 定义公式,经验公式 代码: 基尼系数 定义公式,经验公式 代码: 条件熵,条件基尼系数 条件熵定义公式,经验公式 条件基尼系数定义公式,经验公式 代码: ...

  6. 【机器学习】信息论基础(联合熵、条件熵、交叉熵、KL散度等)+ Python代码实现

    文章目录 一.基本概念 1.1 联合熵 1.2 条件熵 1.3 交叉熵 1.3.1 Python编程实现交叉熵计算 1.4相对熵(KL散度) 1.4.1 Python编程实现KL散度计算 二.自信息和 ...

  7. 预见未来丨机器学习:未来十年研究热点

    <h2 class="subheader">机器学习:未来十年研究热点 </h2><div class="gray-d1-c margin- ...

  8. LARS 算法简介-机器学习

    https://cosx.org/2011/04/modified-lars-and-lasso/ 查看全文 http://www.taodudu.cc/news/show-64111.html 相关 ...

  9. 【机器学习入门】(4) 决策树算法理论:算法原理、信息熵、信息增益、预剪枝、后剪枝、算法选择

    各位同学好,今天我向大家介绍一下python机器学习中的决策树算法的基本原理.内容主要有: (1) 概念理解:(2) 信息熵:(3) 信息增益:(4) 算法选择:(5) 预剪枝和后剪枝. python ...

最新文章

  1. Python:计算两个蛋白或小分子之间的RMSD
  2. c++ 高通、低通、带通滤波器_射频/微波滤波器
  3. 动图|几张动图告诉你,工业机器人无所不能!
  4. java web filter标签是什么,Java Web:5.Filter
  5. wildfly管理控制台_WildFly管理控制台已更新–请求反馈
  6. amqp协议 面试_分布式消息中间件-RabbitMQ面试题(必问)
  7. 继承20161223
  8. kernel command line 参数详解
  9. 985 硕士待业200天,工作 10 年存款 2W : 累死你的不是工作,而是“选择”
  10. QFIL的烧录、读写
  11. visio绘图固定图形位置
  12. 数学建模MATLAB之分析法(一)
  13. linux ss服务器,【ss】Linux上ss命令的安装与使用
  14. Maven 生命周期详解
  15. 禁用和卸载树莓派 4B 上 avahi-daemon
  16. 栅栏CyclicBarrier
  17. 利用mobi 和 epub 电子书文件建立自己的书库
  18. 合并数组相同key php,php将两个数组相同的key合并到一个数组
  19. IP实验3:静态路由和动态路由配置
  20. 计算机二级ms真题及答案网盘,全国计算机二级MS Office考试真题及答案

热门文章

  1. [RHEL7基础篇-1] 简介及安装
  2. HTTP协议中的长连接和短连接(keep-alive状态)
  3. 民生银行大数据体系架构设计与演进
  4. Vue表格中手机号码的隐藏与分组
  5. python机器人编程教程入门_机器人操作系统(ROS)入门必备:机器人编程一学就会
  6. 模糊查询 oracle语句,Oracle特殊符号的模糊查询
  7. 使用python-opencv人脸检测,画框,添加字符函数
  8. 腾讯微服务框架TSF简介
  9. Python常用库的使用
  10. 微信这个实用的功能,别说你还不知道