美文网首页
深度学习入门-softmax函数

深度学习入门-softmax函数

作者: Jasmine晴天和我 | 来源:发表于2019-04-09 12:35 被阅读0次

softmax函数(用于分类)

softmax公式

图片.png
实现softmax函数
def softmax(a):
  exp_a = np.exp(a)
  sum_exp_a = np.sum(exp_a)
  y = exp_a / sum_exp_a
  return y

上面的函数会出现溢出问题,就需要进行一些改进,改进方法如下

图片.png
可以取C为最大值
def softmax(a):
  c = np.max(a)
  exp_a = np.exp(a - c) # 溢出对策
  sum_exp_a = np.sum(exp_a)
  y = exp_a / sum_exp_a
  return y

example

a = np.array([0.3, 2.9, 4.0])
y = softmax(a)
print(y)
print(np.sum(y))

softmax函数的输出是0.0到1.0之间的实数。并且,softmax
函数的输出值的总和是1。输出总和为1是softmax函数的一个重要性质。正
因为有了这个性质,我们才可以把softmax函数的输出解释为“概率”。
一般而言,神经网络只把输出值最大的神经元所对应的类别作为识别结果。
并且,即便使用softmax函数,输出值最大的神经元的位置也不会变。

相关文章

网友评论

      本文标题:深度学习入门-softmax函数

      本文链接:https://www.haomeiwen.com/subject/fvfpiqtx.html