1.6 Pytorch基础——加载预训练模型

import torch
import torchvision
import torch.nn as nn
import numpy as np
import torchvision.transforms as transforms

# 下载并加载预训练模型 ResNet-18.
resnet = torchvision.models.resnet18(pretrained=True)

# 保持该模型的其它层参数,仅使用最后一层进行 finetuning.
for param in resnet.parameters():
    param.requires_grad = False

resnet.fc = nn.Linear(resnet.fc.in_features, 100)  # 设定输出为100.

# 前向传递.
images = torch.randn(64, 3, 224, 224)
outputs = resnet(images)
print (outputs.size())     # 输出 (64, 100)

# 保存和加载整个模型.
torch.save(resnet, 'model.ckpt')
model = torch.load('model.ckpt')

# 保存和加载整个模型的参数. (数据量较少,推荐这种方式).
torch.save(resnet.state_dict(), 'params.ckpt')
resnet.load_state_dict(torch.load('params.ckpt'))

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钱彬 (Qian Bin)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值