public override void update(int index, NdArray weight, NdArray grad, NdArray state) { var lr = this._get_lr(index); var wd = this._get_wd(index); this._update_count(index); if (state != null) { NdArray.SgdMomUpdate(grad, state, lr, weight, this._momentum, wd, this._rescaleGrad, _clipGradient); } else { NdArray.SgdUpdate(grad, lr, weight, wd, this._rescaleGrad, _clipGradient); } }