Адам 'объект не имеет атрибута' zero_grads ' - PullRequest
0 голосов
/ 03 мая 2018

Я использую код, не написанный мной. Таким образом, при выполнении этого кода мы получаем ошибку о несуществовании zero_grads ()

optimizer.zero_grads()
AttributeError: 'Adam' object has no attribute 'zero_grads'

Этот код:

import chainer.optimizers as O
optimizer = O.Adam()
optimizer.setup(model)
clip = chainer.optimizer.GradientClipping(5.0)
optimizer.add_hook(clip)
....

optimizer.zero_grads()
optimizer.update()

Должен ли я изменить: optimizer.zero_grads() до

optimizer.use_cleargrads(use=True)?

Обратите внимание, что я использую версию chainer 4.0 и код, который строим с помощью chainer 1.5.

1 Ответ

0 голосов
/ 04 мая 2018

метод оптимизатора zero_grads устарел и удален, теперь предпочтительнее использовать метод Линка cleargrads.

Так что, я думаю, вы должны изменить optimizer.zero_grads() на model.cleargrads()

Также см.

Однако, если вы хотите использовать код, написанный в chainer v1.5, может быть несколько других мест, которые вам нужно обновить для chainer v4. Возможно, было бы лучше попробовать выполнить код с помощью chainer v1.5, чтобы сначала увидеть его поведение.

...