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

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

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

即,对于训练集深度学习7softmax回归深度学习7softmax回归,我们有深度学习7softmax回归深度学习7softmax回归

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

深度学习7softmax回归

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

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

深度学习7softmax回归

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

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

深度学习7softmax回归

则有深度学习7softmax回归,这样我也就可以把最后一个概率用前面几项表示,即

深度学习7softmax回归

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

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

深度学习7softmax回归

深度学习7softmax回归表示第i个深度学习7softmax回归向量,第i为1,其他为0,符号表示

深度学习7softmax回归深度学习7softmax回归

另外我们有深度学习7softmax回归

好,下面我们的目的也就是使得每个深度学习7softmax回归在其i时的概率最大,转化到一般线性模型下,即

深度学习7softmax回归

则:

深度学习7softmax回归

则对于每一个深度学习7softmax回归

深度学习7softmax回归这边深度学习7softmax回归,接着有

深度学习7softmax回归

深度学习7softmax回归,带入得到

深度学习7softmax回归

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

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

深度学习7softmax回归

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

深度学习7softmax回归

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

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

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

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