机器学习中的一些信息论 information theory
2016年08月15日 10:17:04 阅读数:2043
信息量:
如果事情x发生,那么 p(x)p(x) 能为“事件x发生”所提供的信息量:
h(X)=−log2p(x)h(X)=−log2p(x)
也就是消除事情不确定性所需要的信息量,单位是 比特
国足取得冠军的概率是0.01 h(国足取冠)=−log20.01=4.6比特h(国足取冠)=−log20.01=4.6比特
羽毛球队取得冠军的概率是0.9 h(国羽取冠)=−log20.9=0.1比特h(国羽取冠)=−log20.9=0.1比特
在信息论中,熵是接收的每条消息中包含的信息的平均量,它是不确定性的度量,越随机的信号源其熵越大
离散:
H(X)=−∑xp(xi)log2p(xi)H(X)=−∑xp(xi)log2p(xi)
连续:
H(X)=−∫p(x)log2p(x)H(X)=−∫p(x)log2p(x)
在最优化理论中,很多算法用熵作为优化目标,Watanabe也提出过“学习就是一个熵减的过程”,算法学习的过程就是信息不确定性减小的过程。比如 bayesian 分类器,在两类样本数量严重不平衡的情况下,如果以经验公式为训练目标,那么对少数类样本的分类会有严重的错误率,而以互信息为训练目标的分类器,则能够根据样本比例自动平衡错误率。
联合熵
度量二维随机变量的不确定性
H(X,Y)=−∑i∑jp(xi,yj)log2p(xi,yj)H(X,Y)=−∑i∑jp(xi,yj)log2p(xi,yj)
条件熵
H(Y|X)H(Y|X) 表示已知XX, 求YY 的平均不确定性
H(Y|X)=−∑i∑jp(xi,yj)log2p(yj|xi)H(Y|X)=−∑i∑jp(xi,yj)log2p(yj|xi)
H(Y|X)=∑ip(xi)H(Y|xi)H(Y|X)=∑ip(xi)H(Y|xi)
推导过程如下:
H(Y|X)=−∑i∑jp(xi)p(yi|xi)log2p(yi|xi)=−∑ip(xi)∑jp(yi|xi)log2p(yi|xi)=∑ip(xi)H(Y|xi)H(Y|X)=−∑i∑jp(xi)p(yi|xi)log2p(yi|xi)=−∑ip(xi)∑jp(yi|xi)log2p(yi|xi)=∑ip(xi)H(Y|xi)
由联合熵和条件熵可得:
H(X,Y)=−∑i∑jp(xi,yj)log2p(xi,yj)=−∑i∑jp(xi,yj)log2p(yj|xi)+∑i(∑jp(xi,yj))log2p(xi)=H(Y|X)+H(X)H(X,Y)=−∑i∑jp(xi,yj)log2p(xi,yj)=−∑i∑jp(xi,yj)log2p(yj|xi)+∑i(∑jp(xi,yj))log2p(xi)=H(Y|X)+H(X)
相对熵
又称为KL散度(Kullback–Leibler divergence,KLD),信息散度(information divergence),信息增益(information gain)
主要用来衡量两个分布的相似度。假设连续随机变量x,真是的概率分布为p(x)p(x), 模型得到的近似分布为q(x)q(x)
离散:
KL(p||q)=−∑ip(xi)lnq(xi)−(−∑p(xi)lnp(xi))=∑ip(xi)lnp(xi)q(xi)KL(p||q)=−∑ip(xi)lnq(xi)−(−∑p(xi)lnp(xi))=∑ip(xi)lnp(xi)q(xi)
连续:
KL(p||q)=−∫xp(x)lnp(x)+p(x)lnq(x)=∫xp(x)lnp(x)q(x)KL(p||q)=−∫xp(x)lnp(x)+p(x)lnq(x)=∫xp(x)lnp(x)q(x)
对离散变量的相对熵:
KL(p||q)=−∑ip(xi)lnq(xi)−(−∑p(xi)lnp(xi))=H(p,q)−H(p)KL(p||q)=−∑ip(xi)lnq(xi)−(−∑p(xi)lnp(xi))=H(p,q)−H(p)
应用:
在LDA(Latent Dirichlet Allocation)中计算doc之间内容的相似度
其中
H(p,q)=−∑ip(xi)lnq(xi)H(p,q)=−∑ip(xi)lnq(xi)
称为交叉熵(cross entropy),(注意H(p,q)H(p,q) 和 H(X,Y)H(X,Y) 的区别)
应用:
做过神经网络二值分类器的同学,用 sigmoid 做激活函数的时候,和目标函数对比较一下,是不是发现很相似?其实就是用的 cross entropy cost function:
C=1n∑i[yilnf(xi)+(1−yi)ln(1−f(xi))]C=1n∑i[yilnf(xi)+(1−yi)ln(1−f(xi))]
互信息
相对熵是衡量同一个变量的两个一维分布之间的相似性,而互信息是用来衡量两个相同的一维分布变量之间的独立性
mutual information I(p,q)I(p,q) 是衡量联合分布p(x,y)p(x,y) 和 p(x)p(y)p(x)p(y) 分布之间的关系,即他们之间的相关系数
I(X,Y)=KL(p(x,y)||p(x)p(y))=∑i∑jp(xi,yj)lnp(xi,yj)p(xi)p(yj)=−H(X,Y)+H(X)+H(Y)=H(X)−H(X|Y)=H(Y)−H(Y|X)I(X,Y)=KL(p(x,y)||p(x)p(y))=∑i∑jp(xi,yj)lnp(xi,yj)p(xi)p(yj)=−H(X,Y)+H(X)+H(Y)=H(X)−H(X|Y)=H(Y)−H(Y|X)
信息增益 Information Gain
假设系统原有的熵为 H(X)H(X),后来引入了特征 TT,在固定特征 TT 的情况下,系统的混乱度减小,熵减小为 H(X|T)H(X|T),那么特征 TT 给系统带来的信息增益为:
IG(T)=H(X)−H(X|T)IG(T)=H(X)−H(X|T)
信息增益率 Information Gain ratio
R(X,T)=IG(T)splitinfo(T)R(X,T)=IG(T)splitinfo(T)
在特征提取与特征选择, 和图像处理中有广泛的应用,比如在决策树中用于选择下次进行分支划分的特征。