随机最速下降的最佳样本量

计算科学 优化 随机
2021-12-04 09:26:08

认为g(x1:n)是梯度的估计,在随机最速下降算法的每一步计算。数据集x1:n在每一步都模拟,所以如果n小算法速度快但不稳定,而如果n很大它很慢但很稳定。到目前为止,我刚刚尝试了许多 n 值,但也许有人知道确定 n 的更好方法。

认为Var(g(x1:n))=f(n)是已知的(即我知道梯度的方差如何随样本量变化),我正在考虑:

a) 最小化以下类型的损失函数:

Loss(n)=f(n)+n×c.

b) 绘制f(n)反对n×c尝试在视觉上确定一个好的样本大小 n。

就我而言c是模拟所需的时间xi,例如 0.1 秒。我不认为将不同单元加在一起的函数最小化有多大意义,所以我想知道是否有任何方法可以将 CPU 时间转换为更合理的时间。

1个回答

我希望你想要改变n从一步到一步 - 从一个小样本开始以快速取得大的进步,然后在接近最小值时慢慢增加大小以稳定。如果您预计您可能会陷入局部最小值,则可以多次运行此过程。

这听起来有点像模拟退火,因为您会以与模拟退火中的温度类似的方式使用样本大小,大样本对应于低温。众所周知,为模拟退火设计一个好的冷却计划是非常困难的——据我所知,基本上你需要凭直觉选择和调整参数。我希望同样你不能真正得出正确的改变时间表n- 你必须猜测和实验......