在 Pytorch 中节省一层的重量
Saving the weight of one layer in Pytorch
我想保存一个模型的重量,而不是像这样保存整个模型的重量:
torch.save(model, 'model.pth')
而是,只有一层。例如,假设我定义了这样的一层:
self.conv_up3 = convrelu(256 + 512, 512, 3, 1)
如何只保存这一层的权重。还有我如何为这一层加载它。
您可以对特定层的save/get参数执行以下操作:
specific_params = self.conv_up3.state_dict()
# save/manipulate `specific_params` as you want
同样,将参数加载到该特定层:
self.conv_up3.load_state_dict(params)
您可以这样做,因为每一层本身就是一个神经网络(nn.Module
实例)。
我想保存一个模型的重量,而不是像这样保存整个模型的重量:
torch.save(model, 'model.pth')
而是,只有一层。例如,假设我定义了这样的一层:
self.conv_up3 = convrelu(256 + 512, 512, 3, 1)
如何只保存这一层的权重。还有我如何为这一层加载它。
您可以对特定层的save/get参数执行以下操作:
specific_params = self.conv_up3.state_dict()
# save/manipulate `specific_params` as you want
同样,将参数加载到该特定层:
self.conv_up3.load_state_dict(params)
您可以这样做,因为每一层本身就是一个神经网络(nn.Module
实例)。