轉(zhuǎn)自簡單的交叉熵?fù)p失函數(shù),你真的懂了嗎鸽捻?
說起交叉熵?fù)p失函數(shù)「Cross Entropy Loss」御板,腦海中立馬浮現(xiàn)出它的公式:
1. 交叉熵?fù)p失函數(shù)的數(shù)學(xué)原理
我們知道,在二分類問題模型:例如邏輯回歸「Logistic Regression」印叁、神經(jīng)網(wǎng)絡(luò)「Neural Network」等被冒,真實樣本的標(biāo)簽為 [0,1]轮蜕,分別表示負(fù)類和正類昨悼。模型的最后通常會經(jīng)過一個 Sigmoid 函數(shù),輸出一個概率值跃洛,這個概率值反映了預(yù)測為正類的可能性:概率越大率触,可能性越大。
Sigmoid 函數(shù)的表達(dá)式和圖形如下所示:其中 s 是模型上一層的輸出税课,Sigmoid 函數(shù)有這樣的特點:s = 0 時闲延,g(s) = 0.5;s >> 0 時韩玩, g ≈ 1垒玲,s << 0 時,g ≈ 0找颓。顯然合愈,g(s) 將前一級的線性輸出映射到 [0,1] 之間的數(shù)值概率上击狮。這里的 g(s) 就是交叉熵公式中的模型預(yù)測輸出 佛析。
我們說了,預(yù)測輸出即 Sigmoid 函數(shù)的輸出表征了當(dāng)前樣本標(biāo)簽為 1 的概率:2. 交叉熵?fù)p失函數(shù)的直觀理解
可能會有讀者說皱炉,我已經(jīng)知道了交叉熵?fù)p失函數(shù)的推導(dǎo)過程。但是能不能從更直觀的角度去理解這個表達(dá)式呢狮鸭?而不是僅僅記住這個公式合搅。好問題!接下來歧蕉,我們從圖形的角度灾部,分析交叉熵函數(shù),加深大家的理解惯退。
首先赌髓,還是寫出單個樣本的交叉熵?fù)p失函數(shù):同樣平匈,預(yù)測輸出越接近真實樣本標(biāo)簽 0,損失函數(shù) L 越胁毓拧增炭;預(yù)測函數(shù)越接近 1,L 越大拧晕。函數(shù)的變化趨勢也完全符合實際需要的情況隙姿。
從上面兩種圖,可以幫助我們對交叉熵?fù)p失函數(shù)有更直觀的理解厂捞。無論真實樣本標(biāo)簽 y 是 0 還是 1输玷,L 都表征了預(yù)測輸出與 y 的差距。
另外靡馁,重點提一點的是欲鹏,從圖形中我們可以發(fā)現(xiàn):預(yù)測輸出與 y 差得越多,L 的值越大臭墨,也就是說對當(dāng)前模型的 “ 懲罰 ” 越大赔嚎,而且是非線性增大,是一種類似指數(shù)增長的級別胧弛。這是由 log 函數(shù)本身的特性所決定的尤误。這樣的好處是模型會傾向于讓預(yù)測輸出更接近真實樣本標(biāo)簽 y。
3. 交叉熵?fù)p失函數(shù)的其它形式
什么结缚?交叉熵?fù)p失函數(shù)還有其它形式损晤?沒錯!我剛才介紹的是一個典型的形式掺冠。接下來我將從另一個角度推導(dǎo)新的交叉熵?fù)p失函數(shù)沉馆。
這種形式下假設(shè)真實樣本的標(biāo)簽為 +1 和 -1,分別表示正類和負(fù)類德崭。有個已知的知識點是Sigmoid 函數(shù)具有如下性質(zhì):這個性質(zhì)我們先放在這斥黑,待會有用。
好了眉厨,我們之前說了 y = +1 時锌奴,下列等式成立:同樣,s 越接近真實樣本標(biāo)簽 -1绝葡,損失函數(shù) L 越猩罴睢;s 越接近 +1藏畅,L 越大敷硅。
4. 總結(jié)
本文主要介紹了交叉熵?fù)p失函數(shù)的數(shù)學(xué)原理和推導(dǎo)過程,也從不同角度介紹了交叉熵?fù)p失函數(shù)的兩種形式愉阎。第一種形式在實際應(yīng)用中更加常見绞蹦,例如神經(jīng)網(wǎng)絡(luò)等復(fù)雜模型;第二種多用于簡單的邏輯回歸模型榜旦。