機器學習 一文理清資訊熵,相對熵,交叉熵

2021-09-13 15:09:37 字數 3150 閱讀 8972

夏農提出資訊熵主要是用來解決對資訊的量化度量問題,比如說存在選項【a,b,c,d】,若每個字母都用8位ascii碼儲存,則表示這個四個選項需要32位bit。 如果此時採用二進位制的話,4個選項用2位bit便可表示【00,01,10,11】。於是對4個選項資訊進行量化為log

2(4)

=2_2(4) =2

log2​(

4)=2

。值得注意的是,我們在量化這個四個選項資訊是隱含了乙個附加條件(a,b,c,d)出現的概率相同,各為1/4。如果出現的概率各不相同,我們不一定是將其表述為2進製【00,01,10,11】(各個事件的出現概率相同),這樣在資訊壓縮上並不是最優。在考慮資訊編碼的時候,如果出現概率值不同,我們會將出現概率大的進行短編碼,概率小的進行長編碼,這也是哈夫曼編碼的思想。

那麼當事件的出現概率各不相同時,我們如何衡量資訊的編碼量呢?此時,需要引入數學上的期望。每個事件出現的概率為p

ip_i

pi​,那麼這個資訊量可以表示為期望∑ip

ilog

(1/p

i)=−

∑ipi

log(

pi)\sum_i p_i log(1/p_i) = -\sum_i p_i log(p_i)

∑i​pi​

log(

1/pi

​)=−

∑i​p

i​lo

g(pi

​)那麼可以將資訊熵定義為:

e nt

ropy

=−∑i

pilo

g(pi

)entropy = -\sum_i p_i log(p_i)

entrop

y=−i

∑​pi

​log

(pi​

)所謂資訊熵:是對每個可能性編碼所需要的期望值,延伸一下,也是對資訊的量化指標。夏農則將資訊熵用來描述資訊源的不確定度, 資訊熵越大,混亂度越大。

這裡再衍生一下,如果有乙個硬幣,往上拋,落到地上猜正反。那麼假如這個硬幣是正常硬幣的話,則正反的概率均為1/2,此時二元信源的熵達到最大,也就是說我們不知道硬幣到底是正,還是反,只能靠猜,資訊的混亂度很大,資訊源極不確定。

考慮一下,如果這個硬幣被動了手腳的,兩面都是正,則反的概率為0,代入資訊熵的公式可得此時的資訊熵為0,也就意味著這個資訊是確定的,閉著眼也能知道這個硬幣最終是正的。同時,也可以描述資訊源是完全確定的。

相對熵也稱之為kullback-leibler散度(kl散度),是用來衡量兩個資訊分布的差異性。相對熵是如何去衡量資料分布的差異性呢?kl(

p∣∣q

)kl(p||q)

kl(p∣∣

q)指的是如果用事件p代替事件q進行描述,那麼其所獲得的資訊增量。

數學描述為:

k l(

p∣∣q

)=∑p

(x)l

og(p

(x)q

(x))

=−∑p

(x)l

og(q

(x)p

(x))

kl(p||q)=\sum p(x) log(\frac) = -\sum p(x) log(\frac)

kl(p∣∣

q)=∑

p(x)

log(

q(x)

p(x)

​)=−

∑p(x

)log

(p(x

)q(x

)​)note: 當p(x) = q(x)時,kl散度為0,當兩者分布差異越大時,kl散度也越大。

此處引用維基百科上的乙個例子,

存在下面兩個分布p,q。p為二項分布,q為均勻分布。

值得注意的是相對熵並不對稱,kl(p||q)不等於kl(q||p)。

後續為了引入對稱的度量,引入了js分布,此處不細述。

交叉熵往往在機器學習的分類問題中的很多

我們將相對熵的數學公式進行拆分為:

k l(

p∣∣q

)=∑p

(x)l

og(p

(x)q

(x))

=∑p(

x)lo

g(p(

x))−

∑p(x

)log

(q(x

))=−

h(p(

x))+

cros

sent

rop(

p,q)

kl(p||q) =\sum p(x) log(\frac) = \sum p(x) log(p(x)) - \sum p(x) log(q(x)) = -h(p(x)) + cross entrop(p,q)

kl(p∣∣

q)=∑

p(x)

log(

q(x)

p(x)

​)=∑

p(x)

log(

p(x)

)−∑p

(x)l

og(q

(x))

=−h(

p(x)

)+cr

osse

ntro

p(p,

q)交叉熵的定義:

c ro

ssen

trop

(p,q

)=−∑

p(x)

log(

q(x)

)cross entrop(p,q) = -\sum p(x) log(q(x))

crosse

ntro

p(p,

q)=−

∑p(x

)log

(q(x

))在分類問題中,p(x)為label的one-hot,q(x)為softmax的結果。由於label的熵不會改變,是乙個常數。因此對相對熵進行最小化,也是對交叉熵進行最小化。

機器學習之資訊量,熵,相對熵,交叉熵概念辨析

可能性越小的事件其資訊量越大,極端情況下,確定事件的資訊量為0。事件 a aa 的資訊量為 ia log p a i a logp a ia l ogp a p a p a p a 為事件 a aa 發生的概率。熵就是乙個隨機變數x所有事件的資訊量的期望 例如隨機變數x xx表示明天的天氣,所有事件...

機器學習之相對熵

1.熵 資訊熵 的定義 不妨把資訊熵理解成某種特定資訊的出現概率 離散隨機事件的出現概率 乙個系統越是有序,資訊熵就越低 反之,乙個系統越是混亂,資訊熵就越高。資訊熵也可以說是系統有序化程度的乙個度量。如果乙個隨機變數 2.相對熵 又稱互熵,交叉熵,鑑別資訊,kullback熵,kullback l...

詳解機器學習中的熵 聯合熵 條件熵 相對熵和交叉熵

4 相對熵 relative entropy 也稱kl散度 kullback leibler divergence 5 交叉熵 cross entropy 但是真實分布不可知,假設訓練資料是從真實資料中獨立同分布取樣的,p train p real 因此,我們希望學到的模型分布至少和訓練資料的分布一...