[ML Notes] 线性回归:梯度下降
对如前文所述的线性模型 f(x) 和代价函数 J(w)
f(x)=wTx
J(w)=12m∑i=1(y(i)–f(x(i)))2
使用梯度下降来最小化 J(w),是计算 w 的另一种方式。此时需要对 w 进行迭代更新
wj:=wj–α∂∂wjJ(w)
其中 wj 为第 j 个权重参数,j=1,2,⋯,n,α 为学习率。
由式 (2),对于单个样本 (x,y),有
∂∂wjJ(w)=∂∂wj12(y–f(x))2=(y–f(x))⋅∂∂wj(y–f(x))=(y–f(x))⋅∂∂wj(y–n∑i=0wixi)=(f(x)–y)xj
由此得到针对单个样例的更新规则为
wj:=wj–α(f(x)–y)xj
对全部 m 个样本,梯度下降按下面的更新规则迭代直至收敛
wj:=wj–αm∑i=1(f(x(i))–y(i))x(i)j
上式也可以写为向量的形式
w:=w–αm∑i=1(f(x(i))–y(i))x(i)