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());
希望对遇到类似问题的其他人有所帮助!
我正在使用 MultiLayerNetwork
。该网络经过训练,结果符合预期。
作为实施工作的一部分 Federated Learning
我需要使用来自外部组件的一组新梯度来升级该网络的权重。
我的问题是,在 DL4J 中,执行 model.update(newGradients)
后,权重是否也会更新,或者我是否需要执行其他操作?
谢谢
我可以找到问题的答案。
更新梯度后,还得更新权重(params)
如果使用 SGD,您可以这样做:
model.update(averageGradient);
INDArray params = model.params(true);
params.addi(averageGradient.gradient());
希望对遇到类似问题的其他人有所帮助!