Solftmax解析

来源:互联网 发布:c语言编写的交易程序 编辑:程序博客网 时间:2024/04/28 07:43

softmax回归中,其中是类别种数,如在手写识别中,表示要识别的10个数字。设

          

那么

          

而且有

          

为了将多项式模型表述成指数分布族,先引入,它是一个维的向量,那么

   

应用于一般线性模型,必然是属于个类中的一种。用表示为真,同样当为假时,有

,那么进一步得到联合分布的概率密度函数为

      

可以得到

         

由于

       

那么最终得到

       

可以得到期望值为(期望值直接用概率代替了,最后表达应该没问题)

       

接下来得到对数似然函数函数为      

 

其中是一个的矩阵,代表这个类的所有训练参数,每个类的参数是一个维的向量。所以在

softmax回归中将分类为类别的概率为

        

softmax也可用梯度下降法或牛顿迭代法求解,对对数似然函数求偏导数,得到

然后我们可以通过梯度上升法来更新参数

   

注意这里是第个类的所有参数,它是一个向量。

在softmax回归中直接用上述对数似然函数是不能更新参数的,因为它存在冗余的参数,通常用牛顿方法中的Hessian

矩阵也不可逆,是一个非凸函数,那么可以通过添加一个权重衰减项来修改代价函数,使得代价函数是凸函数,并且

得到的Hessian矩阵可逆。更多详情参考如下链接。


链接:http://deeplearning.stanford.edu/wiki/index.php/Softmax%E5%9B%9E%E5%BD%92

 

0 0
原创粉丝点击