
現(xiàn)在你知道softmax的輸出向量是什么意思了,就是概率,該樣本屬于各個(gè)類的概率!

來舉個(gè)例子吧。假設(shè)一個(gè)5分類問題,然后一個(gè)樣本I的標(biāo)簽y=[0,0,0,1,0],也就是說樣本I的真實(shí)標(biāo)簽是4,假設(shè)模型預(yù)測的結(jié)果概率(softmax的輸出)p=[0.1,0.15,0.05,0.6,0.1],可以看出這個(gè)預(yù)測是對的,那么對應(yīng)的損失L=-log(0.6),也就是當(dāng)這個(gè)樣本經(jīng)過這樣的網(wǎng)絡(luò)參數(shù)產(chǎn)生這樣的預(yù)測p時(shí),它的損失是-log(0.6)。那么假設(shè)p=[0.15,0.2,0.4,0.1,0.15],這個(gè)預(yù)測結(jié)果就很離譜了,因?yàn)檎鎸?shí)標(biāo)簽是4,而你覺得這個(gè)樣本是4的概率只有0.1(遠(yuǎn)不如其他概率高,如果是在測試階段,那么模型就會預(yù)測該樣本屬于類別3),對應(yīng)損失L=-log(0.1)。那么假設(shè)p=[0.05,0.15,0.4,0.3,0.1],這個(gè)預(yù)測結(jié)果雖然也錯(cuò)了,但是沒有前面那個(gè)那么離譜,對應(yīng)的損失L=-log(0.3)。我們知道log函數(shù)在輸入小于1的時(shí)候是個(gè)負(fù)數(shù),而且log函數(shù)是遞增函數(shù),所以-log(0.6) < -log(0.3) < -log(0.1)。簡單講就是你預(yù)測錯(cuò)比預(yù)測對的損失要大,預(yù)測錯(cuò)得離譜比預(yù)測錯(cuò)得輕微的損失要大。

是不是覺得和softmax loss的公式很像。當(dāng)cross entropy的輸入P是softmax的輸出時(shí),cross entropy等于softmax loss。Pj是輸入的概率向量P的第j個(gè)值,所以如果你的概率是通過softmax公式得到的,那么cross entropy就是softmax loss。這是我自己的理解,如果有誤請糾正。
————————————————
版權(quán)聲明:本文為CSDN博主「AI之路」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/u014380165/article/details/77284921
————————————————