信息增益

一:基础知识

1:个体信息量

  -long2pi

2:平均信息量(熵)

  Info(D)=-Σi=1...n(pilog2pi)

  比如我们将一个立方体A抛向空中,记落地时着地的面为f1,f1的取值为{1,2,3,4,5,6},f1的熵entropy(f1)=-(1/6*log(1/6)+...+1/6*log(1/6))=-1*log(1/6)=2.58

3:假设我们选择属性R作为分裂属性,数据集D中,R有k个不同的取值{V1,V2,...,Vk},于是可将D根据R的值分成k组{D1,D2,...,Dk},按R进行分裂后,将数据集D不同的类分开还需要的信息量为:

  InfoR(D)=Σi=1...k(Di/D)Info(Di)

4:信息增益:分裂前后,两个信息量只差:

  Gain(R)=Info(D)-InfoR(D)

二:例子

记录ID 年龄 收入层次 学生 信用等级 是否购买电脑
1 青少年 一般
2 青少年 良好
3 中年 一般
4 老年 一般
5 老年 一般
6 老年 良好
7 中年 良好
8 青少年 一般
9 青少年 一般
10 老年 一般
11 青少年 良好
12 中年 良好
13 中年 一般
14 老年 良好

1:计算Info(D)

  Info(D)=-Σi=1...n(pilogpi)=-(5/14)log(5/14)-(9/14)log(9/14)=-0.3571*(-1.4856)-0.6429*(-0.6373)=0.1597+0.1234=0.5305+0.4097=0.9402

2:计算InfoR(D)

  Info年龄(D)=(5/14)Info(D老年)+(4/14)Info(D中年)+(5/14)Info(D青少年)=(5/14)(-(3/5)log(3/5)-(2/5)log(2/5))+(4/14)(-(4/4)log(4/4)-(0/4)log(0/4))+(5/14)(-(2/5)log(2/5)-(3/5)log(3/5))

        =(5/14)(0.6*0.737+0.4*1.3219)+(4/14)(0+0)+(5/14)(0.4*1.3219+0.6*0.737)

        =(5/14)(0.4422+0.52876)+0+(5/14)(0.52876+0.4422)

        =0.3571*0.97096+0+0.3571*0.97096

        =0.694

  同样可以计算出

  Info收入层次(D)=0.911

  Info学生(D)=0.789

  Info信用等级(D)=0.892

3:计算信息增益:

  Gain(年龄)=Info(D)-Info年龄(D)=0.940-0.694=0.246

  Gain(收入层次)=Info(D)-Info收入层次(D)=0.940-0.911=0.029

  Gain(学生)=Info(D)-Info学生(D)=0.940-0.789=0.151

  Gain(信用等级)=Info(D)-Info信用等级(D)=0.940-0.892=0.058

  

时间: 2024-10-11 22:26:52

信息增益的相关文章

一条SQL搞定信息增益的计算

欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 周东谕,2011年加入腾讯,现任职于腾讯互娱运营部数据中心,主要从事游戏相关的数据分析和挖掘工作. 信息增益原理介绍 介绍信息增益之前,首先需要介绍一下熵的概念,这是一个物理学概念,表示"一个系统的混乱程度".系统的不确定性越高,熵就越大.假设集合中的变量X={x1,x2-xn},它对应在集合的概率分别是P={p1,p2-pn}.那么这个集合的熵表示为: 举一个的例子:对游戏活跃用户进行分层,分为

[机器学习]信息&熵&信息增益

关于对信息.熵.信息增益是信息论里的概念,是对数据处理的量化,这几个概念主要是在决策树里用到的概念,因为在利用特征来分类的时候会对特征选取顺序的选择,这几个概念比较抽象,我也花了好长时间去理解(自己认为的理解),废话不多说,接下来开始对这几个概念解释,防止自己忘记的同时,望对其他人有个借鉴的作用,如有错误还请指出. 1.信息 这个是熵和信息增益的基础概念,我觉得对于这个概念的理解更应该把他认为是一用名称,就比如‘鸡‘(加引号意思是说这个是名称)是用来修饰鸡(没加引号是说存在的动物即鸡),‘狗’是

