系列文章目录
前言
softmax 回归(softmax regression)其实是 logistic 回归的一般形式,logistic 回归用于二分类,而 softmax 回归用于多分类
softmax回归是一个多输出的单层神经网络
神经网络:所有输出层的神经元,与所有输入层的神经元,线性相连。没有中间层
对任意输出神经元 y j y_j yj,都有 y j = ∑ w i , j x i + b j y_j = \sum w_{i, j}x_i + b{j} yj=∑wi,jxi+bj
进而,softmax回归模型可写为:
y = W x + b \pmb{y}= \pmb{Wx+b} y=Wx+b
假定 x ∈ R n × 1 \pmb{x}\in\mathbb{R}^{n\times 1} x∈Rn×1, y ∈ R m × 1 \pmb{y}\in\mathbb{R}^{m\times 1} y∈Rm×1,
T h e n Then Then
W ∈ R m × n , b ∈ R m × 1 \pmb{W}\in\mathbb{R}^{m\times n}, \pmb{b}\in\mathbb{R}^{m\times 1} W∈Rm×n,b∈Rm×1
Softmax回归的输出不是一个实值,而是一个在0和1之间的概率
softmax回归与线性回归的本质区别在于:输出意义不同
以鸢尾花为例: y 1 , y 2 , y 3 y_1, y_2, y_3 y1,y2,y3分别表示 x \pmb{x} x属于山鸢尾、变色鸢尾还是维吉尼亚鸢尾的概率。
既然是概率,则 y 1 , y 2 , y 3 y_1, y_2, y_3 y1,y2,y3的取值范围:
1. 应当在1的范围之内
2. 和应当为1
用线性回归的方式对其进行处理,并不能保证 y 1 , y 2 , y 3 y_1, y_2, y_3 y1,y2,y3的取值范围满足上述条件。
需要对输出进行softmax处理。
y i = e y i ∑ j = 1 3 e y j y_i = \frac{e^{y_i}}{\sum_{j=1}^{3} e^{y_j}} yi=∑j=1