SoftMax 回归(与Logistic 回归的联系与区别)
Posted popodynasty
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SoftMax 回归(与Logistic 回归的联系与区别)相关的知识,希望对你有一定的参考价值。
SoftMax 回归(与Logistic 回归的联系与区别)
SoftMax 试图解决的问题
SoftMax回归模型是Logistic回归模型在多分类问题上的推广,即在多分类问题中,类标签y可以取两个以上的值
对于Logistic回归的假设函数(h_ heta(x) = frac{1}{1 + exp(-x)}),它的输出结果将被投影到([0,1])区间上,根据假设函数的输出值的大小,我们预测该输入值是否属于某一个类别,其结果只会是是或不是,即Logistic回归只能解决二分类问题.
SoftMax实现多分类的思路很简单: 对于每一个分类,输出一个假设值,用于判定当前输入值对应该类的概率,最终根据各个类的概率大小判定该输入值对应的分类. 可以看出,SoftMax的思想有点类似于独热编码
SoftMax回归的假设函数,代价函数及正则化
SoftMax的假设函数如下:
[h_ heta(x^{(i)}) =
left[
egin{matrix}
& p(y^{(1)}| x^{(i)}; heta_1)& p(y^{(2)}|x^{(i)}; heta_2)&:&p(y^{(k)}|x^{(i)}; heta_k)
end{matrix}
ight]
=
frac{1}{sum_{j=1}^{k}e^{ heta_j^T}x^{(i)}}
left[
egin{matrix}
& e^{ heta_1^Tx^{(i)}}& e^{ heta_2^Tx^{(i)}}&:& e^{ heta_k^Tx^{(i)}}
end{matrix}
ight]
]
其中( heta_1, heta_2,..., heta_k in R^{n+1})是训练模型的参数,右式分母意义在于归一化至([0,1])区间,使得所有概率和为一
转化为矩阵运算,我们用
[Theta = left[
egin{matrix}
& heta_1^T & heta_2^T &:& heta_k^T
end{matrix}
ight]
]
来表示所有的参数. 显然,(Theta)是一个(k*(n+1))的矩阵
代价函数为
K-Logistic 与 SoftMax 的选择
以上是关于SoftMax 回归(与Logistic 回归的联系与区别)的主要内容,如果未能解决你的问题,请参考以下文章
机器学习之线性回归---logistic回归---softmax回归