linear regression 线性回归再回顾

之前写过一篇线性回归知识梳理,这篇文章主要是从整体角度出发再回顾一下,另外思考一下之前没想过的问题。

1. 线性模型(linear model)与线性回归(linear regression)

1.1 linear model

linear model 试图学习一个通过属性的线性组合来进行预测的函数:
f ( x ) = w 1 x 1 + w 2 x 2 + … + w n x n + b f(\boldsymbol{x})=w_{1} x_{1}+w_{2} x_{2}+\ldots+w_{n} x_{n}+b f(x)=w1x1+w2x2++wnxn+b
向量形式: f ( x ) = w T x + b f(\boldsymbol{x})=\boldsymbol{w}^{\mathbf{T}} \boldsymbol{x}+b f(x)=wTx+b
线性模型形式简单、易于建模,但却蕴含着 machine learning 的一些重要思想,很多功能强大的非线性模型(nonlinear model)都可以在线性模型的基础上通过引入层级结构或高维映射而得到。
几种经典的 linear model 有:linear regression、logistics regression、线性判别分析(LDA)。

1.2 linear regression

linear regression 就是用于回归的linear regression。它的输出是离散值。

2. 机器学习模型建立的三个步骤

选择模型框架、选择评估模型的方法(object function)、最优化

2.1 选择模型框架

这篇文章只讲 linear regression,于是只选择线性模型框架了。

2.2 选择模型的评估方法

object function(目标函数)由 cost function 和 regularization(正则项)两部分组成。
当我们的损失函数是 convex function(凸函数)时,全局最优解也是局部最优解。
在线性回归里面,loss function是convex function,不会出现local optimal。

2.2.1 cost function

回归任务中常用的性能度量是 mean squared error/square loss(均方误差),除了MSE还有RMSE、R Squared等指标。从几何意义上说,MSE是想找到一条直线使得所有样本到直线上的欧氏距离之和最小。
E ( f ; D ) = 1 m ∑ i = 1 m ( f ( x i ) − y i ) 2 E(f ; D)=\frac{1}{m} \sum_{i=1}^{m}\left(f\left(x_{i}\right)-y_{i}\right)^{2} E(f;D)=m1i=1m(f(xi)yi)2

2.2.2 regularization

引入正则项实际上是学习器的一种归纳偏好,即:选用尽可能简单的模型(奥卡姆剃刀原则),避免过拟合,因为这样能够有更好的泛化性能。注:通常只对权重向量计算正则项,
L p = ∑ 1 n x i p n , x = ( x 1 , x 2 , ⋯   , x n ) L p=\sqrt[n]{\sum_{1}^{n} x_{i}^{p}}, x=\left(x_{1}, x_{2}, \cdots, x_{n}\right) Lp=n1nxip ,x=(x1,x2,,xn)
(1)L0 norm
L0范数不符合严格的数学定义,常指向量中非0元素的个数。在实际应用中,L0 norm 很难优化求解(NP难问题)。所以在实际情况中,L0的最优化会被放宽到L1或L2下的最优化。
(2)L1 norm
L1 norm 也叫 Lasso regularization、曼哈顿距离等。形式如下: ∥ x ∥ 1 = ∑ i = 1 n ∣ x i ∣ \|\mathbf{x}\|_{1}=\sum_{i=1}^{n}\left|x_{i}\right| x1=i=1nxi
在目标函数中,L1正则项的形式为 ℓ 1 = λ ∥ ω ∥ 1 = ∑ i ∣ ω i ∣ \ell_{1}=\lambda\|\omega\|_{1}=\sum_{i}\left|\omega_{i}\right| 1=λω1=iωi
对L1最优化的解是一个稀疏解,可以过滤掉不携带信息的特征,实现特征选择。
(3)L2 norm(欧氏距离)
对于线性回归,使用L2正则化的模型也叫 ridge regression,定义如下:
∥ x ∥ 2 = ∑ i = 1 n x i 2 \|\mathbf{x}\|_{2}=\sqrt{\sum_{i=1}^{n} x_{i}^{2}} x2=i=1nxi2
在目标函数中,L2正则项形式为 1 2 λ ∥ ω ∥ 2 2 = 1 2 λ ∑ j = 1 n θ j 2 \frac{1}{2} \lambda\|\omega\|_{2}^{2}=\frac{1}{2} \lambda \sum_{j=1}^{n} \theta_{j}^{2} 21λω22=21λj=1nθj2 ,其中 λ 是正则化强度。L2 范数擅长于防止过拟合,还可以让我们的优化求解变得稳定和快速。
相较L1正则化会让权重向量在最优化的过程中变得稀疏(即非常接近0),L2正则化中的权重向量大多是分散的小数字。在实践中,如果不是特别关注某些明确的特征选择,一般说来L2正则化都会比L1正则化效果好。

2.3 最优化方法

2.3.1 gradient descent

(1)损失函数:
J ( θ ) = 1 2 m ∑ i = 1 m [ ( ( h θ ( x ( i ) ) − y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 ) ] J(\theta)=\frac{1}{2 m} \sum_{i=1}^{m}\left[\left(\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2}+\lambda \sum_{j=1}^{n} \theta_{j}^{2}\right)\right] J(θ)=2m1i=1m[((hθ(x(i))y(i))2+λj=1nθj2)]
其中 h θ ( x ) = θ T X = θ 0 + θ 1 x 1 + θ 2 x 2 + … + θ n x n h_{\theta}(x)=\theta^{T} X=\theta_{0}+\theta_{1} x_{1}+\theta_{2} x_{2}+\ldots+\theta_{n} x_{n} hθ(x)=θTX=θ0+θ1x1+θ2x2++θnxn
(2)梯度下降:
 Repeat  { θ j : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 , … , θ n ) } \begin{array}{l}{\text { Repeat }\{ } \\ {\theta_{\mathrm{j}} :=\theta_{\mathrm{j}}-\alpha \frac{\partial}{\partial \theta_{j}} \mathrm{J}\left(\theta_{0}, \theta_{1}, \ldots, \theta_{\mathrm{n}}\right)} \\ {\}}\end{array}  Repeat {θj:=θjαθjJ(θ0,θ1,,θn)}
即:

R e p e a t Repeat Repeat u n t i l until until c o n v e r g e n c e convergence convergence{
θ 0 : = θ 0 − a 1 m ∑ i = 1 m ( ( h θ ( x ( i ) ) − y ( i ) ) x 0 ( i ) ) {\theta_0}:={\theta_0}-a\frac{1}{m}\sum\limits_{i=1}^{m}{(({h_\theta}({{x}^{(i)}})-{{y}^{(i)}})x_{0}^{(i)}}) θ0:=θ0am1i=1m((hθ(x(i))y(i))x0(i))
θ j : = θ j − a [ 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i ) + λ m θ j ] {\theta_j}:={\theta_j}-a[\frac{1}{m}\sum\limits_{i=1}^{m}{({h_\theta}({{x}^{(i)}})-{{y}^{(i)}})x_{j}^{\left( i \right)}}+\frac{\lambda }{m}{\theta_j}] θj:=θja[m1i=1m(hθ(x(i))y(i))xj(i)+mλθj]
f o r for for j = 1 , 2 , . . . n j=1,2,...n j=1,2,...n
​ }

可以看出,相比没有正则化的梯度下降,每次都在原有算法更新规则的基础上令 θ 值减少了一个额外的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值