linear regression
logistic regression
softmax regression
#@author: gr
#@date: 2014-01-21
#@email: forgerui@gmail.com
一、linear regression
线性模型:
代价函数:
代价函数使用平方误差损失函数。
求解:
可以使用最小二乘法和梯度下降法。
最小二乘法:
梯度下降法:
批梯度下降,增量梯度下降。更新参数,以使代价函数最小化。
二、logistic regression
逻辑回归模型:
输出 (Y=1) 的对数几率是由输入 (x) 的线性函数表示的模型,即logistic regression。
求事件的对数几率:
对数几率是一个关于x的线性函数。
模型参数估计:
逻辑回归的参数估计可以采用极大似然估计求得。
$$egin{align*} l( heta) = & Pi_{i=1}^N (p_i)^{y_i}(1-p_i)^{1-y_i} \ = & sum_{i=1}^{N} [y_ilog{(p_i)} + (1-y_i)log{(1 - p_i)}] \ = & sum_{i=1}^{N} [ y_i log{(dfrac{p_i}{1-p_i})} + log{(1-p_i)}] \ = & sum_{i=1}^N [y_i(w cdot x_i) - log{(1 + e^{(w cdot x )})}] end{align*} $$
对(L(w))求极大值,就可以得到(w)的估计值。用梯度下降法或拟牛顿法求解。
损失函数:
- Gold Standard
- Hinge Loss
SVM
- Log Loss
Logistic Regression
、Softmax Regression
- Squared Loss
Linear Regression
- Boosting
代价函数:
这里使用对数函数作为损失函数:
用梯度下降法或拟牛顿法求解。
三、softmax regression
模型:
对于多分类问题,(y_i in { 1, 2, cdots , k})。对于其中一类作为positive,则另外的k-1类就为negative。
$$ egin{align*} h_ heta(x^{(i)}) = & left[ egin{array}{c} p(y^{(i)} = 1 mid x^{(i)}, heta) \ p(y^{(i)} = 2 mid x^{(i)}, heta) \ vdots \ p(y^{(i)} = k mid x^{(i)}, heta) \ end{array} ight] \ = & dfrac{1}{sum_{j=1}^k e^{ heta_j^Tx^{(i)}}} left[ egin{array}{c} e^{ heta_1^T x^{(i)}} \ e^{ heta_2^T x^{(i)}} \ vdots \ e^{ heta_k^T x^{(i)}} \ end{array} ight] end{align*} $$
用( heta)将( heta_1, heta_2, ldots heta_K)罗列起来:
得到softmax回归的代价函数:
可以看出softmax是logistic的推广,同样用梯度下降法或拟牛顿法求解。
Reference
- http://www.cnblogs.com/bzjia-blog/p/3366780.html
- http://www.cnblogs.com/bzjia-blog/p/3370869.html
- 李航 著 《统计学习方法》
- http://blog.csdn.net/viewcode/article/details/8794401
- http://blog.csdn.net/abcjennifer/article/details/7716281
- Deva Ramanan 《Machine Learning》 Lecture1