Kullback-Leibler 散度, 互信息,信息增益
1. Kullback-Leibler 散度:
在概率论,信息论中我们往往得考虑两个概率分布(更一般的,测度)的差异度,一种衡量方式就是所谓的用Kullback-Leibler散度(或者称距离)表征两个测度(分布)的差异度,其定义如下:
定义 1.1 :$P,Q$是样本空间$(\Omega, \mathcal{G})$上的两个概率测度,并且$P关于Q$绝对连续,则我们定义$P,Q$之间的KL距离为:\begin{equation}D_{KL}(P\mid\mid Q)=\int_{\mathcal{\Omega}}\log \frac{dP}{dQ}dP,\end{equation}
其中$\frac{dP}{dQ}$表示测度$P$对于$Q$的Radon-Nykodim导数。
下面我们考察一些特例:
如果$\mathcal{S}$是欧式空间的某子集,配有相应的测度$\mu_{\mathcal{S}}$,例如离散集情况下为计数测度,为开集的时候是Lebesgue测度,则对于任意定义在概率空间$(\Omega, \mathcal{G},P)$上取值于$\mathcal{S}$的两个随机变量(或者随机向量)$X,Y:\Omega\longrightarrow \mathcal{S}$, 他们都将自然诱导出$\mathcal{S}$上的相应测度$\mu_{X}$, $\mu_{Y}$,例如:
\begin{equation}\mu_{X}(A)\triangleq P(X^{-1}(A)),\end{equation}
对于任意的$\mathcal{S}$的Borel子集$A$。
现在我们假设测度$\mu_{X}$,$\mu_{Y}$均关于$\mu_{S}$绝对连续,那么我们自然可以得到$X,Y$之概率定义在$\mathcal{S}$上的密度函数:
$$P_{X}=\frac{d\mu_{X}}{d\mu_{\mathcal{S}}},$$
$$P_{Y}=\frac{d\mu_{Y}}{d\mu_{\mathcal{S}}},$$
这个时候我们知道:
$$D_{KL}(\mu_{X}\mid\mid \mu_{Y})=\int_{\mathcal{S}}P_{X}\log \frac{P_{X}}{P_{Y}}d\mu_{\mathcal{S}}$$
今后我们为了方便起见,不再区分欧式空间子集上的测度和其上的密度函数,这对于应用问题这足够了,例如我们将上面式子中的KL距离直接记为$D_{KL}(P_{X}\mid\mid P_{Y})$。
既然是”距离”,那么$D_{KL}$应该就有非负性:
定理 1.2 :$D_{KL}$ 非负,也就是对于任意两个测度$P,Q$, $P$对于$Q$绝对连续,则:
\begin{equation}D_{KL}(P\mid\mid Q)\geq 0,\end{equation}
等号成立当且仅的测度P,Q相等。
证明很容易,直接利用Jensen不等式:
\begin{equation}D_{KL}(P\mid\mid Q)=-\int_{\Omega}\log (\frac{dP}{dQ})^{-1} dP\geq -\log(\int_{\Omega}(\frac{dP}{dQ})^{-1}dP)=-\log Q(\Omega)=0,\end{equation}
等号成立当且仅当$\frac{dP}{dQ}=1$, 也就是$P=Q$。
2. 互信息:
为了方便起见,设$X$为取值$\mathcal{X}\in\mathbb{R}$的随机变量,$Y$为取值$\mathcal{Y}\in\mathbb{R}$的随机变量,$\mathcal{X}$,$\mathcal{Y}$为离散集或者开集,配有测度$\mu_{\mathcal{X}}$, $\mu_{\mathcal{Y}}$为相应的计数测度或者Lebesgue测度,而$X$分布的概率密度$P_{X}$,$Y$分布的概率密度$P_{Y}$以及联合分布的概率密度$P_{X,Y}$均存在,这时候我们可以定义$X,Y$之互信息:
\begin{equation}I(X,Y)=\int_{\mathcal{X}\times\mathcal{Y}}P_{X,Y}(x,y)\log\frac{P_{X,Y}(x,y)}{P_{X}(x)\cdot P_{Y}(y)}d\mu_{\mathcal{X}}(x)\times d\mu_{\mathcal{Y}}(y)\end{equation}
由以上定义我们容易知道:
\begin{equation}I(X,Y)=D_{KL}(P_{X,Y}\mid\mid P_{X}P_{Y})\end{equation}
所以所谓的"互信息"是表征概率测度$\mu_{X,Y}$与$\mu_{X}\times\mu_{Y}$的差异度的量,其为$0$当且仅的$X,Y$互相独立,所以$I(X,Y)$也表征着两个变量的相关程度,其值越大代表相关程度越大。很容易知道互信息满足如下基本性质:
性质 2.1:互信息满足:
1)对称性:
\begin{equation}I(X,Y)=I(Y,X);\end{equation}
2)非负性:
\begin{equation}I(X,Y)\geq 0.\end{equation}
3. 互信息,似然比检验与Pearson卡方检验:
值得一提的是,互信息和Pearson卡方检验有着很强的联系,下面我们来简单看一下。
现在我们有两个随机变量$X,Y$, $X$取值$\lbrace 1,...,K\rbrace$, $Y$取值$\lbrace 1,...,L\rbrace$。我们想做一个假设检验$H_{0}:$ $X$, $Y$相互独立。为了做这个检验,我们考虑任意的$N$次抽样得到的数据集:$D=\lbrace (x_{1}, y_{1}),...,(x_{N},y_{N})\rbrace$, 其中$x_{i}$表示第$i$个样本的$X$值,其中$y_{i}$表示第$i$个样本的$Y$值。
现在我们对任意$k=1,...,K$,$l=1,...,L$, 令:$N_{k,l}=\text{#}\lbrace i:x_{i}=k,y_{i}=l\rbrace$, $N_{k,\ast}=\text{#}\lbrace i:x_{i}=k\rbrace$, $N_{\ast,l}=\text{#}\lbrace i:y_{i}=l\rbrace$, 其中我们用$\text{#}$表示有限集合元素个数。下面我们为了得到一个假设检验的判定标准,定义如下的量:
\begin{equation}T=2\sum_{k,l}N_{k,l}\log\frac{N_{kl}\cdot N}{N_{k,\ast}\cdot N_{\ast,l}}.\end{equation}
我们容易看出,$T$只不过是在数据集$D$上$X,Y$的的互信息(非全局样本空间)的某常数倍量,具体来说就是$D$上的经验分布密度函数:
$\hat{P}_{X,Y}(k,l)=\frac{N_{k,l}}{N}$, $\hat{P}_{X}(k)=\frac{N_{k,\ast}}{N}$, $\hat{P}_{Y}(l)=\frac{N_{\ast,l}}{N},$
而$D$上$X,Y$之互信息:
$$I_{D}(X,Y)=\sum_{k,l}\hat{P}_{X,Y}(k,l)\log\frac{\hat{P}_{X,Y}(k,l)}{\hat{P}_{X}(k)\cdot \hat{P}_{Y}(l)}=\frac{T}{2N}$$
下面的定理是我们做假设检验的基础:
定理 3.1:在假设$H_{0}$前提下,当$N$足够大时,$T$近似服从$\chi^{2}_{\nu}-$分布, 其中$\nu=(K-1)(L-1)$。
我们可以简要地看看该定理为何成立,此处我们为了方便起见略去一些计算细节。首先令:$E_{k,l}\triangleq (N_{k,\ast}\cdot N_{\ast,l})/N$, $O_{k,l}\triangleq N_{k,l}$,这时候我们在假设$H_{0}$下由大数定理容易知道:$f_{ij}\triangleq\frac{O_{kl}-E_{kl}}{E_{kl}}$依概率收敛到$0$, 所以自然地我们可以应用泰勒展开得到依概率意义下我们有:
\begin{equation}\begin{split}T=&2\sum_{k,l}(1+f_{kl})E_{kl}\log(1+f_{kl})\newline =& \sum_{kl}2E_{kl}(1+f_{kl})(f_{kl}-\frac{1}{2}f_{kl}^{2}+O(f_{kl}))\newline =&\sum_{kl}2E_{kl}f_{kl}+E_{kl}f_{kl}^{2}+O(E_{kl}f_{kl}^{3})\end{split}\end{equation}
注意到上式第一项:$\sum_{kl}2E_{kl}f_{kl}=2\sum_{k,l}[N_{kl}-\frac{N_{k\ast}\cdot N_{\ast,l}}{N}]=2N-2\frac{\sum_{k}N_{k,\ast}\sum_{l}N_{\ast,l}}{N}=2N-2\frac{N\cdot N}{N}=0$, 第二项:
$$\sum_{k,l}E_{kl}f_{kl}^{2}=\sum_{kl}\frac{(O_{kl}-E_{kl})^{2}}{E_{kl}},$$
而第三项我们继续应用大数定理不难估计出,它也将依概率收敛到$0$, 所以$N$足够大的时候,$T$近似与$\sum_{kl}\frac{(O_{kl}-E_{kl})^{2}}{E_{kl}}$同分布,而该分步正好是Pearson 卡方检验的统计量[ ], 近似服从$\chi^{2}_{\nu}$分布, 所以该命题成立。
综上所述,我们可以得到一个假设检验如下,我们称之为似然比检验:
取一个很大的$N$(例如一万以上),取一个充分小的显著水平$\alpha$(例如0.05),随机抽取$N$个样本作为数据集,按照(4)计算$T$,再计算$T$ 在自由度为$\nu=(K-1)(L-1)$下的p值,如果$p<\alpha$, 则拒绝假设$H_{0}$。
4. 熵,信息增益与互信息的关系:
4.1)熵:
在信息论,概率论中,如果随机变量$X$定义于样本空间$\mathcal{\Omega}$, 取值于某个元素个数为$K$的集合$\mathcal{X}$,则其熵$H(X)$可定义为:\begin{equation}H_{\Omega}(X)=-\sum_{x\in \mathcal{X}}P_{X}(x)\log P_{x}(x),\end{equation}
熵是表示信息混乱度,或者说是不确定性,不纯度,信息量的量。
现在我们如果以$P_{\mathcal{U}}$表示离散集$\mathcal{X}$上的均匀概率测度,也就是$P_{\mathcal{U}}(i)=\frac{1}{K}$, 则:
性质 4.1 : 1) 熵和分布$P_{X}$的KL距离满足:
$D_{KL}(P_{X},P_{\mathcal{U}})+H(X)=log K,$
2) 熵$H(X)$有上界:
$H(X)\leq \log K.$
上面的公式说明,离均匀分布越远的分布,熵也就越小,混乱度越低,而均匀分布的熵最大,为$\log K$,这也是符合我们的直观的。
4.2)联合熵:
现在如果有两个定义在某样本空间$\Omega$, 分别取值$\lbrace 1,...,K\rbrace$与$\lbrace 1,...,L\rbrace$的随机变量$X,Y$, 我们可以定义联合熵$H(X,Y)$,以表征$X,Y$联合分布的不确定性(混乱度):
\begin{equation}H(X,Y)=-\sum_{k,l}p_{k,l}\log p_{k,l},\end{equation}
其中$p_{k,l}\triangleq P(X=k,Y=l)$.
我们可以观察一下,如果$X,Y$是两个"毫不相干"的随机变量, 也就是他们互相独立,则我们很容易由以上定义得到:
\begin{equation}H(X,Y)=H(X)+H(Y).\end{equation}
也就是说当两个随机变量完全不相干的时候,他们的总体混乱度是两个变量混乱度之和,这在直观上很容易理解。但是一般情况下,往往有:
性质 4.2 : 1) 熵,联合熵,互信息满足:
\begin{equation}H(X)+H(Y)-H(X,Y)=I(X,Y)\end{equation}
2) 联合熵小于两随机变量熵之和:
\begin{equation}H(X,Y)\leq H(X)+H(Y).\end{equation}
性质1)可以很容易推论出2),该结论从直观上也不难理解,它表示,两个变量的总体混乱度(不纯度,信息量)不大于两变量的混乱度之和,这是因为随机变量之间存在一定相关性的缘故,造成了混乱度的损失!而1)也表明,所谓互信息就是由于X,Y的相关性造成的总体混乱度(不纯度)的损失量,所以它可以表征变量的相关性,互信息越大我们认为两个变量越相关。
其实我们很容易计算出:
\begin{equation}\begin{split}H(X)+H(Y)-H(X,Y)=-&\sum_{k}P(X=k)\log P(X=k)-\sum_{l}P(Y=l)\log P(Y=l)\newline +&\sum_{k,l}P(X=k,Y=l)\log P(X=k,Y=l)\newline =-&\sum_{k,l}P(X=k,Y=l)\log P(X=k)\newline -&\sum_{k,l}P(X=k,Y=l)\log P(Y=l)\newline +&\sum_{k,l}P(X=k,Y=l)\log P(X=k,Y=l)\newline +&\sum_{k,l}P(X=k,Y=l)\log \frac{P(X=k,Y=l)}{P(X=k)P(Y=l)}\newline =& I(X,Y),\end{split}\end{equation}
4.3)条件熵与信息增益
现在如果有两个定义在某样本空间$\Omega$, 分别取值$\lbrace 1,...,K\rbrace$与$\lbrace 1,...,L\rbrace$的随机变量$X,Y$, 我们可以定义条件熵,以表征在已知$X$的情况下$Y$的不确定性(混乱度):\begin{equation}\begin{split}H(Y\mid X)\triangleq-&\sum_{k=1}P_{X}(k)H_{\lbrace X=k\rbrace}(Y)\newline =-&\sum_{k,l}P(X=k)P(Y=l\mid X=k)\log P(Y=l\mid X=k)\newline =-&\sum_{k,l}P(X=k,Y=l)\log\frac{P(X=k,Y=l)}{P(X=k)}\end{split}\end{equation}
我们很容易计算出:
性质 4.3: 联合熵满足\begin{equation}H(X,Y)=H(Y\mid X)+H(X)\end{equation}
上面的式子也很容易理解,那就是总体混乱度等于一个变量的混乱度加上该变量已知的时候另一个变量的混乱度。
在决策树ID3, C4.5算法中一个很重要的概念就是信息增益:
\begin{equation}Gain(Y,X)\triangleq H(Y)-H(Y\mid X),\end{equation}
他表征在X已知的时候Y的混乱度减少量(确定性增加量)。
我们结合 性质4.2,性质4.3 很容易知道:
性质 4.4:信息增益就是互信息:$Gain(Y,X)=H(X)+H(Y)-H(X,Y)=I(X,Y)$,表征变量相关性,具有对称性,非负性。
5.参考文献:
[1] Larry Wasserman, All of Statistics: A Concise Course in Statistical Inference, Springer Texts in Statistics, Springer Verleg.