dewlily 发表于 2011-12-20 09:47

KL距离,是Kullback-Leibler差异

<DIV>
<DIV><SPAN style="FONT-SIZE: 14px">KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence)的简称,也叫做相对熵(Relative Entropy)。它衡量的是相同事件空间里的两个概率分布的差异情况。其物理意义是:在相同事件空间里,概率分布P(x)的事件空间,若用概率分布 Q(x)编码时,平均每个基本事件(符号)编码长度增加了多少比特。我们用D(P||Q)表示KL距离,计算公式如下:</SPAN>
<P style="TEXT-ALIGN: center"><SPAN><IMG border=0 alt="KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence) - 有何不可 - 不要辜负 期望" src="http://img.bimg.126.net/photo/l9oXJboAT2NsNjfcQkYEGw==/5778118321916447432.jpg" __1303915254515__="ev_8829526458"></SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 当两个概率分布完全相同时,即P(x)=Q(X),其相对熵为0 。我们知道,概率分布P(X)的信息熵为:</SPAN></P>
<P style="TEXT-ALIGN: center"><SPAN><IMG border=0 alt="KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence) - 有何不可 - 不要辜负 期望" src="http://img.bimg.126.net/photo/kTkQhrukYtI8feO2Y_W4hw==/5778118321916447433.jpg" __1303915254515__="ev_7672279305"></SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 其表示,概率分布P(x)编码时,平均每个基本事件(符号)至少需要多少比特编码。通过信息熵的学习,我们知道不存在其他比按照本身概率分布更好的编码方 式了,所以D(P||Q)始终大于等于0的。虽然KL被称为距离,但是其不满足距离定义的三个条件:1)非负性;2)对称性(不满足);3)三角不等式 (不满足)。</SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 我们以一个例子来说明,KL距离的含义。</SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 假如一个字符发射器,随机发出0和1两种字符,真实发出概率分布为A,但实际不知道A的具体分布。现在通过观察,得到概率分布B与C。各个分布的具体情况如下:</SPAN></P>
<P style="TEXT-ALIGN: center"><SPAN style="FONT-SIZE: 14px">A(0)=1/2,A(1)=1/2</SPAN></P>
<P style="TEXT-ALIGN: center"><SPAN style="FONT-SIZE: 14px">B(0)=1/4,B(1)=3/4</SPAN></P>
<P style="TEXT-ALIGN: center"><SPAN style="FONT-SIZE: 14px">C(0)=1/8,C(1)=7/8</SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 那么,我们可以计算出得到如下:</SPAN></P>
<P style="TEXT-ALIGN: center"><SPAN><IMG border=0 alt="KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence) - 有何不可 - 不要辜负 期望" src="http://img.bimg.126.net/photo/tLfopvqJQXFIYsjN2oV8PQ==/5778118321916447434.jpg" __1303915254515__="ev_4385701959"></SPAN></P>
<P style="TEXT-ALIGN: center"><SPAN><SPAN><IMG border=0 alt="KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence) - 有何不可 - 不要辜负 期望" src="http://img.bimg.126.net/photo/qY8yvcDc3DMHf7cZZ1C0Aw==/5778118321916447435.jpg" __1303915254515__="ev_6369075999"></SPAN><BR><BR></SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 也即,这两种方式来进行编码,其结果都使得平均编码长度增加了。我们也可以看出,按照概率分布B进行编码,要比按照C进行编码,平均每个符号增加的比特数目少。从分布上也可以看出,实际上B要比C更接近实际分布。</SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 如果实际分布为C,而我们用A分布来编码这个字符发射器的每个字符,那么同样我们可以得到如下:</SPAN></P>
<P style="TEXT-ALIGN: center"><SPAN><IMG border=0 alt="KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence) - 有何不可 - 不要辜负 期望" src="http://img.bimg.126.net/photo/aPmfnL0OKBrwjzQ6hzaPUQ==/5778118321916447436.jpg" __1303915254515__="ev_3664933985"></SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 再次,我们进一步验证了这样的结论:对一个信息源编码,按照其本身的概率分布进行编码,每个字符的平均比特数目最少。这就是信息熵的概念,衡量了信息源本身的不确定性。另外,可以看出KL距离不满足对称性,即D(P||Q)不一定等于D(Q||P)。</SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 当然,我们也可以验证KL距离不满足三角不等式条件。</SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 上面的三个概率分布,D(B||C)=1/4log2+3/4log(6/7)。可以得到:D(A||C) - (D(A||B)+ D(B||C)) =1/2log2+1/4log(7/6)&gt;0,这里验证了KL距离不满足三角不等式条件。所以KL距离,并不是一种距离度量方式,虽然它有这样的 学名。</SPAN></P>
<P style="TEXT-ALIGN: left"><SPAN style="FONT-SIZE: 14px">&nbsp; 其实,KL距离在信息检索领域,以及统计自然语言方面有重要的运用。我们将会把它留在以后的章节中介绍</SPAN></P></DIV></DIV>
页: [1]
查看完整版本: KL距离,是Kullback-Leibler差异