交叉熵產(chǎn)生于信息論里面的信息壓縮編碼技術(shù),但是它后來演變成為從博弈論到機(jī)器學(xué)習(xí)等其他領(lǐng)域里的重要技術(shù)手段。
1.什么是信息量?
假設(shè)X是一個(gè)離散型隨機(jī)變量,其取值集合為S,概率分布函數(shù)為p(x)=Pr(X=x),x∈S,我們定義事件X=x0的信息量為:I(x0)=?log(p(x0)),(對數(shù)函數(shù)底為10時(shí)可略寫)可以理解為,一個(gè)事件發(fā)生的概率越大,則它所攜帶的信息量就越小,而當(dāng)p(x0)=1時(shí),熵將等于0,也就是說該事件的發(fā)生不會導(dǎo)致任何信息量的增加。
舉個(gè)例子,小明平時(shí)不愛學(xué)習(xí),考試經(jīng)常不及格,而小王是個(gè)勤奮學(xué)習(xí)的好學(xué)生,經(jīng)常得滿分,所以我們可以做如下假設(shè):
事件A:小明考試及格,對應(yīng)的概率P(xA)=0.1,信息量為I(xA)=?log(0.1)=3.3219
事件B:小王考試及格,對應(yīng)的概率P(xB)=0.999,信息量為I(xB)=?log(0.999)=0.0014
可以看出,結(jié)果非常符合直觀:小明及格的可能性很低(十次考試只有一次及格),因此如果某次考試及格了(大家都會說:XXX竟然及格了!),必然會引入較大的信息量,對應(yīng)的I值也較高。而對于小王而言,考試及格是大概率事件,在事件B發(fā)生前,大家普遍認(rèn)為事件B的發(fā)生幾乎是確定的,因此當(dāng)某次考試小王及格這個(gè)事件發(fā)生時(shí)并不會引入太多的信息量,相應(yīng)的I值也非常的低。
2.什么是熵?
熵其實(shí)是信息量的期望值,它是一個(gè)隨機(jī)變量的確定性的度量。熵越大,變量的取值越不確定,反之就越確定。
對于一個(gè)隨機(jī)變量X而言,它的所有可能取值的信息量的期望(E[I(x)])就稱為熵。
X為離散型變量:
X為連續(xù)型變量:
PS:為了保證有效性,這里約定當(dāng)p(x)→0時(shí),有p(x)logp(x)→0(級數(shù)收斂)
當(dāng)X為0-1分布時(shí),熵與概率p的關(guān)系如下圖:
3.什么是相對熵?
相對熵(relative entropy)又稱為KL散度(Kullback-Leibler divergence),KL距離,是兩個(gè)隨機(jī)分布間距離的度量。記為DKL(p||q)。它度量當(dāng)真實(shí)分布為p時(shí),假設(shè)分布q的無效性。
上式最后的Hp(q)表示在p分布下,使用q進(jìn)行編碼需要的bit數(shù),而H(p)表示對真實(shí)分布p所需要的最小編碼bit數(shù)。基于此,相對熵的意義就很明確了:DKL(p||q)表示在真實(shí)分布為p的前提下,使用q分布進(jìn)行編碼相對于使用真實(shí)分布p進(jìn)行編碼(即最優(yōu)編碼)所多出來的bit數(shù)。
???????什么叫最小編碼數(shù),為什么?
PS:對數(shù)函數(shù)的運(yùn)算性質(zhì):
4.什么是交叉熵?
從相對熵后就沒太看懂
參考:http://blog.csdn.net/rtygbwwwerr/article/details/50778098