Softmax回归模型
整体理解
回归与分类
借用网上一个帖子的回复:分类问题和回归问题都要根据训练样本找到一个实值函数g(x). 回归问题的要求是:给定一个新的模式,根据训练集推断它所对应的输出y(实数)是多少。也就是使用y=g(x)来推断任一输入x所对应的输出值。分类问题是:给定一个新的模式,根据训练集推断它所对应的类别(如:+1,-1)。也就是使用y=sign(g(x))来推断任一输入x所对应的类别。综上,回归问题和分类问题的本质一样,不同仅在于他们的输出的取值范围不同。分类问题中,输出只允许取两个值;而在回归问题中,输出可取任意实数。
Softmax回归
是一个分类器,从多个类中选择一个,哪一个类别的概率高就选择哪个类。longistic回归是从两个类中选择一个,用sigmoid函数或tanh函数映射到对应的类。
关键问题是代价函数,目的是使代价函数的值最小。既然是分类问题,训练的时候的代价函数就要以分错的多少作为代价函数。于是,softmax的代价函数:
对参数求导:
对参数的求导,自己计算的不对,在@晓辉@永恒的电波(deep learning高质量)的帮助下,总算理解了。把他们写的图直接上了。
总和:对于和式的求导,要把式子拆开再求导,我自己相当于只求了其中的一部分。
与稀疏自编码的比较
- 目的不同:稀疏自编码的目的是为了压缩表示,而softmax regression 是为了分类。
- 训练方式不同:稀疏自编码是无监督的,而softmax regression是监督的。
- 结构不同:稀疏自编码是一个输入层、一个隐藏层,还有一个输出层——编码和解码;而Softmax只有两层,一层是输入,一层是输出。
- 参数:本质是一样的,就是层间的联系。但是表示形式不同,稀疏自编码用的是[w1,b1,w2,b2],而softmax是theta,其实就是[w1,b1].