基于1/t-Polyak步长的随机控制的随机梯度算法
1/t-Polyak Stepsize for the Stochastically Controlled Stochastic Gradient Algorithm
DOI: 10.12677/aam.2024.133095, PDF, HTML, XML, 下载: 24  浏览: 41 
作者: 刘晨晨:河北工业大学理学院,天津
关键词: 有限和优化随机算法方差缩减1/t-带步长Finite-Sum Optimization Stochastic Algorithms Variance Reduction 1/t-Band Stepsize
摘要: 随机梯度下降算法已成为求解大规模有限和优化问题的流行算法,然而,由于其在迭代过程中会产生方差,导致了振荡现象。随机控制的随机梯度(SCSG)算法缩减了该方差,但SCSG算法对于步长有较强的限制。为了扩大SCSG算法的步长选择范围,基于1/t-带步长与Polyak步长,提出1/t-Polyak步长,并将其与SCSG算法结合,提出SCSGP算法。建立了SCSGP算法在强凸条件下的线性收敛性,数值实验表明SCSGP算法与其他随机梯度类算法相比有明显优势。
Abstract: The stochastic gradient descent algorithm has become popular algorithm for solving large-scale finite-sum optimization problems. However, this algorithm leads to oscillations due to the variance in the iterative process. The stochastically controlled stochastic gradient (SCSG) algorithm reduces this variance, but the SCSG algorithm has strong limit on stepsize. To expand the range of stepsize selection of the SCSG algorithm, we propose 1/t-Polyak stepsize by combining the 1/t-band stepsize and the Polyak stepsize. Using this new stepsize for the stochastically controlled stochastic gradient (SCSG) algorithm, the SCSGP algorithm is proposed. We establish the linear convergence rate of SCSGP for strongly convex problems. Numerical experiments demonstrate a clear advantage of SCSGP over other stochastic gradient algorithms.
文章引用:刘晨晨. 基于1/t-Polyak步长的随机控制的随机梯度算法[J]. 应用数学进展, 2024, 13(3): 1008-1017. https://doi.org/10.12677/aam.2024.133095

1. 引言

考虑有限和优化问题:

min x d f ( x ) = 1 n i = 1 n f i ( x ) (1)

其中分量函数 f i ( x ) 连续可微,假设 f ( x ) 是强凸的。机器学习中满足条件的优化问题有很多,例如带 l 2 正则项的逻辑回归问题和带 l 2 正则项的最小平方回归问题等 [1] [2] [3] 。

当数据规模过大时,随机梯度下降(SGD)算法 [4] 是求解问题(1)的主流算法,即用随机梯度估计全梯度,其迭代格式为

x t + 1 = x t η t f i t ( x t )

其中 η t > 0 是步长, f i t ( x t ) 是分量函数 f i t ( x ) x t 处的梯度。随机梯度 f i t ( x t ) 与全梯度 f ( x t ) 之间的方差导致SGD即使在强凸条件下,也只能达到次线性收敛速度 [5] 。方差缩减梯度(SVRG)算法 [6] 通过内外两层循环达到缩减方差的目的,但由于其在外循环中需要计算全梯度且内循环次数较大,导致数据规模过大时计算量大。为了改善这个问题,SCSG [7] 令内循环次数服从几何分布且在外循环中计算批量梯度

g ˜ = 1 | I t | i I t f i ( x ˜ )

其中 I t [ n ] | I t | I t 的批量大小, x ˜ 为在外循环中设置的快照点。在内循环中,SCSG用与SVRG相同的格式更新梯度估计量:

g t = f i t ( x t ) f i t ( x ˜ ) + g ˜

在强凸条件下,其使用固定批量可线性收敛到解的邻域。SCSG适用于求解大规模 n [ 10 4 , 10 9 ] 、低精度 ε [ 10 4 , 10 2 ] 的优化问题 [7] [8] [9] ,可以经过很少的有效循环次数收敛到上述目标精度。

步长是保证随机梯度类算法收敛的关键因素,很小的常数步长和衰减步长都会使算法收敛缓慢,并且手动调整常数步长的过程相当耗时 [10] [11] [12] 。Polyak步长 [13] 利用迭代过程中产生的函数值和梯度自动地计算步长,避免了手动调整的过程,其计算公式为

η t = 2 f ( x t ) f * f ( x t ) 2

