特征工程:信息熵、信息增益、信息增益率

信息增益和特征工程

特征工程(feature engineering)中很关键的一个组成部分是特征选择(feature selection)。特征选择是一个重要的“数据预处理”(data preprocessing)过程。从给定的特征集合中选择出相关特征(relevant feature)子集的过程,称为特征选择。
特征选择的过程可以由“子集搜索”(subset search)和“子集评价”(subset evaluation)组成。简单来说,这个过程就是产生一个“候选子集”,评价出它的好坏,基于评价结果产生下一个候选子集,再对其进行评价。持续这个过程,直至无法找到更好的候选子集。
子集搜索的方法有前向搜索、后向搜索、双向搜索等。
评价方式中比较常见的有基于信息增益的评价方式,本文将介绍这种方式,并举出一个例子。

数据

OutlookTemperatureHumidityWindyPlay?
sunnyhothighfalseno
sunnyhothightrueno
overcasthothighfalseyes
rainmildhighfalseyes
raincoolnormalfalseyes
raincoolnormaltrueno
overcastcoolnormaltrueyes
sunnymildhighfalseno
sunnycoolnormalfalseyes
rainmildnormalfalseyes
sunnymildnormaltrueyes
overcastmildhightrueyes
overcasthotnormalfalseyes
rainmildhightrueno

天气预报数据例子

信息熵

信息熵的公式为:

Ent(x)=i=1nP(xi)logbP(xi)

这里定义数据集为 D 则原始数据集的信息熵为:
Ent(D)=514log2514914log2914

信息增益

信息增益的公式:

Gain(A)=Ent(D)v=1v|Dv||D|Ent(Dv)

假设选择的是outlook特征,则此时根据这一特征D分成了三个子集:
(D1|outlook=sunny)(D2|outlook=overcast)(D3|outlook=rain)

分别计算这三个子集的信息熵:
Ent(D1)=35log23525log225

Ent(D2)=44log24404log204

Ent(D3)=25log22535log235

将三个子集的信息熵分别乘以三个子集各自的个数和数据集的总个数的比值再求和:
v=1v|Dv||D|Ent(Dv)=514Ent(D1)+414Ent(D2)+514Ent(D3)

最后用原始数据的信息熵 Ent(D) 减去上式得到的值,就得到了信息增益。

信息增益率

截止到目前,我们已经得到了一个评价特征是否有效的方法:计算信息增益。当信息增益越大时,说明选择的特征包含的可供分类的信息越多。
然而以上这个结论是要基于一个假设的:所有的特征都是离散型特征,如天气数据表中的数据一样。
当出现连续型数值时,基于信息增益的评价方式将出现问题。
如:现在在天气数据的基础上加上一列特征:day of month

day of monthOutlookTemperatureHumidityWindyPlay?
1sunnyhothighfalseno
2sunnyhothightrueno
3overcasthothighfalseyes
4rainmildhighfalseyes
5raincoolnormalfalseyes
6raincoolnormaltrueno
7overcastcoolnormaltrueyes
8sunnymildhighfalseno
9sunnycoolnormalfalseyes
10rainmildnormalfalseyes
11sunnymildnormaltrueyes
12overcastmildhightrueyes
13overcasthotnormalfalseyes
14rainmildhightrueno

此时day of month的信息增益将非常大,因为其为不重复且连续的14个值。
这里就将使用信息增益率来评价,其定义为:

Gain_ratio(D)=Gain(D)IV(a)

其中, a 为特征,IV(a)为属性 a 的固有值(intrinsic value
IV(a)=v=1V|Dv||D|log2|Dv||D|

由此可以得出,day of month的 IV 也会比较大,导致其信息增益率较低。

信息增益、信息增益率和决策树

决策树有两种很常见的剪枝方法:ID3、C4.5
其中ID3使用信息增益剪枝,选择那些信息增益大的特征机型保留。
C4.5使用的是信息增益率,但是需要注意的是,增益率准则对可取值数目较少的属性有所偏好,因此C4.5算法并不是直接使用信息增益率最大的候选划分属性,而是使用了一个启发式:先从候选划分属性中找出信息增益高于平均水平的属性,在从中选择增益率最高的。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值