目的:為了解決學(xué)習(xí)緩慢的問(wèn)題
神經(jīng)元的輸出就是 a = σ(z)刹泄,其中
其中 n 是訓(xùn)練數(shù)據(jù)的總數(shù),求和是在所有的訓(xùn)練輸? x 上進(jìn)?的特石, y 是對(duì)應(yīng)的?標(biāo)輸出盅蝗。
表達(dá)式是否解決學(xué)習(xí)緩慢的問(wèn)題并不明顯。實(shí)際上姆蘸,甚?將這個(gè)定義看做是代價(jià)函數(shù)也不是顯?易?的墩莫!在解決學(xué)習(xí)緩慢前,我們來(lái)看看交叉熵為何能夠解釋成?個(gè)代價(jià)函數(shù)逞敷。
將交叉熵看做是代價(jià)函數(shù)有兩點(diǎn)原因狂秦。
第一,它是?負(fù)的推捐, C > 0裂问。可以看出:式子中的求和中的所有獨(dú)?的項(xiàng)都是負(fù)數(shù)的玖姑,因?yàn)閷?duì)數(shù)函數(shù)的定義域是 (0愕秫,1),并且求和前?有?個(gè)負(fù)號(hào)焰络,所以結(jié)果是非負(fù)戴甩。
第二,如果對(duì)于所有的訓(xùn)練輸? x闪彼,神經(jīng)元實(shí)際的輸出接近?標(biāo)值甜孤,那么交叉熵將接近 0。
假設(shè)在這個(gè)例?中畏腕, y = 0 ? a ≈ 0缴川。這是我們想到得到的結(jié)果。我們看到公式中第?個(gè)項(xiàng)就消去了描馅,因?yàn)?y = 0把夸,?第?項(xiàng)實(shí)際上就是 ? ln(1 ? a) ≈ 0。反之铭污, y = 1 ? a ≈ 1恋日。所以在實(shí)際輸出和?標(biāo)輸出之間的差距越?,最終的交叉熵的值就越低了嘹狞。(這里假設(shè)輸出結(jié)果不是0岂膳,就是1,實(shí)際分類也是這樣的)
綜上所述磅网,交叉熵是?負(fù)的谈截,在神經(jīng)元達(dá)到很好的正確率的時(shí)候會(huì)接近 0。這些其實(shí)就是我們想要的代價(jià)函數(shù)的特性。其實(shí)這些特性也是?次代價(jià)函數(shù)具備的簸喂。所以毙死,交叉熵就是很好的選擇了。但是交叉熵代價(jià)函數(shù)有?個(gè)??次代價(jià)函數(shù)更好的特性就是它避免了學(xué)習(xí)速度下降的問(wèn)題娘赴。為了弄清楚這個(gè)情況规哲,我們來(lái)算算交叉熵函數(shù)關(guān)于權(quán)重的偏導(dǎo)數(shù)。我們將 a = σ(z)代?到 公式中應(yīng)?兩次鏈?zhǔn)椒▌t诽表,得到:這是?個(gè)優(yōu)美的公式竿奏。它告訴我們權(quán)重學(xué)習(xí)的速度受到 σ(z)-y袄简,也就是輸出中的誤差的控制。更?的誤差泛啸,更快的學(xué)習(xí)速度绿语。這是我們直覺(jué)上期待的結(jié)果。特別地候址,這個(gè)代價(jià)函數(shù)還避免了像在?次代價(jià)函數(shù)中類似?程中σ'(z)導(dǎo)致的學(xué)習(xí)緩慢吕粹。當(dāng)我們使?交叉熵的時(shí)候, σ'(z)被約掉了岗仑,所以我們不再需要關(guān)?它是不是變得很?匹耕。這種約除就是交叉熵帶來(lái)的特效。實(shí)際上荠雕,這也并不是?常奇跡的事情稳其。我們?cè)诤?可以看到,交叉熵其實(shí)只是滿?這種特性的?種選擇罷了炸卑。
根據(jù)類似的?法既鞠,我們可以計(jì)算出關(guān)于偏置的偏導(dǎo)數(shù)。我這?不再給出詳細(xì)的過(guò)程盖文,你可以輕易驗(yàn)證得到:再?次, 這避免了?次代價(jià)函數(shù)中類似σ'(z)項(xiàng)導(dǎo)致的學(xué)習(xí)緩慢嘱蛋。