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的概率为
ϕ
(