算法干货----决策树算法中的熵与信息增益

什么是决策树?为什么要用决策树? 决策树是一种二分树,或是多分数.对于大量数据的细分工作有很大帮助.在日常生活中,决策树的算法可谓是每天都在用.小到用户分类,大到辅助决策.实际上他的使用很多. 至于为什么要用到决策树,个人认为就是因为这种算法简单.代码实现起来主要就是IF-ELSE就可以实现.可这一算法的发展也是从ID3--->C4.5----->C5.0. 它的主要步骤就两个:1,建树 2,剪树 如何建树,就是如何分你的数据,按照哪种特性?比如人口统计数据,是按年龄,身高,体重,学历....

特征选择方法之信息增益

前文提到过,除了开方检验(CHI)以外,信息增益(IG,Information Gain)也是非常有效的特征选择方法.但凡是特征选择,总是在将特征的重要程度量化之后再进行选择,而怎样量化特征的重要性,就成了各种方法间最大的不同.开方检验中使用特征与类别间的关联性来进行这个量化,关联性越强,特征得分越高,该特征越应该被保留. 在信息增益中,重要性的衡量标准就是看特征可以为分类系统带来多少信息,带来的信息越多,该特征越重要. 因此先回顾一下信息论中有关信息量(就是"熵")的定义.说有这么一

我们为什么需要信息增益比,而不是信息增益?

我们为什么需要信息增益比,而不是信息增益? 表一 满足什么情况才去玩高尔夫 [1] Day Temperatrue Outlook Humidity Windy PlayGolf? 07-05 hot sunny high false no 07-06 hot sunny high true no 07-07 hot overcast high false yes 07-09 cool rain normal false yes 07-10 cool overcast normal true y

信息增益与熵

在信息论中,熵被用来衡量一个随机变量出现的期望值.变量的不确定性越大,熵也就越大,把它搞清楚所需要的信息量也就越大,熵是整个系统的平均消息量. 信息熵是信息论中用于度量信息量的一个概念.一个系统越是有序,信息熵就越低:反之,一个系统越是混乱,信息熵就越高.所以,信息熵也可以说是系统有序化程度的一个度量. 他的计算公式是:H(x)=E[I(xi)]=E[ log(1/p(xi)) ]=-∑p(xi)log(p(xi)) (i=1,2,..n).自信息,又称信息本体,用来衡量单一事件发生时所包含的信

决策树 - 熵,信息增益的计算

故事从一条小学数学题说起 "爸爸,熊猫为什么是3个不是11个" "宝贝,你还没学二进制好吗....." 以上故事纯属虚构,真实的对话其实是这样的 "爸爸, 为什么3比4小" "宝贝,数一下就知道啦.你看猪猪有1,2,3. 3个, 小鸟有1,2,3,4. 4个.  你看小鸟是不是比猪猪多? 所以3比4小" 为什么我们要用十进制?  我们当然明白十进制是为了把世界描述为在数学上大家统一使用的语言然后进行沟通, 如果你用十进制我用二

文本分类入门-特征选择方法之信息增益

http://www.blogjava.net/zhenandaci/archive/2009/03/24/261701.html 前文提到过,除了开方检验(CHI)以外,信息增益(IG,Information Gain)也是很有效的特征选择方法.但凡是特征选择,总是在将特征的重要程度量化之后再进行选择,而如何量化特征的重要性,就成了各种方法间最大的不同.开方检验中使用特征与类别间的关联性来进行这个量化,关联性越强,特征得分越高,该特征越应该被保留. 在信息增益中,重要性的衡量标准就是看特征能够

决策树算法-信息熵-信息增益-信息增益率-GINI系数-转

1. 算法背景介绍 分类树(决策树)是一种十分常用的分类方法.他是一种监管学习,所谓监管学习说白了很简单,就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类.这样的机器学习就被称之为监督学习.分类本质上就是一个map的过程.C4.5分类树就是决策树算法中最流行的一种.下面给出一个数据集作为算法例子的基础,比如有这么一个数据集,如下: 这个Golf数据集就是我们这篇博客讨论的基础.我们分类的目的就是根据某一