1 过拟合

参考链接:
机器学习中用来防止过拟合的方法有哪些
Normalization方法:BN,LN 等
L1 与 L2 正则化的区别
2 线性回归优化方法
优化方法:
-
梯度下降法
-
最小二乘法(公式法)

-
牛顿法
-
拟牛顿法
2.1 牛顿法
牛顿法推导:
将f(x)用泰勒公式展开到二阶,
f(xt+1)=f(xt)+f′(xt)(xt+1−xt)+21f′′(xt)(xt+1−xt)2
对上式求导,并令导数等于0,求得x值
f′(xt+1)=f′(xt)+f′′(xt)xt+1−f′′(xt)xt=0
可以求得,迭代公式为:
xt+1=xt−f′′(xt)f′(xt)
推广到向量的情况,牛顿法公式为:
θ:=θ−l′′(θ)l′(θ)
当θ是向量值的时候,θ:=θ−H−1Δθl(θ)
其中,Δθl(θ)是l(θ)对θi的偏导数,H是J(θ)的海森矩阵,
Hij=∂θi∂θj∂2l(θ)

牛顿法优缺点:
- 收敛速度快,比梯度下降法迭代次数少很多
- 每次迭代都需要计算海森矩阵,计算较复杂,耗费计算成本
2.2 拟牛顿法
拟牛顿法的思路是用一个矩阵替代计算复杂的海森矩阵H,因此要找到符合H性质的矩阵。
要求得海森矩阵符合的条件,同样对泰勒公式求导f′(x)=f′(x0)+f′′(x0)x−f′′(x0)x0
令x=x1,即迭代后的值,代入可得:
f′(x1)=f′(x0)+f′′(x0)x1−f′′(x0)x0
更一般的,
f′(xk+1)=f′(xk)+f′′(xk)xk+1−f′′(xk)xk
f′(xk+1)−f′(xk)=f′′(xk)(xk+1−xk)=H(xk+1−xk)
xk为第k个迭代值
即找到矩阵G,使得它符合上式。
常用的拟牛顿法的算法包括DFP,BFGS等。
参考链接
拟牛顿法常用的算法DFP,BFGS等