Softmax 回归重庆大学 杨钰源1. 引言该模型是logistic 回归模型在多分类问题上的推广,在多分类问题中,类标签可以取两个以上的值。 Softmax 回归模型对于诸如 MNIST 手写数字分类等问题是很有用的,该问题的目的是辨识 10 个不同的单个数字。Softmax 回归是有监督的,后面也会介绍它与深度学习/无监督学习方法的结合。在logistic 回归中,训 练 集 由个已 标记 的样 本 构 成 :,其中输入特征。假定特征向量的维度为,其中对应截距项 。 由于 logistic 回归是针对二分类问题的,因此类标记。假设函数(hypothesisfunction)如下:训练模型参数 能够使代价函数最小化。代价函数如下:在softmax 回归中,解决的是多分类问题(相对于 logistic 回归解决的二分类问题),类标可以取个不同的值(而不是2 个)。因此,对于训练集,我们有。例如,在MNIST 数字识别任务中,有个不同的类别。对于给定的测试输入,用假设函数针对每一个类别 j 估算出概率值。也就是估计的每一种分类结果出现的概率。因此,假设函数将要输出一个维的向量(向量元素的和为1)来表示这个估计的概率值。具体地说,假设函数形式如下:其中是模型的参数。这一项对概率分布进行归一化,使得所有概率之和为1 。为了方便起见,同样使用符号来表示全部的模型参数。在实现 Softmax回归时,将用一个的矩阵来表示会很方便,该矩阵是将按行罗列起来得到的,如下所示:2. Softmax 代价函数现在来介绍 softmax 回归算法的代价函数。在下面的公式中,是示性函数,其取值规则为:值为真的表达式,值为假的表达式。Softmax 代价函数为:logistic 回归代价函数可以改为:可以看到,Softmax 代价函数与 logistic 代价函数在形式上非常类似,只是在 Softmax 损失函数中对类标记的个可能值进行了累加。在 Softmax 回归中将分类为类别的概率为:.对于的最小化问题,目前还没有闭式解法。因此,使用迭代的优化算法(例如梯度下降法,或 L-BFGS)。经过求导,得到梯度公式如下:回顾一下符号"" 的含义。本身是一个向量,它的第个元素 是对的第个分量的偏导数。有了上面的偏导数公式以后,就可以将它代入到梯度下降法等算法中,来最小化。例如,在梯度下降法的标准实现中,每一次迭代需要进行如下更新:()。当实现softmax 回归算法时,通常会使用上述代价函数的一个改进版本。具体来说,就是和权重衰减(weight decay)一起使用。接下来介绍使用它的动...