Softmax 函数及其作用(含推导)

  • Post author:
  • Post category:其他


Softmax函数的定义及作用

Softmax是一种形如下式的函数:








P




(


i


)


=








e


x


p


(





θ






T








i







x


)




















K












k


=


1









e


x


p


(





θ






T








k







x


)
























其中











θ






i
















和x是列向量,











θ






T








i







x











可能被换成函数关于x的函数











f








i







(


x


)











通过softmax函数,可以使得








P




(


i


)











的范围在[0,1]之间。在回归和分类问题中,通常








θ











是待求参数,通过寻找使得








P




(


i


)











最大的











θ






i
















作为最佳参数。

但是,使得范围在[0,1]之间的方法有很多,为啥要在前面加上以e的幂函数的形式呢?参考logistic函数:








P




(


i


)


=







1







1


+


e


x


p


(








θ






T








i







x


)























这个函数的作用就是使得P(i)在负无穷到0的区间趋向于0,在0到正无穷的区间趋向于1。同样,softmax函数加入了e的幂函数正是为了两极化:正样本的结果将趋近于1,而负样本的结果趋近于0。这样为多类别分类提供了方便(可以把P(i)看作是样本属于类别i的概率)。可以说,Softmax函数是logistic函数的一种泛化。

softmax的推导

虽然Softmax函数得到的是一个[0,1]之间的值,且




















K












k


=


1









P




(


i


)


=


1











,但是这个softmax求出的概率是否就是真正的概率?换句话说,这个概率是否严格等于期望呢?为此在这里进行推导。

假设现在有K个类,样本属于类别i的概率为








ϕ


(









版权声明:本文为hejunqing14原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。