博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

动手学深度学习二---softmax回归

Posted on 2019-05-21 09:34  棽棽  阅读(347)  评论(0编辑  收藏  举报

1、适用情景
当模型需要输出图像类别这样的离散值时,可以使用包括softmax在内的分类模型。softmax回归即在输出中采用了softmax运算,使运算结果更适合离散值的训练和预测。
2、softmax模型
假设输入特征为x1、x2、x3、x4,根据输入特征判断图片类别为O1、O2、O3,权重为带下标的w,偏差为带下标的b,对于每个输出,计算过程如下:

用神经网络描绘以上计算,输入为个数为特征个数4个,输出个数为类别数3个,每一个输出O1、O2、O3的计算完全依赖所有输入,故输出层也是全连接层,输入层不参与计算,故与线性回归一样也是单层神经网络

分类问题需要得到离散的预测输出,一个方法是将输出值Oi作为预测类别是i的置信度,将最大的置信度对应的类别作为预测类别

此时将会面临两个问题:

(1)输出值的范围不确定,例如在,10、0.1、0.1中最大为10,属于类别1,若O2=O3=100,此时则不会是第一类

(2)真实标签是离散值,与不确定范围的输出值之间的误差难以衡量

解决办法:

对输出值采用softmax运算,将结果变换成值为正且和为1的概率分布

此时,,因此是一个合法的概率分布

同时,根据ex函数的特征知,最大的Oi即为最大的,softmax运算没有改变预测类别

最终得出模型的矢量计算表达式为:

3、损失函数

对于预测输出值,此时满足一个概率分布,而对于真实值,也可以用一个概率分布表示:使第y(i)(预测为第i类)个元素为1,其它为0(构造向量y(i)

对于衡量两个概率分布差异,最常用的测量函数是交叉熵

是向量y(i)中非0即1的元素,j为类别数值时,为1,其它为0;当一个样本只有一个标签(例如图像只需确定一个物体)时,以上函数可以简化为

交叉熵损失函数取样本交叉熵的平均值,如下: