softmax函數(shù)的求導(dǎo)過程,https://deepnotes.io/softmax-crossentropy。
對分子分母都乘以一個常數(shù)C,可防止指數(shù)次方的數(shù)溢出,很容易溢出,比如800的e次方就溢出了。logC = -max(X),新的X = X - Max(X)。
This property of softmax function that it outputs a probability distribution makes it suitable for probabilistic interpretation in classification tasks.
這篇文章對softmax的求導(dǎo)描述的再精確不過了,建議先從cross entropy作為損失函數(shù)看起,為什么使用cross entropy作為損失函數(shù)?他寫的多清楚啊,牛逼。當(dāng)輸出為概率分布時,cross entropy就是用來估計兩個概率分布之間的距離的。距離越小越好,損失函數(shù)越小越好,梯度下降求極小值。

為什么用cross entropy作為損失函數(shù)
當(dāng)問題是二分類時,我們使用sigmoid函數(shù)作為activation,則cross entropy簡化成只有兩項,當(dāng)多分類時,yi pi都為向量。對其求導(dǎo)均為dc/dz = zi - yi。這是對一個輸入來說的,對于多個輸入example比如m個,?dc/dz =1/m* sum( zi - yi ),我個人理解這是用了統(tǒng)計學(xué)的求平均值。。

stackoverflow