Mini-Batch梯度下降算法

自2017年AlphaGo问世以来,深度学习如火如荼,尤其是在计算机视觉,自然语言处理领域都取得了非凡的进展。然而,深度学习依赖大量的样本,否则容易出现过拟合现象。既然是大量样本,那么对算力有相当的要求。要么硬件更强,要么算法收敛更快。下面介绍一种较快的优化算法–Mini-Batch梯度下降。
min ⁡ w ∈ R d E ξ [ F ( w , ξ ) ] + g ( w ) \min_{w\in\mathbb{R}^{d}} E_{\xi}[F(w,\xi)]+g(w) minwRdEξ[F(w,ξ)]+g(w)
算法:Mini-Batch梯度下降

输入: w 1 ∈ R d w^{1}\in \mathbb{R}^{d} w1Rd,

R ∼ u n i f o r m { 1 , 2 , ⋯   , N } R\sim uniform \{1,2,\cdots,N\} Runiform{1,2,,N}
for k = 1 , 2 , ⋯   , R − 1 k=1,2,\cdots,R-1 k=1,2,,R1
ζ λ ( w k ) ∈ p r o x λ g ( w k ) \zeta^{\lambda}(w^{k})\in prox_{\lambda g}(w^{k}) ζλ(wk)proxλg(wk)
Sample ξ k ∼ P M \xi^{k}\sim P^{M} ξkPM
∇ A λ M k ( w k , ξ k ) = 1 M ∑ j = 1 M ∇ F ( w k , ξ k ) + 1 λ ( w k − ζ λ ( w k ) ) \nabla A^{k}_{\lambda M}(w^{k},\xi^{k})=\frac{1}{M}\sum_{j=1}^{M}\nabla F(w^{k},\xi^{k})+\frac{1}{\lambda}(w^{k}-\zeta^{\lambda}(w^{k})) AλMk(wk,ξk)=M1j=1MF(wk,ξk)+λ1(wkζλ(wk))
w k + 1 = w k − γ ∇ A λ M k ( w k , ξ k ) w^{k+1}=w^{k}-\gamma \nabla A^{k}_{\lambda M}(w^{k},\xi^{k}) wk+1=wkγAλMk(wk,ξk)
end for
输出: w ˉ R ∈ p r o x λ g ( w R ) \bar{w}^{R}\in prox_{\lambda g}(w^{R}) wˉRproxλg(wR)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值