P25-26:网络模型的修改、保存、读取(Pytorch小土堆学习笔记)

 这篇文章是以vgg16模型为例子:

P25-26:网络模型的修改、保存、读取(Pytorch小土堆学习笔记)_第1张图片

pretrained:true-下载网络模型和训练好的参数;false-只下载网络模型 

 

vgg16_false = torchvision.models.vgg16(pretrained=False)
vgg16_true = torchvision.models.vgg16(pretrained=True)

修改:

1.添加一个网络结构

vgg16_true.classifier.add_module('add_Linear',nn.Linear(1000,10))

结果: 

P25-26:网络模型的修改、保存、读取(Pytorch小土堆学习笔记)_第2张图片

2.修改原来的参数:

vgg16_false.classifier[6] = nn.Linear(4096,10)

 结果:

P25-26:网络模型的修改、保存、读取(Pytorch小土堆学习笔记)_第3张图片P25-26:网络模型的修改、保存、读取(Pytorch小土堆学习笔记)_第4张图片

 下面附上完整的代码:

from torch import nn
import torchvision

vgg16_false = torchvision.models.vgg16(pretrained=False)
vgg16_true = torchvision.models.vgg16(pretrained=True)

#print(vgg16_true)

train_data  = torchvision.datasets.CIFAR10("dataset2",train=True,transform=torchvision.transforms.ToTensor(),
                                           download=True)
vgg16_true.classifier.add_module('add_Linear',nn.Linear(1000,10))
#print(vgg16_true)

print(vgg16_false)
vgg16_false.classifier[6] = nn.Linear(4096,10)
print(vgg16_false)

   

存取

存:

P25-26:网络模型的修改、保存、读取(Pytorch小土堆学习笔记)_第5张图片

取:

P25-26:网络模型的修改、保存、读取(Pytorch小土堆学习笔记)_第6张图片

存和取括号里面都是想要放置的地址(图片所示,放置在了本文件夹目录内),方式二的保存方式比方式一能少一丢丢存储量(存储量前三位没区别)

使用方法一的时候最好是使用

from data_save import * #将具体的文件名进行导入

 来保证模型可以调用(可以不用再次实例化模型,即 qq=qiqi())

 

你可能感兴趣的:(torch新人入坑,学习)