使用梯度下降与牛顿法求解最小平方和问题

问题

已知:
hW(X)=nj=1wjxj+wn+1=n+1j=1wjxj=XW, h W ( X ) = ∑ j = 1 n w j x j + w n + 1 = ∑ j = 1 n + 1 w j x j = X ⊺ W ,
其中 W=w1wnwn+1,X=x1xn1 W = ( w 1 ⋮ w n w n + 1 ) , X = ( x 1 ⋮ x n 1 )
X=X1Xm,Y=y1ym, X = ( X 1 ⊺ ⋮ X m ⊺ ) , Y = ( y 1 ⋮ y m ) ,
L(W)=12mi=1[hW(Xi)yi]2=12mi=1(XiWyi)2 L ( W ) = 1 2 ∑ i = 1 m [ h W ( X i ) − y i ] 2 = 1 2 ∑ i = 1 m ( X i ⊺ W − y i ) 2
=12XWY22=12(XWY)(XWY) = 1 2 ‖ X W − Y ‖ 2 2 = 1 2 ( X W − Y ) ⊺ ( X W − Y )
minL(W) min L ( W )

梯度下降法

dL(W)=d[12(XWY)(XWY)]=(XWY)d(XWY)=(XWY)XdW d ⁡ L ( W ) = d ⁡ [ 1 2 ( X W − Y ) ⊺ ( X W − Y ) ] = ( X W − Y ) ⊺ d ⁡ ( X W − Y ) = ( X W − Y ) ⊺ X d ⁡ W
因此 L(W)=[(XWY)X]=X(XWY)=XXWXY ∇ L ( W ) = [ ( X W − Y ) ⊺ X ] ⊺ = X ⊺ ( X W − Y ) = X ⊺ X W − X ⊺ Y
ΔW=ϵf(W0), Δ W = − ϵ ∇ f ( W 0 ) ,
于是可取 W1=W0+ΔW=W0ϵf(W0)=W0ϵ(XXW0XY) W 1 = W 0 + Δ W = W 0 − ϵ ∇ f ( W 0 ) = W 0 − ϵ ( X ⊺ X W 0 − X ⊺ Y )

牛顿法

dL(W)=d[XXWXY]=XXdW d ⁡ ∇ L ( W ) = d ⁡ [ X ⊺ X W − X ⊺ Y ] = X ⊺ X d ⁡ W
因此 HL(W)=XX H L ( W ) = X ⊺ X
g(ΔW)=f(W0+ΔW)=f(x0)+[f(W0)]ΔW+12(ΔW)Hf(W0)ΔW g ( Δ W ) = f ( W 0 + Δ W ) = f ( x 0 ) + [ ∇ f ( W 0 ) ] ⊺ Δ W + 1 2 ( Δ W ) ⊺ H f ( W 0 ) ⁡ Δ W
dg(ΔW)=[f(W0)]d(ΔW)+(ΔW)Hf(W0)d(ΔW)={[f(W0)]+(ΔW)Hf(W0)}d(ΔW) d ⁡ g ( Δ W ) = [ ∇ f ( W 0 ) ] ⊺ d ⁡ ( Δ W ) + ( Δ W ) ⊺ H f ( W 0 ) ⁡ d ⁡ ( Δ W ) = { [ ∇ f ( W 0 ) ] ⊺ + ( Δ W ) ⊺ H f ( W 0 ) } d ⁡ ( Δ W )
因此 g(ΔW)=f(W0)+Hf(W0)ΔW ∇ g ( Δ W ) = ∇ f ( W 0 ) + H f ( W 0 ) ⁡ Δ W
g(ΔW)=0⃗ , ∇ g ( Δ W ) = 0 → ,
ΔW=(Hf(W0))1f(W0) Δ W = − ( H f ( W 0 ) ) − 1 ∇ f ( W 0 )
于是可取 W1=W0+ΔW=W0(Hf(W0))1f(W0) W 1 = W 0 + Δ W = W 0 − ( H f ( W 0 ) ) − 1 ∇ f ( W 0 )
=W0(XX)1(XXW0XY)=W0W0+(XX)1XY = W 0 − ( X ⊺ X ) − 1 ( X ⊺ X W 0 − X ⊺ Y ) = W 0 − W 0 + ( X ⊺ X ) − 1 X ⊺ Y
=(XX)1XY = ( X ⊺ X ) − 1 X ⊺ Y
因此 minL(W)=L(W1)=X(XX)1XYY=(X(XX)1XI)Y min L ( W ) = L ( W 1 ) = X ( X ⊺ X ) − 1 X ⊺ Y − Y = ( X ( X ⊺ X ) − 1 X ⊺ − I ) Y

梯度的另一种求法

L(W)=12mi=1[hW(Xi)yi]2 L ( W ) = 1 2 ∑ i = 1 m [ h W ( X i ) − y i ] 2
Lwj=mi=1[hW(Xi)yi]hW(Xi)wj=mi=1[hW(Xi)yi]xij ∂ L ∂ w j = ∑ i = 1 m [ h W ( X i ) − y i ] ∂ h W ( X i ) ∂ w j = ∑ i = 1 m [ h W ( X i ) − y i ] x i j
=mi=1(XiWyi)xij=(XWY)X:j = ∑ i = 1 m ( X i ⊺ W − y i ) x i j = ( X W − Y ) ⊺ X : j
因此 L(W)=X(XWY)=XXWXY ∇ L ( W ) = X ⊺ ( X W − Y ) = X ⊺ X W − X ⊺ Y

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值