随机梯度下降求解非平滑优化:收敛结果和最优平均策略。
2016-07-07 20:32
267 查看
参考文献:Stochastic Gradient Descent for Non-smooth Optimization:
Convergence Results and Optimal Averaging Schemes
文章分析了:
- Individual SGD Iterates的收敛性。
-
对于强凸的情况,期望误差为:
O(log(T)/T)
对于一般凸的情况,期望误差为:
O(log(T)/T−−√)
算法结束后,返回最后一次迭代的结果。
- Averaging Schemes的收敛性。
-
对于强凸的情况,期望误差为:
O(1/T)
对于一般凸的情况,期望误差为:
O(1/T−−√)
算法结束后,返回多次迭代的平均结果(依据不同的算法,产生不同的平均策略)
定义:
λ−stronglyconvex :
如果对于所有的w,w′∈W,以及函数F在w处的任意梯度,下面的不等式成立:
F(w′)≥F(w)+<g,w′−w>+λ2||w′−w||2
其中,λ>0。那么,那么称函数F是λ−stronglyconvex。当λ=0时,一般的凸函数总是满足上面的不等式。
假定函数F是λ−stronglyconvex,并且对于所有的t,满足E[||g^t||2]≤G2。考虑步长为ηt=1/λt的SGD。那么对于任何T>1,满足下面的不等式:
E[F(wT)−F(w∗)]≤17G2(1+log(T)λT
理论2:
假定函数F是凸函数,并且对于某些常数:D,G,满足:
E[||g^t||2]≤G2forallt
supw,w′∈W||w=w′||≤D
考虑步长为ηt=c/t√,其中c>0是一个常数。那么对于任何的T>1,总是满足下面的不等式:
E[F(wT)−F(w∗)]≤(D2c+cG2)2+log(T)T−−√
即定义为最后αT次迭代的平均:
w¯¯¯αw=1αT∑t=(1−α)T+1Twt
缺点不能on-the-fly,需要存储后αT次的wt
2、维持所有直到t次的平均:
w¯¯¯t=(1−1t)w¯¯¯t−1+1twt
能够on-the-fly,仅获得次优的边界:O(log(t)/t.
3、polynomial−decayaveraing-作者提出的。
它具有两个优点:1、可以on-the-fly的计算,即实时的计算。2、它给出了一个最优的收敛速度。对于任意的t>1,其迭代计算公式如下:
w¯¯¯ηt=(1−η+1t+η)w¯¯¯ηt−1+η+1t+ηwt
其中w¯¯¯η1=w1,η≥0,通常η取一个比较小的数,例如η=3.
当η=0时,其变成上述的2。
理论4:
假定F是一个λ−stronglyconvex,并且E[||g^t||2]≤G2。考虑步长为ηt=1/λt和初始值为w1的SGD。同样的,我们令η≥1是一个整数。那么:
E[F(wηT)−F(w∗)≤58(1+ηT)(η(η+1)+(η+0.5)3(1+log(T))T)G2λT
即算法的更新策略为:
计算次梯度g^t
权重w更新迭代公式:
wt+1=Π(wt−ηtg^t)(1)
平均权重w¯¯¯更新迭代公式:
w¯¯¯ηt=(1−η+1t+η)w¯¯¯ηt−1+η+1t+ηwt
为了统一,上面的公式变为:
w¯¯¯ηt+1=(1−η+1t+η)w¯¯¯ηt+η+1t+ηwt+1(2)
算法终止,返回w¯¯¯t,t表示算法终止时,当前的迭代次数。
注意,公式(1)中的ηt和公式(2)中的η是完全不同的。
Convergence Results and Optimal Averaging Schemes
文章分析了:
- Individual SGD Iterates的收敛性。
-
对于强凸的情况,期望误差为:
O(log(T)/T)
对于一般凸的情况,期望误差为:
O(log(T)/T−−√)
算法结束后,返回最后一次迭代的结果。
- Averaging Schemes的收敛性。
-
对于强凸的情况,期望误差为:
O(1/T)
对于一般凸的情况,期望误差为:
O(1/T−−√)
算法结束后,返回多次迭代的平均结果(依据不同的算法,产生不同的平均策略)
定义:
λ−stronglyconvex :
如果对于所有的w,w′∈W,以及函数F在w处的任意梯度,下面的不等式成立:
F(w′)≥F(w)+<g,w′−w>+λ2||w′−w||2
其中,λ>0。那么,那么称函数F是λ−stronglyconvex。当λ=0时,一般的凸函数总是满足上面的不等式。
Individual SGD Iterates的收敛性
理论1:假定函数F是λ−stronglyconvex,并且对于所有的t,满足E[||g^t||2]≤G2。考虑步长为ηt=1/λt的SGD。那么对于任何T>1,满足下面的不等式:
E[F(wT)−F(w∗)]≤17G2(1+log(T)λT
理论2:
假定函数F是凸函数,并且对于某些常数:D,G,满足:
E[||g^t||2]≤G2forallt
supw,w′∈W||w=w′||≤D
考虑步长为ηt=c/t√,其中c>0是一个常数。那么对于任何的T>1,总是满足下面的不等式:
E[F(wT)−F(w∗)]≤(D2c+cG2)2+log(T)T−−√
Averaging Schemes的收敛性
1、α−suffixaveraging**即定义为最后αT次迭代的平均:
w¯¯¯αw=1αT∑t=(1−α)T+1Twt
缺点不能on-the-fly,需要存储后αT次的wt
2、维持所有直到t次的平均:
w¯¯¯t=(1−1t)w¯¯¯t−1+1twt
能够on-the-fly,仅获得次优的边界:O(log(t)/t.
3、polynomial−decayaveraing-作者提出的。
它具有两个优点:1、可以on-the-fly的计算,即实时的计算。2、它给出了一个最优的收敛速度。对于任意的t>1,其迭代计算公式如下:
w¯¯¯ηt=(1−η+1t+η)w¯¯¯ηt−1+η+1t+ηwt
其中w¯¯¯η1=w1,η≥0,通常η取一个比较小的数,例如η=3.
当η=0时,其变成上述的2。
理论4:
假定F是一个λ−stronglyconvex,并且E[||g^t||2]≤G2。考虑步长为ηt=1/λt和初始值为w1的SGD。同样的,我们令η≥1是一个整数。那么:
E[F(wηT)−F(w∗)≤58(1+ηT)(η(η+1)+(η+0.5)3(1+log(T))T)G2λT
即算法的更新策略为:
计算次梯度g^t
权重w更新迭代公式:
wt+1=Π(wt−ηtg^t)(1)
平均权重w¯¯¯更新迭代公式:
w¯¯¯ηt=(1−η+1t+η)w¯¯¯ηt−1+η+1t+ηwt
为了统一,上面的公式变为:
w¯¯¯ηt+1=(1−η+1t+η)w¯¯¯ηt+η+1t+ηwt+1(2)
算法终止,返回w¯¯¯t,t表示算法终止时,当前的迭代次数。
注意,公式(1)中的ηt和公式(2)中的η是完全不同的。
相关文章推荐
- java基础学习总结——equals方法
- 【排序算法】-堆排序
- 恶心的XML之"根级别上的数据无效。 第 1 行,位置 1"
- OpenGL(二)图形绘制之多边形面的绘制
- 编译caffe遇到的问题汇总
- 剑指offer--4.重建二叉树
- 90%汽车业创新来自电子业,九大IC原厂畅谈产业趋势
- 新公司去国税办理发票业务
- java基础学习总结——Object类
- How to Build RecastNavigation with VC2015
- RecyclerView解析
- linux课堂笔记3
- Linux下编译安装Apache、php和svn
- 【水】基于ege的简单3D模拟
- linux安装IDEA
- Reac Native-UI组件的封装
- Missing Number
- 【NOIP2000】方格取数
- js实现图片切换轮播终极版
- lattice diamond fpga 状态机的理解