PyTorch中定义模型时,有时候会遇到 self.register_buffer(‘name’, Tensor)的操作,该方法的作用是定义一组参数,该组参数的特别之处在于:模型训练时不会更新(即调用 optimizer.step() 后该组参数不会变化,只可人为地改变它们的值),但是保存模型时,该组参数又作为模型参数不可或缺的一部分被保存。
而 register_parameter() 和它是相反的功能。

例如,我们先定义一个模型:

import torch 
import torch.nn as nn
from collections import OrderedDict

class Model(nn.Module):
    def __init__