优化方法

牛顿法、拟牛顿法与梯度下降法

牛顿法
在这里插入图片描述
基于当前位置的切线来确定下一次的位置,所以牛顿法又被很形象地称为是"切线法"
优点:二阶收敛,收敛速度快
实际应用中牛顿法首先选择一个点作为起始点,并进行一次二阶泰勒展开得到导数为0的点进行一个更新,直到达到要求,这时牛顿法也就成了二阶求解问题,比一阶方法更快。
缺点:是一种迭代算法,每一步都需要求解目标函数的Hessian矩阵的逆矩阵,计算比较复杂。定长迭代,没有步长因子
Hessian矩阵:x通常为一个多维向量,而Hessian矩阵就是x的二阶导数矩阵

拟牛顿法
求解非线性优化问题最有效的方法之一
本质:改善牛顿法每次需要求解复杂的Hessian矩阵的逆矩阵的缺陷,它使用正定矩阵来近似Hessian矩阵的逆,从而简化了运算的复杂度
改善牛顿法的方法:不用二阶偏导而是构造出Hession矩阵的近似正定对称矩阵
常用的拟牛顿法有DFP(逼近Hession的逆)算法、BFGS(直接逼近Hession矩阵)算法、L-BFGS(可以减少BFGS所需的存储空间)

梯度下降法
在这里插入图片描述
1、梯度下降法(GD)
每次使用全部数据集进行训练
优点:得到的是最优解
缺点:运行速度慢,内存可能不够

2、随机梯度下降法(SGD)
每次计算只是用一个样本

  • 避免在类似样本上计算梯度造成的冗余计算
  • 训练速度快
  • 增加了跳出当前局部最小值的潜力
  • 缺点:容易震荡,可能达不到最优解

3、小批量随机梯度下降法(Mini Batch SGD)注:神经网络训练的文献中中经常把Mini Batch 称为SGD
每次梯度计算使用一个小批量样本

  • 优点:训练速度快,无内存问题,震荡较少
  • 缺点:可能达不到最优解

正则化

一般的目标函数
O b j ( Θ ) = L ( Θ ) + Ω ( Θ ) Obj(\Theta)=L(\Theta)+\Omega(\Theta) Obj(Θ)=L(Θ)+Ω(Θ)
其中 L ( Θ ) L(\Theta) L(Θ)是模型的误差损失函数; Ω ( Θ ) \Omega(\Theta) Ω(Θ)是正则化项,也是模型的惩罚项
为什么要添加正则化项?
正则化项的添加主要用来惩罚模型,一般来说,仅仅是通过误差损失来衡量模型好坏不是一个好的方法,因为会出现过拟合;增加一个正则化项就是为了防止出现过拟合
当模型的误差损失低,而且模型复杂度高(可以看作是模型参数过多),这时便容易出现过拟合,正则化项的出现,就是对于这些参数进行惩罚,也就是参数越多,惩罚越厉害,导致的结果是整体的目标函数值升高,缓解过拟合;而当模型复杂度低时,惩罚小,适于拟合函数模型;

L1正则与L2正则
正则化项的不同,可以有L1正则和L2正则

L1L2
∣ ∣ w ∣ ∣ 1 \vert \vert w\vert\vert _1 w1 ∣ ∣ w ∣ ∣ 2 2 {\vert \vert w\vert\vert _2}^2 w22
Lasso回归Ridge回归
权值向量中各个元素绝对值之和权值向量中各个元素平方和,再求平方根
稀疏模型平滑模型
拉普拉斯高斯分布

关于稀疏模型与平滑模型的解释,参考:https://www.julyedu.com/question/big/kp_id/23/ques_id/988

在这里插入图片描述
在这里插入图片描述

参考文献:
https://www.julyedu.com/question/big/kp_id/23/ques_id/988

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值