DL4J。执行 model.upgrade(Gradient) 后权重是否更新?

DL4J. After doing model.upgrade(Gradient) are the weights updated?

我正在使用 MultiLayerNetwork。该网络经过训练,结果符合预期。 作为实施工作的一部分 Federated Learning 我需要使用来自外部组件的一组新梯度来升级该网络的权重。

我的问题是,在 DL4J 中,执行 model.update(newGradients) 后,权重是否也会更新,或者我是否需要执行其他操作?

谢谢

我可以找到问题的答案。

更新梯度后,还得更新权重(params)

如果使用 SGD,您可以这样做:

model.update(averageGradient);
INDArray params = model.params(true);
params.addi(averageGradient.gradient());

希望对遇到类似问题的其他人有所帮助!