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

yipeiwu_com6年前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框架实现的普通登录案例【使用POST方法】

Django框架实现的普通登录案例【使用POST方法】

本文实例讲述了Django框架实现的普通登录。分享给大家供大家参考,具体如下: 1.显示登录页面 a.设计url,通过浏览器访问http://127.0.0.1:8000//login的...

wxPython窗体拆分布局基础组件

wxPython窗体拆分布局基础组件

本文实例为大家分享了wxPython窗体拆分布局的具体代码,供大家参考,具体内容如下 BoxSizer 布局管理 参数说明: orient:wx.VERTICAL(垂直方向) 或 wx....

python中yield的用法详解——最简单,最清晰的解释

首先我要吐槽一下,看程序的过程中遇见了yield这个关键字,然后百度的时候,发现没有一个能简单的让我懂的,讲起来真TM的都是头头是道,什么参数,什么传递的,还口口声声说自己的教程是最简单...

对python中assert、isinstance的用法详解

1. assert 函数说明: Assert statements are a convenient way to insert debugging assertions into a...

10招!看骨灰级Pythoner玩转Python的方法

10招!看骨灰级Pythoner玩转Python的方法

pandas是基于numpy构建的,使数据分析工作变得更快更简单的高级数据结构和操作工具。本文为大家带来10个玩转Python的小技巧,学会了分分钟通关变大神! 1. read_cs...