Pytorch修改ResNet模型全连接层进行直接训练实例

yipeiwu_com7年前Python基础

之前在用预训练的ResNet的模型进行迁移训练时,是固定除最后一层的前面层权重,然后把全连接层输出改为自己需要的数目,进行最后一层的训练,那么现在假如想要只是把

最后一层的输出改一下,不需要加载前面层的权重,方法如下:

model = torchvision.models.resnet18(pretrained=False)
num_fc_ftr = model.fc.in_features
model.fc = torch.nn.Linear(num_fc_ftr, 224)
model = nn.DataParallel(model, device_ids=config.gpus).to(device)

首先模型结构是必须要传入的,然后把最后一层的输出改为自己所需的数目

以上知识点很简单,大家可以测试下,感谢大家的阅读和对【听图阁-专注于Python设计】的支持。

相关文章

Django xadmin开启搜索功能的实现

应用目录下adminx.py class EmailVerifyRecordAdmin(object): search_fields = ['code','email','sen...

基于python元祖与字典与集合的粗浅认识

一,元祖(tuple) 1.元祖是不能修改的,通常写成圆括号中的一系列项,位置有序,固定长度 2.实际上元祖支持字符串和列表的一般序列操作,“+”,“*”以及分片操作应用于元祖时会返回新...

python函数的万能参数传参详解

python函数的万能参数传参详解

我们通过一个简单的事例来展示一下函数的万能参数,我们先写一个最简单的函数 def test(*args,**kwargs): print(args,kwargs) 然后定义两个变量...

使用matplotlib绘制图例标签中带有公式的图

使用matplotlib绘制图例标签中带有公式的图

我就废话不多说了,直接上代码吧! import numpy as np import matplotlib.pyplot as plt x = np.linspace(0,2*np....

Python使用指定字符长度切分数据示例

处理思路 笔者在学习时被要求在Python中使用指定字符长度切分数据。 如,string类型的字符串film_type = ‘都市浪漫爱情喜剧',已知电影类型都是两个中文字符组成,要求切...