megengine.optimizer.SGD

class SGD(params, lr, momentum=0.0, weight_decay=0.0)[源代码]

实现随机梯度下降。

Nesterov momentum的实现是基于 “On the importance of initialization and momentum in deep learning” 中的公式。

参数
  • params (Union[Iterable[Parameter], dict]) – 可迭代对象,可以是一组待优化的参数,或定义几组参数的dict类型。

  • lr (float) – 学习率(learning rate)。

  • momentum (float) – momentum因子。默认:0.0

  • weight_decay (float) – 权重衰减(L2范数惩罚)。默认:0.0

方法

add_param_group(param_group)

Optimizerparam_groups 中添加一组参数。

backward(loss)

bcast_param()

clear_grad()

把所有参数的梯度属性设置为 None。

load_state_dict(state)

加载优化器状态。

state_dict([keep_var])

导出优化器状态。

step()

执行单一优化步骤。

zero_grad()

1.0 版后已移除.