线性回归模型总结

线性模型(Linear model)主要是想通过属性学得一个线性组合来预测函数。一般表示为:
f ( x ) = w 1 x 1 + w 2 x 2 + ⋯ + w n x n + d f(x) = w_1x_1 + w_2x_2 + \dots + w_nx_n +d f(x)=w1x1+w2x2++wnxn+d
向量形式为:
f ( x ) = W T x + d f(x) = W^Tx + d f(x)=WTx+d

线性回归

线性回归(Linear Regression)模型是一个有监督回归模型,预测的结果是连续值。
假设f为输入的特征x的线性函数,有:
f ( x ) = θ 0 x 0 + θ 1 x 1 + ⋯ + θ n x n f(x) = \theta_0x_0 + \theta_1x_1 + \dots + \theta_nx_n f(x)=θ0x0+θ1x1++θnxn
向量形式为(在特征x中添加了一维 x 0 = 1 x_0 =1 x0=1,用来表示截距项):
f ( x ) = θ T x f(x) = \theta^Tx f(x)=θTx
怎样找到最好的权重参数 θ = [ θ 0 , θ 1 , … , θ n ] \theta = [\theta_0,\theta_1,\dots,\theta_n] θ=[θ0,θ1,,θn]使得预测的结果更贴近真实值,线性回归中使用**均方误差(MSE)**作为损失函数,来求解权重参数。

损失函数

预测值可以定义为 h θ ( x ) h_\theta(x) hθ(x),得
h θ ( x ) = θ T x h_\theta(x) = \theta^Tx hθ(x)=θTx
定义损失函数:
J ( θ ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J(\theta) = \frac{1}{2m}\sum_{i=1}^{m}(h_\theta(x^{(i)}) - y^{(i)})^2 J(θ)=2m1i=1m(hθ(x(i))y(i))2
这里的均方误差是一个凸函数,可以取到全局最优解
线性回归模型总结_第1张图片

求解方法

一般求解的方法有两种:1.求解梯度等于0(对比于函数求导等于0,得最大最小值的候选点)。 2.迭代法(梯度下降、牛顿法、拟牛顿法)
梯度等于0求解:得到最值的候选点,一般需要进一步的判断,当损失函数较为复杂时,具有局限性,求解会变的很困难。
迭代法:这里举个例子理解,现有个人在山顶,他想以较快的方式下山到达山脚,首先他会选取自己认为下山最陡的一个方向迈出一步,然后在现在的地方再次选择这样的一个方向再次迈出一步,重复这个过程,直至到达山脚。梯度下降、牛顿法、拟牛顿法这些迭代法中主要的不同就是在选取方向上的不同。在凸函数中可以得到全局最优解,非凸函数中,一般得到局部最优解。

梯度等于0

线性回归模型总结_第2张图片

梯度下降

梯度下降一般表示为:
θ j : = θ j − α ∂ ∂ θ j J ( θ ) \theta_j := \theta_j - \alpha \frac{\partial}{\partial\theta_j}J(\theta) θj:=θjαθjJ(θ)
将线性回归的损失函数带入得:
θ j : = θ j − α 1 m ∑ j = 1 m ( h θ ( x ( j ) ) − y ( j ) ) x ( j ) \theta_{j} := \theta_{j} - \alpha\frac{1}{m}\sum \limits_{j=1}^{m}(h_\theta(x^{(j)})-y^{(j)})x^{(j)} θj:=θjαm1j=1m(hθ(x(j))y(j))x(j)
这里的 α \alpha α称为步长或学习率,偏导部分则为选择的方向。
梯度下降学习率 α \alpha α的影响:太小收敛速度太慢, 太大会震荡甚至不收敛。一般在实际工程中自己设定如[0.001,0.01,0.1]之类。
一般会设置迭代次数,或进行判断,当 θ \theta θ中的值变化很小时停止迭代。
线性回归模型总结_第3张图片

模型状态

欠拟合:模型没有很好地捕捉到数据特征,不能够很好地拟合数据
过拟合:把样本中的一些噪声特性也学习下来了,泛化能力差
实际工业界使用的各种模型都存在过拟合的风险:
更多的参数/特征,更复杂的模型,通常有更强的学习能力,但是更容易“失去控制”
训练集中有一些噪声,并不代表全量真实数据的分布,死记硬背会丧失泛化能力
欠拟合一般需要采集更多的数据去训练模型,过拟合一般添加正则化。
线性回归模型总结_第4张图片

正则化

正则化主要是解决过拟合问题。
过拟合就像模型做数学作业一样,只把答案背了下来,不了解所用的数学定理,这样用新的样本进行预测的时候,泛化效果就会很差。从上面的图中,我们可以看出模型采用高阶多项式的时候,虽然模型对于样本能够很好的拟合,但是图像的幅度会非常大,泛化能力会很差。
因为在高阶多项式中,我们没有对高次项的系数进行约束,所以高次项的系数可以取很大的权重,从而导致图像能够以很大的变化幅度拟合数据。
通过正则化添加参数“惩罚”,控制参数幅度 限制参数搜索空间,来减小过拟合风险。
这里添加的正则化是L_2范数(各参数的平方和再求平方根)的平方,即 ∣ ∣ x ∣ ∣ 2 2 ||x||^2_2 x22
J ( θ ) = 1 2 m [ ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 ] J(\theta) = \frac{1}{2m}\bigg[\sum_{i=1}^{m}(h_\theta(x^{(i)}) - y^{(i)})^2 + \lambda\sum_{j=1}^n\theta_j^2\bigg] J(θ)=2m1[i=1m(hθ(x(i))y(i))2+λj=1nθj2]

广义线性模型

有时候数据和结果之间的关系并不是线性的,可以对线性模型 y = w T x + b y = w^Tx +b y=wTx+b进行一定的数学变化,如指数(exp)或对数(log)变换处理,比如令 l n y = w T x + b lny = w^Tx + b lny=wTx+b, 则得到对数线性回归,是用 e w T x + b e^{w^Tx+b} ewTx+b来逼近y。
线性回归模型总结_第5张图片

你可能感兴趣的:(机器学习笔记)