PyTorch预训练

本文介绍了在PyTorch中如何利用预训练模型,包括直接加载完整预训练模型、加载部分预训练模型以及微改基础模型进行预训练。通过修改模型层的名字和替换特定层,适应不同任务需求,提升模型训练效果。
摘要由CSDN通过智能技术生成

前言

最近使用PyTorch感觉妙不可言,有种当初使用Keras的快感,而且速度还不慢。各种设计直接简洁,方便研究,比tensorflow的臃肿好多了。今天让我们来谈谈PyTorch的预训练,主要是自己写代码的经验以及论坛PyTorch Forums上的一些回答的总结整理。

直接加载预训练模型

如果我们使用的模型和原模型完全一样,那么我们可以直接加载别人训练好的模型:

my_resnet = MyResNet(*args, **kwargs)
my_resnet.load_state_dict(torch.load("my_resnet.pth"))

当然这样的加载方法是基于PyTorch推荐的存储模型的方法:

torch.save(my_resnet.state_dict(), "my_resnet.pth")

还有第二种加载方法:

my_resne
回答: 在PyTorch中,预训练指的是使用已经在大型数据集上进行了训练的模型作为初始模型。这样做可以加快训练速度并提高模型的准确性。在PyTorch中,有几种方法可以进行预训练。一种方法是使用torchvision库中的预训练模型,如resnet、vgg等。你可以通过加载预训练模型的方式来使用这些模型,例如通过调用torchvision.models.resnet152(pretrained=True)来加载预训练的resnet152模型。然后,你可以替换模型的最后一层以适应你的任务,比如使用torch.nn.Linear(2048, 10)将原本的1000类改为10类。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [PyTorch预训练](https://blog.csdn.net/u012759136/article/details/65628884)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Pytorch预训练模型以及修改](https://blog.csdn.net/nefetaria/article/details/108516782)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值