深度学习7softmax回归

softmax回归可以解决两种以上的分类,该模型是logistic回归模型在分类问题上的推广。

对于y可以取两个以上的值,比如说判断一份邮件是垃圾邮件、个人邮件还是工作邮件。

这边也参考http://deeplearning.stanford.edu/wiki/index.php/Softmax%E5%9B%9E%E5%BD%92

即,对于训练集clip_image002clip_image004,我们有clip_image006clip_image008

也就是对于给定的输入x,我们想用假设函数针对每一个类别j估算p(y=j|x),也就是估算出每一种分类结果出现的概率。对于logistic回归中,y取0跟1,我们采用假设函数clip_image009我们将训练模型参数 clip_image010,使其能够最小化代价函数 :

clip_image011

就是这边为什么乘以-1/m

而在softmax回归中,y取多个值k,因此,我们的假设函数将要输出一个 clip_image012 维的向量(向量元素的和为1)来表示这 clip_image012[1] 个估计的概率值。 具体地说,我们的假设函数 clip_image013 形式如下:

clip_image014

下面就看看这个是怎么来的。

首先定义每个结果的概率,

clip_image016

则有clip_image018,这样我也就可以把最后一个概率用前面几项表示,即

clip_image020

则,这个问题我们可以看成事k-1维的问题。则这个时候的T(y)就不是y,而是一组k-1维的向量,也就是T(y)要给出每一个y=i的概率(i从1到k-1)对于这个问题也演化到一般线性模型上面,即

将这多个向量也转化到指数分布上。下面定义:

clip_image022

clip_image024表示第i个clip_image026向量,第i为1,其他为0,符号表示

clip_image028clip_image030

另外我们有clip_image032

好,下面我们的目的也就是使得每个clip_image024[1]在其i时的概率最大,转化到一般线性模型下,即

clip_image034

则:

clip_image036

则对于每一个clip_image038

clip_image040这边clip_image042,接着有

clip_image044

clip_image046,带入得到

clip_image048

从η到φ我们就叫做softmax回归。

这样我们就得到了上面的假设函数,换个写法

clip_image050

下面再反过来求最大似然估计

clip_image052

最后我们再用牛顿法或者梯度下降法解出θ

整个过程有了,但是还没有能够进行深入理解,对于更多细节参考

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

下面做一下这个后面的练习来加深理解。

原文地址:https://www.cnblogs.com/fengbing/p/3088466.html