Softmax回归详解
起源:Logistic的二类分类
Reference:http://ufldl.stanford.edu/wiki/index.php/Softmax_regression
http://deeplearning.net/tutorial/logreg.html
Softmax回归是Logistic回归的泛化版本,用于解决线性多类(K类)的分类问题。
Logistic回归可以看作是Softmax回归在K=2时的特例。Softmax函数即是K分类版的Logistc函数。
裸Softmax回归的效果很差,因为没有隐层结构,归根还是是线性回归。所以在深度学习里,Softmax则通常作为MLP的输出层。
即,将BP网络和Softmax结合起来,取BP网络的隐层映射机制、Softmax的多分类机制,加以组合形成新的MLP架构。
这么做的原因就是,传统BP网络的输出层是个多神经元的自行设计接口层,比如常见的log2(K)方法,转多分类需要麻烦的编码。
但实际上,隐层(可看作是input)到输出层的映射原理等效于Softmax,既然Softmax拥有概率取分类的方法,何必再用低效的编码方法?
Part I 如何从2类转化为K类?
解决方案是引入K组(W、b)参数,即有K个分隔超平面,选择作为最终分类即可。
由于存在K组参数,原来的将从单个值,变成一个大小为K的向量。

Part II 变化的目标函数
Logistic的目标函数:
在Softmax里,由于已经变成了向量,所以不能再使用。
实际上,在Logistic的推导里,只是偶然而已,。
即才是真正的概率分布函数,上述情况只是二项分布的特例。由于y的取值变成的K类,所以新的K项分布概率密度分布表示如下:
且定义
则
仔细观察,其实就是这个向量根据情况抽取的单个值而已,这就是Logistic函数的修改版本——Softmax函数
梯度变成:
可以使用梯度上升算法了(下降算法也可,即取均值加上负号,变成负对数似然函数):
Part III C++代码与实现
Softmax
Part IV 测试
使用Iris鸢尾花数据集:http://archive.ics.uci.edu/ml/datasets/Iris,是三类分类问题
该数据集的第三组数据是非线性的,若K=3训练,则因为非线性数据扰乱,错误率很大。
若K=2,则代码等效于Logistic回归,错误率相近。
相关知识
第3章(下)基于Softmax回归完成鸢尾花分类任务
鸢尾花分类:softmax与深度学习
Tensorflow:softmax处理Iris鸾尾花分类
百战程序员
基于KNN的鸢尾花分类
【深度学习】详解CNN实现手写数字识别(keras)
逻辑回归的多分类实战:以鸢尾花数据集为例
机器学习(一):线性回归算法的评测方式、R^2
植物大战僵尸2大嘴花回归 大嘴花用法评测
理解逻辑回归与线性回归
网址: Softmax回归详解 https://www.huajiangbk.com/newsview2500667.html
| 上一篇: 《开花和结果》教学设计表 |
下一篇: 优秀案例分享:成人继续教育线上线 |
推荐分享
- 1君子兰什么品种最名贵 十大名 4012
- 2世界上最名贵的10种兰花图片 3364
- 3花圈挽联怎么写? 3286
- 4迷信说家里不能放假花 家里摆 1878
- 5香山红叶什么时候红 1493
- 6花的意思,花的解释,花的拼音 1210
- 7教师节送什么花最合适 1167
- 8勿忘我花图片 1103
- 9橄榄枝的象征意义 1093
- 10洛阳的市花 1039
