解剖交叉熵損失函數

交叉熵損失函數(Cross Entropy loss function),主要爲了度量兩個概率之間的差異性

信息量

香農(shannon)曰:信息是用來消除隨機不確定性的。

“太陽從東邊升起”,這條信息並沒有減少不確定性,因爲太陽肯定是從東邊升起的,這是一句廢話,信息量爲0。
”2018年中國隊成功進入世界盃“,從直覺上來看,這句話具有很大的信息量。因爲中國隊進入世界盃的不確定性因素很大,而這句話消除了進入世界盃的不確定性,所以按照定義,這句話的信息量很大。

信息發生概率越大,不確定性越小,信息量越小。信息發生概率越小,不確定性越大,信息量越大。概率越小,

即 :信息量的大小與信息發生的概率成反比。

設某事件發生的概率是P(x), 信息量I(x)爲

                                                                            I(x)=-\ln (P(x))

 

信息熵 information entropy

信息熵表示所有信息量的期望,X是離散型隨機變量

即:                                                     H(X)=-\sum_{i=1}^{n} P(x_i)\ln(P(x_i)) \qquad (X=x_1,x_2,x_3...x_n)

   

使用明天天氣的概率計算信息熵。 

H(X)= -(0.5*\ln0.5+0.2*\ln0.2+0.3*\ln0.3)

 

相對熵 relative entropy (KL散度  kullback-leibler divergence)

對於同一個隨機變量X  有兩個獨立的概率分佈P(x)和Q(x),  用KL散度計算它們之間的差異。

D_{kl}(p||q)= \sum_{i=1}^{n}p(x_i)\ln({\frac{p(x_i)}{q(x_i)}})

e.g.

在機器學習中,經常用P(x)表示真實概率,Q(x)表示預測概率。在一個三分類任務中,x1,x2和x3分別代表 貓 狗  和 牛。

一張圖片的真實分佈P(X)=[1,0,0]  即是一張貓的圖片。  預測的分佈Q(X)=[0.7,0.2,0.1]

KL散度    D_{kl}(p||q)= p(x_1)\ln({\frac{p(x_1)}{q(x_1)}})+p(x_2)\ln({\frac{p(x_2)}{q(x_2)}})+p(x_3)\ln({\frac{p(x_3)}{q(x_3)}}) =1*\ln(\frac{1}{0.7})

KL散度越小,表示Q(x)和P(x)越接近,即預測的越準。

 

交叉熵 Cross Entropy

首先 給出公式   交叉熵 =  信息熵+相對熵

H(p,q)=H(p(x))+D_{kl}(p||q)=-\sum_{i=1}^{n}p(x_i)\ln(p(x_i)) +\sum_{i=1}^{n}p(x_i)\ln({\frac{p(x_i)}{q(x_i)}})\\ H(p,q)=0-\sum_{i=1}^np(x_i)\ln(q(x_i))

 

在機器學習中,輸入數據一般都有標籤,即真實概率分佈 P(x)已確定。

問:有相對熵表示兩個概率分佈的相似性,爲什麼還要用交叉熵?

答:因爲交叉熵 等於相對熵加上一個常量(信息熵),也能反映兩者相似性,而且比相對熵好算

交叉熵和KL散度越小,說明模型預測效果越好。

 

應用:

分類問題中,常用交叉熵 cross entropy 作爲loss函數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章