python softmax函数

版权声明:本文为博主原创文章,未经博主允许不得转载。如有写的不恰当或者不正确的地方,请指正,欢迎与我讨论。如需要查看博客中的源代码,请联系博主QQ:1477517404 https://blog.csdn.net/hfutzhouyonghang/article/details/81630710

数学公式

  • 对于  x R 1 × n s o f t m a x ( x ) = s o f t m a x ( [ x 1 x 2 x n ] ) = [ e x 1 j e x j e x 2 j e x j . . . e x n j e x j ]

  • 对于一个矩阵  x R m × n x i j 表示 x 的第  i t h 行 与第  j t h 列,我们有: 

    s o f t m a x ( x ) = s o f t m a x [ x 11 x 12 x 13 x 1 n x 21 x 22 x 23 x 2 n x m 1 x m 2 x m 3 x m n ] = [ e x 11 j e x 1 j e x 12 j e x 1 j e x 13 j e x 1 j e x 1 n j e x 1 j e x 21 j e x 2 j e x 22 j e x 2 j e x 23 j e x 2 j e x 2 n j e x 2 j e x m 1 j e x m j e x m 2 j e x m j e x m 3 j e x m j e x m n j e x m j ] = ( s o f t m a x (first row of x) s o f t m a x (second row of x) . . . s o f t m a x (last row of x) )

代码

def softmax(x):
    x_exp = np.exp(x)
    #如果是列向量,则axis=0
    x_sum = np.sum(x_exp, axis = 1, keepdims = True)
    s = x_exp / x_sum    
    return s

猜你喜欢

转载自blog.csdn.net/hfutzhouyonghang/article/details/81630710