def project(self, param_name, param_data, epsilon):
    r = (param_data - self.emb_backup[param_name])
    if (torch.norm(r) > epsilon):
        r = ((epsilon * r) / torch.norm(r))
    return (self.emb_backup[param_name] + r)
def project(self, param_name, param_data, epsilon):
    r = (param_data - self.emb_backup[param_name])
    if (torch.norm(r) > epsilon):
        r = ((epsilon * r) / torch.norm(r))
    return (self.emb_backup[param_name] + r)