Когда вы объявили nn.Conv2d
, веса инициализируются с помощью этого кода .
В частности, если вы задаете смещение, он использует инициализацию, предложенную Kaiming et.al.Он инициализируется как равномерное распределение между (-bound, bound), где bound=\sqrt{6/((1+a^2)fan_in)}
(см. здесь ).
Вы также можете инициализировать вес вручную.На этот вопрос ответили в другом месте (см. здесь ), и я не буду повторять это.
Когда вы звоните optimizer.step
и оптимизатор зарегистрировал параметры сверточного фильтра, они обновляются.