Press "Enter" to skip to content

动手学深度学习——softmax回归简单介绍

1、首先我们解释一下回归和分类的区别:

 

回归估计一个连续值,比如说预测房子的价格;

 

分类预测一个离散类别,比如说我预测一个图片里面是猫还是狗。

 

例1:MNIST (手写数字识别)10类

 

 

例2:ImageNet(自然物体分类)1000类

 

 

2、Kaggle上的典型的分类问题

 

例1、将人类蛋白质显微镜图片分成28类

 

例2、将恶意软件分成9个类别

 

例3、将恶意的Wikipedia评论分成7类

 

3、从回归到多类分类

 

回归:单连续数据输出;自然区间R;做损失函数的时候跟真实值的区别作为损失。

 

 

分类:通常多个输出;输出的第i个元素是预测为第i类的置信度;

 

 

4、从回归到多类分类——均方损失

 

假设有n个类别,对类别进行一位有效编码,长为n的向量,从y1到yn,假设第i个是真实类别,则yi等于1,其他的元素等于0.(刚好有一个位置有效)

 

 

也可以使用均方损失来进行训练,选择最大值作为预测值

 

 

5、从回归到多类分类——无校验比例

 

对类别进行一位有效编码,最大值作为预测

 

 

需要置信度的识别正确类Oy要远远大于其他非正确类的Oi(大余量)

 

 

输出是一个概率(非负,和为1),现在输出是一个O1到On的向量,引入一个新的操作词交softmax,我们将softmax作用到O上面得到一个y_hat,它是一个长为n的向量,他有属性,每个元素都非负且和为1.

 

y_hat里面的第i个元素等于O里面的第i个元素做指数(指数的好处是,我不管它是什幺值,都可以变成非负)然后再除以所有的Ok做指数。然后y_hat就是一个概率了。

 

 

最后会得到两个概率,一个真实的,一个预测的,然后比较两个概率之间的区别作为损失。

 

6、softmax和交叉熵来做损失

 

交叉熵常用来衡量两个概率的区别:

 

假设p,q是一个离散概率

 

 

将它的损失作为:

 

 

其梯度是真实概率和预测概率的区别:

 

 

7、总结

softmax回归是一个多类分类模型
使用softmax操作子得到每个类的预测置信度
使用交叉熵来衡量预测和标号的区别

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注