mlx.optimizers.AdaDelta#
- class AdaDelta(learning_rate: float | Callable[[array], array], rho: float = 0.9, eps: float = 1e-06)#
具有学习率的 AdaDelta 优化器 [1]。
我们的 AdaDelta 实现遵循原始论文。具体来说,
[1]: Zeiler, M.D., 2012. ADADELTA: 一种自适应学习率方法。arXiv 预印本 arXiv:1212.5701。
\[\begin{split}v_{t+1} &= \rho v_t + (1 - \rho) g_t^2 \\ \Delta w_{t+1} &= \frac{\sqrt{u_t + \epsilon}}{\sqrt{v_{t+1} + \epsilon}} g_t \\ u_{t+1} &= \rho u_t + (1 - \rho) \Delta w_{t+1}^2 \\ w_{t+1} &= w_t - \lambda \Delta w_{t+1}\end{split}\]- 参数:
方法
__init__
(learning_rate[, rho, eps])apply_single
(gradient, parameter, state)执行 AdaDelta 参数更新并将 \(v\) 和 \(u\) 存储在优化器状态中。
init_single
(parameter, state)初始化优化器状态