Machine Learning --- Linear regression & Rige & Robust regression & Lasso
一、Least squares最小二乘回归(高斯似然+均匀先验)
因为先验是均匀分布,因此求最小二乘回归即求高斯最大似然。
在泛化的线性模型里,x为多项式基:
高斯似然函数为:
让似然函数最大,即令残差平方和RSS最小,RSS/N即为均方误差MSE。-log似然(NLL)对w求偏导等于0,得:
*注:最小二乘回归计算方法
1.数值计算(有解析解,精确,但速度慢)
a. QR分解:稳定
b. SVD奇异值分解(广义的特征值分解)
SVD分解,得右奇异向量:
奇异值:
左奇异向量:
最小二乘计算结果:
2.梯度下降法(有数值解,速度快。利用所有样本,也称批处理梯度下降)
3.随机梯度下降法(SGD,每次只用一个样本,速度更快,用于在线学习)
二、Rige岭回归(高斯似然+高斯先验(L2正则))
先验:
似然:
后验:
后验函数对w求偏导等于0得:
*注:岭回归计算方法
1.解析解
a. QR分解
b. SVD分解
SVD与主成分的关系:特征值越大,方差越大。
三、Robust regression鲁棒线性回归(Laplace/Student似然+均匀先验)
因为先验服从均匀分布,所以求鲁棒线性回归即求Laplace/Student最大似然。在heavy tail(奇异点较多)情况下用鲁棒线性回归,因为Laplace/Student分布比高斯分布更鲁棒。
似然函数为:
由于零点不可微,所以求解析解困难,无法使用梯度下降法。引入Huber损失函数解决此问题:
四、Lasso回归(Least absolute shrinkage and selection operator,高斯似然+Laplace先验)
Laplace先验除了加罚项外,还有特征选择的作用。因为加高斯先验,w绝大多数不为0;而Laplace先验使w大多数为0,降低了模型复杂度的同时选择了特征,如下图:
Lasso目标:最小化损失函数
零点不可微:引入子梯度。如f(x)=|x|,其子梯度为:
可微项梯度:
目标函数子梯度为:
根据Cj的不同,可分为下面三种情况
综上,对于给定的lamda,最佳权重为:
软阈值:设置小权重为0同时缩小其他所有权重。
硬阈值:设置小权重为0但不缩放其他权重。
*总结:
如果输入正交:即X'X=I,则RSS为:
最小二乘回归的解为:
岭回归的解为:
Lasso的解为:
posted on 2013-11-13 01:48 Jizhiyuan 阅读(1781) 评论(0) 编辑 收藏 举报