线性回归的方法做异常检测:最小二乘法与梯度下降法

本文介绍了最小二乘法在求解线性回归参数中的应用,通过数学推导展示了如何找到误差最小的最优参数。同时,详细阐述了梯度下降法用于优化损失函数的过程,包括其迭代公式和在不同维度问题上的应用。文中还通过实例直观地展示了梯度下降法在找寻一元和多元函数极值点时的效果。最后讨论了两者在实际问题中的结合使用。
摘要由CSDN通过智能技术生成

在这里插入图片描述

1.最小二乘法
最小二乘法其实就是利用误差最小化求解线性回归参数的方法。
一元多维线性回归:
Y = ∑ i = 1 d a i ⋅ X i + a d + 1 Y=\sum_{i=1}^{d} a_{i} \cdot X_{i}+a_{d+1} Y=i=1daiXi+ad+1
分析其中一维:
y j = ∑ i = 1 d a i ⋅ x j i + a d + 1 + ϵ j y_{j}=\sum_{i=1}^{d} a_{i} \cdot x_{j i}+a_{d+1}+\epsilon_{j} yj=i=1daixji+ad+1+ϵj
U U U代表 N × ( d + 1 ) N \times (d+1) N×(d+1)的自变量矩阵,以 A A A 代表 ( d + 1 ) × 1 (d+1) \times 1 (d+1)×1 的系数矩阵 ( a 1 . . . a d + 1 ) T (a_{1}...a_{d+1})^{T} (a1...ad+1)T。那么误差的目标函数为:
L ( A ) = 1 2 ∣ Y − U ⋅ A ∣ 2 L(A) = \frac{1}{2}{\left| {Y - U \cdot A} \right|^2} L(A)=21YUA2
想要求误差最小值,那么就对L(A) 求偏导:

∂ L ( A ) ∂ A = 1 2 ∂ ∣ Y − U ⋅ A ∣ 2 ∂ A = − U T ( Y − U ⋅ A ) \frac{{\partial L(A)}}{{\partial A}} = \frac{1}{2}\frac{{\partial {{\left| {Y - U \cdot A} \right|}^2}}}{{\partial A}} = - {U^T}(Y - U \cdot A) AL(A)=21AYUA2=UT(YUA)

∂ L ( A ) ∂ A = 0 \frac{{\partial L(A)}}{{\partial A}}=0 AL(A)=0,得到最优参数为:

A = ( U T ⋅ U ) − 1 ⋅ ( U T ⋅ Y ) A=\left(U^{T} \cdot U\right)^{-1} \cdot\left(U^{T} \cdot Y\right) A=(UTU)1(UTY)
算出A即可得到最终的回归方程。
这里附上通俗易懂的最小二乘法解释:link

2.梯度下降法
主要用于优化损失函数
l ( i ) ( w , b ) = 1 2 ( y ^ ( i ) − y ( i ) ) 2 l^{(i)}(\mathbf{w}, b)=\frac{1}{2}\left(\hat{y}^{(i)}-y^{(i)}\right)^{2} l(i)(w,b)=21(y^(i)y(i))2$

L ( w , b ) = 1 n ∑ i = 1 n l ( i ) ( w , b ) = 1 n ∑ i = 1 n 1 2 ( w ⊤ x ( i ) + b − y ( i ) ) 2 L(\mathbf{w}, b)=\frac{1}{n} \sum_{i=1}^{n} l^{(i)}(\mathbf{w}, b)=\frac{1}{n} \sum_{i=1}^{n} \frac{1}{2}\left(\mathbf{w}^{\top} \mathbf{x}^{(i)}+b-y^{(i)}\right)^{2} L(w,b)=n1i=1nl(i)(w,b)=n1i=1n21(wx(i)+by(i))2

迭代公式:
( w , b ) ← ( w , b ) − η ∣ B ∣ ∑ i ∈ B ∂ ( w , b ) l ( i ) ( w , b ) (\mathbf{w}, b) \leftarrow(\mathbf{w}, b)-\frac{\eta}{|\mathcal{B}|} \sum_{i \in \mathcal{B}} \partial_{(\mathbf{w}, b)} l^{(i)}(\mathbf{w}, b) (w,b)(w,b)BηiB(w,b)l(i)(w,b)
字面来讲就是,下一次迭代的代入值是函数在上一次的代入值减去在该点的导数乘以学习率
学习率。
( η \eta η): 代表在每次优化中,能够学习的步长的大小 ,一般设置小于1,批量大小( B B B): 是小批量计算中的批量大小。
不太好懂,再附一个通俗易懂的链接吧:link

2.1可视化展示梯度下降法

用一个一元函数的例子尝试一下梯度下降法找极值点:
在这里插入图片描述
每次迭代所得到的数值都会变小,越来越接近极值点。
循环迭代的效果:在这里插入图片描述
换一个方向看看结果怎么样:
在这里插入图片描述
最后还是会收敛到x=-4这个极值点

下面试一下三维的:
f ( x 1 , x 2 ) = x 1 4 + x 2 4 + 2 f(x1,x2)=x_1^4+x_2^4+2 f(x1,x2)=x14+x24+2
在这里插入图片描述
表面图像是这样的:
在这里插入图片描述
用梯度下降法求极值点:
在这里插入图片描述
效果图如下:
在这里插入图片描述
多元函数就是把自变量变成了矩阵,就可以得到上面的式子了,图没办法画,自行脑补吧。

3.最小二乘法和梯度下降法结合
最小二乘法是为了求解最优的超平面,然后用梯度下降法可以求得极值点的数值解,也就是求解最小二乘法的各个参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值