Skip to content

仍对ema_update函数存在疑问 #6

Description

@jiafengren

在之前的Issue中讨论了self.momentum参数的问题
def ema_update(self):
def update(student, teacher):
with torch.no_grad():
# m = momentum_schedule[it] # momentum parameter
m = self.momentum
for param_q, param_k in zip(student.parameters(), teacher.parameters()):
param_k.data.mul
(m).add
((1 - m) * param_q.detach().data)
update(self.encoder, self.encoder_LT)
update(self.projector, self.projector_ema)
注意到self._momentum=0.94是一个接近一的值,为了保持encoder 和 ema_encoder 存在一定的距离。但注意到ema_encoder的参数不计算梯度,低学习率是否会导致ema_encoder得不到充分的训练

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions