Machine Learning & Recommendation & NLP & DL

softmax

2019-04-22  本文已影响0人  还有下文

0 写在前面

本文介绍softmax在神经网络中的含义,及个人的理解,见斜体部分

1 softmax含义

2 softmax在网络中的定位

输入层经过hidden层之后,得到计算值;
然后softmax计算后,得到概率分布;
接着通过交叉熵cross entropy计算损失函数;
随后利用链式法则,反向传播更新网络权重。
多次迭代得到分类的预测结果。
优点:softmax的求导非常简单,反向更新的梯度就是正确分类yi的softmax值

3 python实现

import numpy as np
def softmax(X):
    X = X - np.max(X)
    return np.exp(X) / np.sum(np.exp(X))
print(softmax([1,2,-3]))
image.png

这里面为什么要进行 x-np.max呢,因为防止每个数都很大,导致计算出来的结果溢出,计算机是有位数限制的,所以要做一个normalization.

4 为什么用softmax,而不直接用标准化将确定范围的值转换到区间[0,1]当中呢

上一篇下一篇

猜你喜欢

热点阅读