交叉熵 和 softmax 公式及 python 实现
生活随笔
收集整理的這篇文章主要介紹了
交叉熵 和 softmax 公式及 python 实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
交叉熵損失函數:實際輸出(概率)與期望輸出(概率)的距離,也就是交叉熵的值越小,兩個概率分布就越接近。
Python 實現:
def cross_entropy(a, y):return np.sum(np.nan_to_num(-y*np.log(a)-(1-y)*np.log(1-a)))# tensorflow version loss = tf.reduce_mean(-tf.reduce_sum(y_*tf.log(y), reduction_indices=[1]))# numpy version loss = np.mean(-np.sum(y_*np.log(y), axis=1))?
Softmax 函數:將激活值與所有神經元的輸出值聯系在一起,所有神經元的激活值加起來為1。
第L層(最后一層)的第j個神經元的激活輸出為:?
Python 實現:
def softmax(x):shift_x = x - np.max(x) # 防止輸入增大時輸出為nanexp_x = np.exp(shift_x)return exp_x / np.sum(exp_x)?
總結
以上是生活随笔為你收集整理的交叉熵 和 softmax 公式及 python 实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows常用快捷键与命令
- 下一篇: python生成随机数组_python3