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设计】的支持。

相关文章

Python 实现Windows开机运行某软件的方法

Python 实现Windows开机运行某软件的方法

开机运行:随系统启动的应用程序,当系统启动之后会自动加载的应用 在注册表中添加启动项便可实现开机启动。 代码如下: # -*- coding:utf-8 -*- import win...

Python读取视频的两种方法(imageio和cv2)

用python读取视频有两种主要方法,大家可依据自己的需求进行使用。 方法一: 使用imageio库,没有安装的可用pip安装或自己下载,安装好后重启终端即可调用。 import p...

基于python实现聊天室程序

本文实例为大家分享了python实现简单聊天室的具体代码,供大家参考,具体内容如下 刚刚接触python编程,又从接触java开始一直对socket模块感兴趣,所以就做了一个聊天室的小程...

python中随机函数random用法实例

本文实例讲述了python中随机函数random用法。分享给大家供大家参考。具体如下: python中的random模块功能非常强大,可以生成各种随机值 #! python # ra...

通过mod_python配置运行在Apache上的Django框架

为了配置基于 mod_python 的 Django,首先要安装有可用的 mod_python 模块的 Apache。 这通常意味着应该有一个 LoadModule 指令在 Apache...