softmax是一種歸一化函式,用於將向量中元素的值都歸一化0~1之間,並保持其加和為1。
公示表達為:
根據公式和可看出,前一層的啟用值越大,經過softmax函式後的值也就越大,又因為softmax的所有輸出加和為1,因此,常利用softmax層將啟用值與概率實現對映。
多元分類(multi-class classification)中,每個樣本只屬於乙個類別。將最後乙個全連線層輸入softmax層,即可得到樣本屬於每個類別的概率p(yi|x),注意,這些概率加和等於1
sigmoid函式定義如下:
它表示樣本x屬於分類y的概率。
由圖可以看出,當啟用值z很大很大時,p(y=1|x)接近1,當啟用值z很小很小時,p(y=1|x)接近0.
多標籤分類(multi-label classification ),每個樣本可以屬於多個類別。將最後乙個全連線層輸入sigmoid啟用函式,最終的每個輸出都代表樣本屬於這個類別的概率即p(y=1|x),這些概率加和不等於1.
用於代價函式。交叉熵h(p,q)用於衡量**分布q與真實分布p之間的相似度,交叉熵越大,相似度越小。因此,要想讓**的標籤的分布與真實的標籤分布最接近,就最小化交叉熵啦。
對於二分類問題:(y可取值0或1)
y_train與y_output的分布的交叉熵表示為:
當y_train為1/0時,y_output也為1/0時交叉熵最小
tensorflow中將最後一層全連線層的輸出結果 通過使用tf.nn.softmax_cross_entropy_with_logits計算代價函式
對於多標籤分類問題(multi-label)和多元分類問題(multi-class)
交叉熵均可表示為:
當train_prob的分布與out_prob的分布相同時,交叉熵最小。
不同點在於:
對於多標籤分類問題:tensorflow中將最後一層全連線層的輸出結果 通過使用tf.nn.sigmoid_cross_entropy_with_logits計算代價函式
對於多元分類問題:
tensorflow中將最後一層全連線層的輸出結果 通過使用tf.nn.softmax_cross_entropy_with_logits計算代價函式
softmax回歸與交叉熵損失函式
交叉熵損失函式 在 動手學深度學習 softmax回歸一節中,交叉熵損失函式比較晦澀,學習csdn上其他部落格後有了一定了解,做此記錄 softmax回歸同線性回歸一樣,也是乙個單層神經網路,但和線性回歸不同,softmax回歸的輸出單元從乙個變成了多個,且引入了softmax運算使輸出更適合離散值...
softmax和交叉熵
softmax用於多分類過程中,往往加在神經網路的他將多個神經元的輸出,對映到 0,1 區間內,看成概率來解,這些值的累和為1,在選取輸出節點的時候選取概率最大的節點作為我們的 目標,從而進行多分類。softmax 相關求導 當對分類的loss進行改進時,我們通過梯度下降,每次優化乙個step大小的...
交叉熵與Softmax
分類問題中,交叉熵常與softmax結合使用,交叉熵能夠衡量同乙個隨機變數中的兩個不同概率分布的差異程度,在機器學習中就表示為真實概率分布與 概率分布之間的差異。交叉熵的值越小,模型 效果就越好。資訊是用來消除隨機不確定性的東西 資訊量大小與資訊發生的概率成反比,概率越大,資訊量越小 概率越小,資訊...