softMax回归学习

softma用来处理分类问题,此文章以图像分类为基础问题。

1,分类问题

分类问题是一个多输入多输出问题,以图象分类为例子,高和宽均为2像素的图像有4个像素点分别记为x1,x2,x3,x4,训练数据集中图像的真实标签为狗、猫或鸡,用y1,y2,y3代替。

2,softmax回归模型

softmax与线性回归相似建立模型时都是在做特征值与权值的线性叠加,如上述提出的问题根据四个特征把问题分为三类(四个像素区分狗猫鸡),建立模型如下。
(x:四个像素 , w:代表权值, b:代表预测偏差, o:模型的输出)
在这里插入图片描述
使用神经网络表示模型如下所示。类似三个线性回归模型叠加在一起,由于一个计算层2也叫单层神经网络,所以输出层也叫全连接层。
在这里插入图片描述
一个样本(一张图片),经过该模型后会有三个输出,oi代表样本是i类的置信度。如o1=0.1,o2=10,o3=0.1由于o2最大,那么预测类别为2,其代表猫。

softmax计算

因为模型输出结果范围差距较大(如0.1与10差距100倍),另一方面,由于真实标签是离散值,与不确定范围的输出值之间的误差难以衡量。故对模型输出做softmax运算将输出值变换成值为正且和为1的概率分布
在这里插入图片描述
在这里插入图片描述

3,单样本分类的矢量计算表达式

单样本计算采用矢量计算可提高效率
权值与偏差
在这里插入图片描述
像素
在这里插入图片描述
模型输出
在这里插入图片描述
概率分布与i的矢量表示
在这里插入图片描述

4,交叉熵损失函数(重点)

我们已经知道,softmax运算将输出变换成一个合法的类别预测分布。实际上,真实标签也可以用类别分布表达,对于一个样本i,其标签值(真实值)应该是一个元素yi=1,其余为零,表示该样本的类型是i(如标签值是1,0,0代表图像是狗 ;0,1,0代表图象是猫)
处理分类问题时我们只追求模型可以正确的识别类型,而不关注预测值与真实值之间的误差值,故不采用平方损失函数,用交叉熵来衡量真实的概率分布与预测的概率分布之间的差距,交叉熵如下。
在这里插入图片描述
如下图上式子在累加时只有一个yj=1其余都是零,yj^i值在0,1之间,log在0,1之间为负,故H绝对是一个正值,且预测概率分布趋近于真实概率分布时,交叉熵趋近于0
在这里插入图片描述

假设训练数据集的样本数为n,交叉熵损失函数是样本内交叉熵的平均值,故交叉熵损失函数定义如下。
在这里插入图片描述

在这里插入图片描述
损失函数值减小也代表模型预测值接近真实值。

5,模型评定

在训练好softmax回归模型后,给定任一样本特征,就可以预测每个输出类别的概率。通常,我们把预测概率最大的类别作为输出类别。如果它与真实类别(标签)一致,说明这次预测是正确的。

结束

疑惑
若真实的概率分布为“0,1,0”
模型预测“0,1,0”
模型预测的概率分布1/(2+e),e/(2+e),1/(2+e)(既是对预测结果softmax运算)。
在使用交叉熵后仍会出现一个非负值误差,可是预测结果与真实概率分布完全一致。虽然这是一个分类问题,对模型的要求是其可以正确的分类。但是否会存在另一个预测值使得交叉熵值更小,既是预测较一般的结果经过交叉熵后却更符合真实的概率分布。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值