其中 f * f ( x ) 的极小值。为了将Polyak步长与随机梯度类算法结合,Loizou等人 [14] 提出Polyak步长的随机版本(SPS):

η t = 2 f i t ( x t ) f i t * f i t ( x t ) 2

其中 f i t * f i t ( x ) 的极小值。SGD结合SPS步长比结合固定步长数值表现好。当SPS步长中 f i t * 不易求解时,可用一个下界 l i t * f i t * 来替换 [15] 。最近,Wang等人 [16] 介绍了1/t-带步长,其允许步长在一定范围内扰动,具体格式为

m t η t M t t 1

其中 m M 是正常数。显然,衰减步长 η t = η 0 / t 是1/t-带步长的特殊情况。

受1/t-带步长和Polyak步长启发提出1/t-Polyak步长,并将其与SCSG结合提出新的算法——SCSGP。在强凸光滑的条件下,SCSGP结合变化的批量可达到线性收敛速度。数值实验结果表明SCSGP比SCSG及其他随机梯度类算法表现好。

论文其余部分概括如下:在第2部分中提出1/t-Polyak步长并描述SCSGP算法。收敛性分析在第3部分。在第4部分中设置了数值实验。最后在第5部分进行总结。

2. 1/t-Polyak步长与SCSGP算法

首先,利用Polyak步长的随机版本并将其与1/t-带步长结合,提出1/t-Polyak步长:

