1. 程式人生 > >K-L散度(相對熵)的理解

K-L散度(相對熵)的理解

資訊量 I I
訊息中有意義的內容成為資訊。資訊量函式: I = l n

p i I=-lnp_i 其中, p i p_i
是事件 x i x_i 的發生概率。

資訊熵 H H
它是用來對資訊度量,描述資訊的多於少的問題。公式為 H

= i = 1 N p ( x i ) l o g   p ( x i ) H=-\sum_{i=1}^{N}p(x_i)\cdot log\ p(x_i) log對數的底數沒有明確,可以是2、e、或10,一般為2。如果我們使用以2為底的對數計算H值的話,可以把這個值看作是編碼資訊所需要的最少二進位制位個數bits。注意:這個公式和上面資訊量的公式,再和求期望的公式聯絡起來。這個資訊熵的公式實質就是資訊量的期望。
通過計算資訊熵可以判斷資料編碼方式的優劣。

K-L散度
K-L散度,是一種量化兩種概率分佈P和Q之間差異的方式,又叫相對熵。在概率學和統計學上,我們經常會使用一種更簡單的、近似的分佈來替代觀察資料或太複雜的分佈。K-L散度能幫助我們度量使用一個分佈來近似另一個分佈時所損失的資訊。

K-L散度的公式是通過修改熵 H H 所得到的。
設p為觀察得到的概率分佈,q為另一分佈來近似p,則p、q的K-L散度為: D K L ( p q ) = i = 1 N p ( x i ) ( l o g   p ( x i ) l o g   q ( x i ) ) D_{KL}(p||q)=\sum_{i=1}^{N}p(x_i)\cdot(log\ p(x_i)-log\ q(x_i)) 從上面公式可以知道,K-L散度其實是資料的原始分佈p和近似分佈q之間的對數差值的期望。

這樣我們就可以將K-L散度作為