0.4.1版本问题

Load pytorch model from 0.4.1 to 0.4.0

  跨版本inference问题, 0.4.1上和0.4.0的BN实现方式不同, 0.4.1训练出来的model的BN参数里会有num_batches_tracked, 但是在0.4.0里你定义同样的BN层就不会有这个参数

  解决办法就是给state_dict加filter

model_dict = checkpoint['state_dict']
filtered = {
    k: v for k, v in model_dict.items() if 'num_batches_tracked' not in k
}
model.load_state_dict(filtered)

  凡是训练时定义, 但是inference的时候不想load到model里的参数都可以用这个办法

你可能感兴趣的:(0.4.1版本问题)