统计学习第五章-决策树
决策树
决策树是一种常见的if-then规则的集合。在某种程度上反应空间联合概率密度分布,关于if-then结构这又一篇不错的arXiv文章
ATOMIC: An Atlas of Machine Commonsense for If-Then Reasoning
决策树大致分为3步:(1)特征选择,(2)决策树的生成,(3)决策树的剪枝。
if-then规则的重要性质:互斥且完备。每一个实例只被一条规则和路径覆盖。
决策树的条件概率分布
在此吐槽一下李航,写的确实不如周志华大佬的好,很多问题的表达都不明确,图画的也很糟糕,理解起来确实麻烦。
图中A,B是并列关系,A为基础的划分空间,B为A的概率分布,即 F ( x 1 , x 2 ) F(x_1,x_2) F(x1,x2)的值,如果 F ( x 1 , x 2 ) > 0.5 F(x_1,x_2) >0.5 F(x1,x2)>0.5则记为1,否则记为0,得到图A中的+1,-1的关系。树在不进行放缩的情况下,进行的是垂直超平面划分空间,k-d树的划分方式也是一样的,最后得到每个区域的结果分类。
特征选择
特征选择的基本方法为选择有利于区分数据集的特征。通常有信息增益和信息增益比以及基尼系数等
1.信息熵
信息的不确定性可以用熵来表示:
对于一个取有限个值的随机变量X,如果其概率分布为:
P ( X = x i ) = p i , i = 1 , 2 , ⋯ , n P(X=x_i)=p_i,i=1,2,⋯,n P(X=xi)=pi,i=1,2,⋯,n
那么随机变量X的熵可以用以下公式描述:
H ( X ) = − ∑ i = 1 n p i l o g p i H(X)=−\sum_{i=1}^{n}p_ilogp_i H(X)=−i=1∑npilogpi
2.条件熵(Conditional Entropy)与信息增益(Information Gain)
信息的不确定性我们用熵来进行描述。很多时候,我们渴望不确定性,但是又有很多时候,我们也讨厌不确定性,所以在这种情况下,我们又要竭力去消除系统的不确定性。
那怎么样去消除系统的不确定性呢?当我们知道的信息越多的时候,自然随机事件的不确定性就越小。举个简单的例子:
如果投掷一枚均匀的筛子,那么筛子出现1-6的概率是相等的,此时,整个系统的熵可以表述为:
H ( c ) = − 1 6 l o g 2 1 6 × 6 = l o g 2 6 H(c)=−\frac{1}{6}log_2\frac{1}{6}×6=log_26 H(c)=−61log261×6=log26
如果我们加一个特征,告诉你掷筛子的结果出来是偶数,因为掷筛子出来为偶数的结果只可能为2,4,6,那么此时系统的熵为:
H ( c ) = − 1 3 l o g 2 1 3 × 3 = l o g 2 3 H(c)=−\frac{1}{3}log_2\frac{1}{3}×3=log_23 H(c)=−31log231×3=log23
因为我们加了一个特征x:结果为偶数,所以整个系统的熵减小,不确定性降低。
来看下条件熵的表达式:
1.当特征 x x x被固定为值 x i x_i