η t = { m / t , η ¯ t P m / t ; η ¯ t P , m / t < η ¯ t P < M / t ; M / t , η ¯ t P M / t , (2)

其中 η ¯ t P 形式如下:

η ¯ t P = c B f I t ( x ˜ t 1 ) l I t * f I t ( x ˜ t 1 ) 2

其中 l I t * 为批量函数 f I t ( x ) 的极小值, c B 用于调整步长的范围,由用户给定。对于一些非负的损失函数,根据批量函数的定义可取 l I t * = 0 。结合1/t-Polyak步长和SCSG算法提出SCSGP算法,见算法1。

在SCSGP算法的第t次外循环中,内循环次数 N t ~ G e o m ( γ t ) 是非负的几何随机变量,其概率分布为 P ( N t = k ) = γ t k ( 1 γ t k ) k = 0 , 1 , 。值得注意的是,SCSG中 γ t 取固定值,但在SCSGP中 γ t 随迭代次数变化。若 γ t = B t / ( B t + b t ) ,则有

Ε N t ~ G e o m ( γ t ) = γ t 1 γ t = B t b t

其中 Ε N t 记为对 N t 取期望。该性质在后续分析中起到重要作用。另外不难发现 v k ( t ) 是梯度估计量 f ( x k ) 的有偏估计:

Ε I ˜ k v k ( t ) = f ( x k ( t ) ) f ( x ˜ t 1 ) + f I t ( x ˜ t 1 ) = f ( x k ( t ) ) + e t (3)

其中 e t = f I t ( x ˜ t 1 ) f ( x ˜ t 1 )

3. 收敛性分析

由于几何随机变量 N t 在收敛分析中占据重要地位,需要给出下面关键的引理。

引理1 [8] 由于 N t ~ G e o m ( γ t ) ,其中 γ t > 0 ,则对任意满足 Ε | D N t | < 的序列 { D n }

Ε ( D N t D N t + 1 ) = ( 1 γ t 1 ) ( D 0 Ε D N t )

其中E记为对所有随机变量取期望。

γ = min t γ t ,则对任意 t [ T ]

E ( D N t D N t 1 ) ( 1 γ 1 ) ( D 0 Ε D N t ) (4)

为了应用(3),需要证明用到的相关序列 { D n } 满足 Ε | D N t | < 。下面引理保证了该性质。

引理2 假设 f i ( x ) 是L-光滑的,令 M L t 1 3 ( b t B t ) 2 / 3 B t 8 b t ,则对任意 t 1 Ε x ˜ t x ˜ t 1 2 <

Ε [ f ( x ˜ t ) f * ] < Ε f ( x ˜ t ) 2 < Ε | e t , x ˜ t x ˜ t 1 | < Ε | e t , f ( x ˜ t ) | <

证明:因为 f i ( x ) 是L-光滑的和(3),可得

Ε I ˜ k f ( x k + 1 ( t ) ) f ( x k ( t ) ) η t Ε I ˜ k v k ( t ) , f ( x k ( t ) ) + L η t 2 2 Ε I ˜ k v k ( t ) 2 = f ( x k ( t ) ) η t f ( x k ( t ) ) 2 η t e t , f ( x k ( t ) ) + L η t 2 2 Ε I ˜ k v k ( t ) 2 f ( x k ( t ) ) η t ( 1 L η t ) f ( x k ( t ) ) 2 η t e t , f ( x k ( t ) ) + L 3 η t 2 2 b t x k ( t ) x 0 ( t ) 2 + L η t 2 e t 2 , (5)

其中最后一个不等式利用了 [8] 中引理B.2。由于对任意 c > 0 2 a , b a 2 c + c b 2 ,令 c = 2 ,则有

η t e t , f ( x k t ) 1 4 η t f ( x k ( t ) ) 2 + η t e t 2 (6)

因为 η t M t M L t 1 3 ( b t B t ) 2 / 3 B t 8 b t ,可知 3 4 L η t > 0 。由(5)和(6)得到

f ( x k ( t ) ) 2 1 η t ( 3 4 L η t ) ( f ( x k ( t ) ) Ε I ˜ k f ( x k + 1 ( t ) ) ) + 1 + L η t 3 4 L η t e t 2 + L 3 η t 2 b t ( 3 4 L η t ) x k ( t ) x 0 ( t ) 2 . (7)

注意到 x k + 1 ( t ) = x k ( t ) η t v k ( t ) ,用类似(5)的推导过程可得

Ε I ˜ k x k + 1 ( t ) x 0 ( t ) 2 = x k ( t ) x 0 ( t ) 2 2 η t Ε I ˜ k v k ( t ) , x k ( t ) x 0 ( t ) + η t 2 Ε I ˜ k v k ( t ) 2 = x k ( t ) x 0 ( t ) 2 2 η t f ( x k ( t ) ) , x k ( t ) x 0 ( t ) 2 η t e t , x k ( t ) x 0 ( t ) + η t 2 Ε I ˜ k v k ( t ) 2 ( 1 + η t 2 L 2 b t ) x k ( t ) x 0 ( t ) 2 2 η t f ( x k ( t ) ) , x k ( t ) x 0 ( t ) 2 η t e t , x k ( t ) x 0 ( t ) + 2 η t 2 f ( x k ( t ) ) 2 + 2 η t 2 e t 2 . (8)

再次使用 2 a , b a 2 c + c b 2 并取 c = b t 8 η t 2 B t ,则有

2 η t f ( x k ( t ) ) , x k ( t ) x 0 ( t ) 8 η t 2 B t b t f ( x k ( t ) ) 2 + b t 8 B t x k ( t ) x 0 ( t ) 2

2 η t e t , x k ( t ) x 0 ( t ) 8 η t 2 B t b t e t 2 + b t 8 B t x k ( t ) x 0 ( t ) 2

将上述不等式和(7)代入(8)得到

Ε I ˜ k x k + 1 ( t ) x 0 ( t ) 2 ( 1 + b t 4 B t + 3 η t 2 L 2 / 2 + 8 η t 3 L 3 B t / b t 2 b t ( 3 / 4 η t L ) ) x k ( t ) x 0 ( t ) 2 + ( 2 η t 2 + 8 η t 2 B t b t ) ( 1 + 1 + η t L 3 / 4 η t L ) e t 2 + 2 η t + 8 η t B t / b t 3 / 4 η t L ( f ( x k ( t ) ) Ε I ˜ k f ( x k + 1 ( t ) ) ) . (9)

η t L 1 3 ( b t B t ) 2 / 3 B t 8 b t 可得

3 η t 2 L 2 / 2 + 8 η t 3 L 3 B t / b t 2 b t ( 3 / 4 η t L ) ( 1 / 6 ) × ( b t / B t ) 4 / 3 + ( 8 / 27 ) × ( b t / B t ) 2 b t ( 3 / 4 ( 1 / 3 ) × ( b t / B t ) 2 / 3 ) 1 / 12 B t + 8 / 27 B t 2 ( 3 / 4 1 / 12 ) = 41 144 B t 7 b t 24 B t .

结合上式和(9)有

Ε I ˜ k x k + 1 ( t ) x 0 ( t ) 2 ( 1 + b t 4 B t + 7 b t 24 B t ) x k ( t ) x 0 ( t ) 2 + ( 2 + 8 B t b t ) ( 1 + 1 + ( 1 / 3 ) × ( b t / B t ) 2 / 3 3 / 4 ( 1 / 3 ) × ( b t / B t ) 2 / 3 ) η t 2 e t 2 + 2 η t + 8 η t B t / b t 3 / 4 ( 1 / 3 ) × ( b t / B t ) 2 / 3 ( f ( x k ( t ) ) Ε I ˜ k f ( x k + 1 ( t ) ) ) ( 1 + 13 b t 24 B t ) x k ( t ) x 0 ( t ) 2 + ( 21 4 + 21 B t b t ) η t 2 e t 2 + ( 3 + 12 B t b t ) η t ( f ( x k ( t ) ) Ε I ˜ k f ( x k + 1 ( t ) ) ) . (10)

为了证明 Ε [ f ( x k ( t ) ) f * ] Ε x k + 1 ( t ) x 0 ( t ) 2 的上界,记

G k ( t ) = ( 3 + 12 B t b t ) η t Ε [ f ( x k ( t ) ) f * ] + Ε x k ( t ) x 0 ( t ) 2 .

对(10)取全期望得到

G k + 1 ( t ) G k ( t ) + 13 b t 24 B t Ε x k ( t ) x 0 ( t ) 2 + ( 21 4 + 21 B t b t ) η t 2 Ε e t 2 ( 1 + 13 b t 24 B t ) ( G k ( t ) + ( 21 4 + 21 B t b t ) η t 2 Ε e t 2 ) ( 1 + 13 b t 24 B t ) k ( G 0 ( t ) + ( 21 4 + 21 B t b t ) η t 2 Ε e t 2 ) .

N t ~ G e o m ( B t B t + b t ) 可得

P ( N t = k ) = b t B t + b t ( B t B t + b t ) k ( B t B t + b t ) k ,

Ε ( 1 + 13 b t 24 B t ) N t k 0 ( 24 B t + 13 b t 24 B t ) k ( B t B t + b t ) k = k 0 ( 24 B t + 13 b t 24 B t + 24 b t ) k = 24 B t + 24 b t 11 b t .

于是有

Ε G N t ( t ) 24 B t + 24 b t 11 b t ( G 0 ( t ) + ( 21 4 + 21 B t b t ) η t 2 Ε e t 2 ) ,

( 3 + 12 B t b t ) η t Ε [ f ( x N t ( t ) ) f * ] + Ε x N t ( t ) x 0 ( t ) 24 B t + 24 b t 11 b t ( ( 3 + 12 B t b t ) η t Ε [ f ( x 0 ( t ) ) f * ] + ( 21 4 + 21 B t b t ) η t 2 Ε e t 2 ) .

分别用 x ˜ t 替换 x N t ( t ) ,用 x ˜ t 1 替换 x 0 ( t ) ,由 [8] 中引理B.3得到 Ε e t 2 < ,这表明 Ε x ˜ t x ˜ t 1 2 < Ε [ f ( x ˜ t ) f * ] < 。由(7)可知 Ε f ( x ˜ t ) 2 < 。利用 2 a , b a 2 c + c b 2 可得 Ε | e t , x ˜ t x ˜ t 1 | <

Ε | e t , f ( x ˜ t ) | < 。结论得证。

现在分析强凸条件下SCSGP的线性收敛速度。

定理1 假设 f i ( x ) 是L-光滑的且 f ( x ) μ -强凸的,令 b t = t 1 / 2 B t = B 0 t 3 / 2 ,则

Ε [ f ( x ˜ T ) f * ] c 0 T Δ f + 15 M Η * 8 μ m B 0 J ( B t < n ) ,

其中 c 0 = 3 3 + 2 μ m B 0 Δ f = f ( x ˜ 0 ) f * Η * = sup x 1 n i = 1 n f i ( x ) f ( x ) J ( B t < n ) = { 1 , B t < n ; 0 , .

证明:由 [8] 中引理B.3和等式(20)得到

η t B t b t ( 2 2 b t B t 2 η t L b t 3 b t 3 η t 2 L 2 b t B t η t 3 L 3 B t 2 ) Ε f ( x ˜ t ) 2 2 Ε [ f ( x ˜ t 1 ) f ( x ˜ t ) ] + 2 η t b t ( 1 + η t L + b t B t ) Η * J ( B t < n ) . (11)

m t η t M t M L t 1 3 ( b t B t ) 2 / 3 B t 8 b t 可得

2 2 b t B t 2 η t L b t 3 b t 3 η t 2 L 2 b t B t η t 3 L 3 B t 2 2 2 b t B t 2 M L t t 3 b t 3 t 3 b t 3 M 2 t L 2 b t B t M 3 L 3 B t 2 2 2 × 1 8 2 × 1 3 × 1 4 1 1 1 / ( 18 b t ) 1 / ( 27 b t ) 73 108 2 3 ,

其中第三个不等式用了 b t 1 。另外,

1 + η t L + b t B t 1 + M L t + b t B t 1 + 1 12 + 1 8 = 29 24 5 4

将上述两个系数代入(11),并再次使用 m t η t M t 得到

B t t b t Ε f ( x ˜ t ) 2 3 m Ε [ f ( x ˜ t 1 ) f ( x ˜ t ) ] + 15 M 4 m t b t Η * J ( B t < n ) . (12)

因为f是 μ -强凸的,可得

μ 2 x ˜ t x * f ( x ˜ t ) , x ˜ t x * + f * f ( x ˜ t ) f ( x ˜ t ) 2 2 μ + μ x ˜ t x * 2 2 + f * f ( x ˜ t ) ,

其中第二个不等式利用了 2 a , b a 2 c + c b 2 。重新整理上式得

f ( x ˜ t ) 2 2 μ ( f ( x ˜ t ) f * ) .

将上式代入(12)得到

( 3 t b t + 2 μ m B t ) Ε [ f ( x ˜ t ) f * ] 3 t b t Ε [ f ( x ˜ t 1 ) f * ] + 15 4 M Η * J ( B t < n ) .

替换 b t = t 1 / 2 B t = B 0 t 3 / 2 ,然后两边同除 3 t 3 / 2 + 2 μ m B 0 t 3 / 2 可得

Ε [ f ( x ˜ t ) f * ] ( 3 3 + 2 μ m B 0 ) Ε [ f ( x ˜ t 1 ) f * ] + 15 M Η * J ( B t < n ) 4 ( 3 + 2 μ m B 0 ) t 3 / 2 ( 3 3 + 2 μ m B 0 ) Ε [ f ( x ˜ t 1 ) f * ] + 15 M Η * J ( B t < n ) 4 ( 3 + 2 μ m B 0 ) .

其中最后一个不等式成立是因为 t 1 。上式可以写为

Ε [ f ( x ˜ t ) f * ] 15 M Η * J ( B t < n ) 8 μ m B 0 ( 3 3 + 2 μ m B 0 ) ( Ε [ f ( x ˜ t 1 ) f * ] 15 M Η * J ( B t < n ) 8 μ m B 0 ) . (13)

t = T , , 1 时的(13)累加求和得到

Ε [ f ( x ˜ t ) f * ] 15 M Η * J ( B t < n ) 8 μ m B 0 ( 3 3 + 2 μ m B 0 ) T ( Ε [ f ( x ˜ 0 ) f * ] 15 M Η * J ( B t < n ) 8 μ m B 0 ) c 0 T Δ f . (14)

重新整理(14),证毕。

4. 数值实验

Figure 1. Comparison of different stochastic gradient algorithms

图1. 不同随机梯度类算法的对比

考虑正则化的逻辑回归问题

f ( x ) = 1 n i = 1 n log ( 1 + exp ( b i a i T x ) ) + 1 2 n x 2 ,

其中 { ( a i , b i ) } i = 1 n d × { 1 , 1 } 是给定的训练集。 [7] 中指出内循环次数 N t 取期望值有助于增加SCSG算法的稳定性,且从 I t 中选取 I ˜ k 可以减小计算代价,所以在实验中设置 N t = B t / b t (几何随机变量 N t 的期望)且从 I t 中选取 I ˜ k ,其中 记为向下取整。为了验证SCSGP的有效性,比较SCSGP、SCSG、SVRG、SVRGBB和SGD。具体地,SVRG中设置小批量 b t 1 ;SCSG设置 B t 0.05 n b t 1 N t = B t / b t ;SCSGP设置 B t = B 0 t 3 / 2 n b t = t 1 / 2 n N t = B t / b t 表1给出LIBSVM (网址: https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/)中四个标准数据集的信息。用表2的参数值进行对比实验,最优间隙随有效循环次数变化情况见图1。SCSGP明显比SCSG表现好,并且在前几个有效循环次数中,SCSGP与其它随机梯度类算法相比具有更好的数值结果。

Table 1. The information of data sets

表1. 数据集信息

Table 2. Parameters used for experiments

表2. 实验中的参数设置

5. 总结

基于Polyak步长和1/t-带步长提出1/t-Polyak步长,并将该步长与SCSG结合提出SCSGP算法。当目标函数强凸光滑时,SCSGP线性收敛。数值实验考虑正则化的逻辑回归问题,实验结果表明在前几个有效循环次数中SCSGP比其他随机梯度类算法表现好。

参考文献

[1] Kasiviswanathan, S.P. and Jin, H. (2016) Efficient Private Empirical Risk Minimization for High-Dimensional Learning. International Conference on Machine Learning, 48, 488-497.
[2] Krizhevsky, A., Sutskever, I. and Hinton, G.E. (2017) Imagenet Classification with Deep Convolutional Neural Networks. Communications of the ACM, 60, 84-90.
https://doi.org/10.1145/3065386
[3] Sutskever, I., Martens, J., Dahl, G., et al. (2013) On the Importance of Initialization and Momentum in Deep Learning. International Conference on Machine Learning, 28, 1139-1147.
[4] Robbins, H. and Monro, S. (1951) A Stochastic Approximation Method. The Annals of Mathematical Statistics, 22, 400-407.
https://doi.org/10.1214/aoms/1177729586
[5] Bottou, L., Curtis, F.E. and Nocedal, J. (2018) Optimization Methods for Large-Scale Machine Learning. SIAM Review, 60, 223-311.
https://doi.org/10.1137/16M1080173
[6] Johnson, R. and Zhang, T. (2013) Accelerating Stochastic Gradient Descent Using Predictive Variance Reduction. Advances in Neural Information Processing Systems, 1, 315-323.
[7] Lei, L. and Jordan, M. (2017) Less than a Single Pass: Stochastically Controlled Stochastic Gradient. Artificial Intelligence and Statistics, 54, 148-156.
[8] Lei, L., Ju, C., Chen, J., et al. (2017) Non-Convex Finite-Sum Optimization via SCSG Methods. Advances in Neural Information Processing Systems, 11, 2345-2355.
[9] Lei, L. and Jordan, M.I. (2020) On the Adaptivity of Stochastic Gradient-Based Optimization. SIAM Journal on Optimization, 30, 1473-1500.
https://doi.org/10.1137/19M1256919
[10] Gower, R.M., Loizou, N., Qian, X., et al. (2019) SGD: General Analysis and Improved Rates. International Conference on Machine Learning, 97, 5200-5209.
[11] Ghadimi, S. and Lan, G. (2013) Stochastic First-and Zeroth-Order Methods for Nonconvex Stochastic Programming. SIAM Journal on Optimization, 23, 2341-2368.
https://doi.org/10.1137/120880811
[12] Rakhlin, A., Shamir, O. and Sridharan, K. (2011) Making Gradient Descent Optimal for Strongly Convex Stochastic Optimization. arXiv: 1109.5647.
[13] Polyak, B.T. (1987) Introduction to Optimization. Optimization Software. Publications Division, New York.
[14] Loizou, N., Vaswani, S., Laradji, I.H., et al. (2021) Stochastic Polyak Step-Size for SGD: An Adaptive Learning Rate for Fast Convergence. International Conference on Artificial Intelligence and Statistics, 130, 1306-1314.
[15] Orvieto, A., Lacoste-Julien, S. and Loizou, N. (2022) Dynamics of SGD with Stochastic Polyak Stepsizes: Truly Adaptive Variants and Convergence to Exact Solution. Advances in Neural Information Processing Systems, 35, 26943-26954.
[16] Wang, X. and Yuan, Y. (2023) On the Convergence of Stochastic Gradient Descent with Bandwidth-Based Step Size. Journal of Machine Learning Research, 24, 1-49.