信息增益比(GainRatio)的定义:在选择决策树中某个结点上的分支属性时,假设该结点上的数据集为DataSet,其中包含Feature个描述属性,样本总数为len(DataSet)或者DataSet.shape[0],设描述属性feature(不同于Feature,Feature是属性的个数,取值为DataSet.shape[1],feature是某一个具体的属性)总共有M个不同的取值,则利用描述属性feature可以将数据集DataSet划分为M个子集,设这些子集为{DataSet1,DataSet2,…,DataSetN,…,DataSetM},并且其中的样本在同一个子集中对应的feature属性的取值应该是相同的,用{len1,len2,…,lenN,…,lenM}表示每个对应的子集的样本的数量,则用描述属性feature来划分给定的数据集DataSet所得到的信息增益比为:

GainRatio.png

Gain(feature)的算法和上文计算信息增益的算法是一样的,事实上,求GainRatio的过程就是在上述的计算信息增益的过程中加上一个对其“稀释”的作用,使得取值多的feature不会占据主导地位。