[原理篇] Soft Regression
Logistic Regression具备算法复杂度低,容易实现等特点,常用于二分类问题。但是在多分类问题中,就显得力不从心了。Softmax Regression 实际是Logistic Regression算法在多分类问题上的推广。其核心在于任意两个类直接是线性可分的。
1. Softmax Regression 模型
假设有m个训练样本和k个类别标签,描述如下:
利用θ表示学习模型的参数,对于每一个样本,估计其所属的类别概率为:
2. Softmax Regression损失函数与求解
类似于logistic regression回归损失函数设计,softmax regression损失函数如下所示:
对于上面的损失函数,可以采用梯度下降算法进行求解。首先计算损失函数的梯度:
所以,参数θ的更新公式为:
3. Softmax regression和Logistic regression的关系
Softmax regression回归器中存在FxK个待学习的参量。其中,F指特征分量的个数;K指所属的类别数目。实际应用中,FxK未知参数矩阵存在参数冗杂的问题。证明如下:
通过上面分析,我们可以发现,从未知参量矩阵中减去向量,模型的预测结果并没有发生改变。因此,softmax regression参数矩阵中存在冗余参数。
下面利用Soft regression推导Logistic regression.当k=2时,softmax regression算法的假设函数为:
利用softmax regression参数冗杂的特点,令△=θ1,从两个向量中都减去这个向量:
通过上式,我们可以发现,LR就是SR的一种特例。