1. 程式人生 > 實用技巧 >Softmax-with-Loss 層(Softmax 函式和交叉熵誤差)的計算說明

Softmax-with-Loss 層(Softmax 函式和交叉熵誤差)的計算說明

https://blog.csdn.net/weixin_43114885/article/details/90478622

筆記(八),其中

Softmax-with-Loss 層(Softmax 函式和交叉熵誤差)的計算圖如下:
在這裡插入圖片描述

其中Softmax 函式(筆記四)

  • 可以減去輸入的最大值來防止溢位

a = np.array([1010, 1000, 990])

y=np.exp(a) / np.sum(np.exp(a)) # softmax函式的運算
print(y) # 沒有被正確計算
c = np.max(a) # 1010
c = a - c #將每個元素值減小
print(c)
y=np.exp(c) / np.sum(np.exp(c))

print(y)

筆記(五)

交叉熵誤差

−lnx對應的函式影象如下:


0≤yk≤1

所以輸出的概率越小損失函式越大,和監督資料越不吻合。