关于Softmax函数

定义评分函数:    

                                       

我们定义归一化概率:

                         

将(1)式和(2)式整合以下,我们有:

其中m表示数据xde 维度, n代表输出分类数据z的维度,即:分类的种类数。

2.SoftMax

    上述表达式还缺点东西,因为我们想要的预测比分尽可能的高,但得分函数是线性的,其增长幅度有限,为了在不影响其单调性的情况下,使得得分更显著,因此我们修改为如下表达式:

                             

我们将其全部写在一起为:

softmax函数输出的是一个n维向量,表示n个分类的不同概率,假如一个函数的输出为:[0.1, 0.3, 0.6],其真实值为:[0, 1, 0]那我们该如何定义损失函数呢?可能以第一时间会想到

J(\Theta ) = (0.1 - 0)^{^{2}} + (0.3 - 1)^{^{2}} + (0.6 - 0)^{^{2}}

但是实际上我们多算了一些误差,因为sum(f(x)) == 1, 其中一个值变化会导致所有值的变化,因此我们的正确误差项写法应该是:

J(\Theta ) = (0.3 - 1)^{^{2}}

我们可定义一个表达式:

softmax 损失函数定义为:

softmax函数梯度计算公式:

 

           

其中:

猜你喜欢

转载自blog.csdn.net/wangheng673/article/details/84339131
今日推荐