使用pytorch搭建ResNet并基于迁移学习训练

这里的迁移学习方法是载入预训练权重的方法

python 复制代码
    net = resnet34()
    # load pretrain weights
    # download url: https://download.pytorch.org/models/resnet34-333f7ec4.pth
    model_weight_path = "./resnet34-pre.pth"
    assert os.path.exists(model_weight_path), "file {} does not exist.".format(model_weight_path)
    net.load_state_dict(torch.load(model_weight_path, map_location='cpu'))
    # for param in net.parameters():
    #     param.requires_grad = False

    # change fc layer structure
    in_channel = net.fc.in_features
    net.fc = nn.Linear(in_channel, 5)

这里的迁移学习方法是载入预训练权重的方法net = resnet34():注意这里没有传入参数num_classes 因为后面才载入所有的参数,会覆盖我们设定的classes

change fc layer structure

in_channel = net.fc.in_features # fc 为全连接层 in_features为特征矩阵的深度

net.fc = nn.Linear(in_channel, 5)

如果不想使用迁移学习的方法,则注释阴影部分,在net = resnet34()中传入num_classes参数

相关推荐
MobotStone几秒前
AI正在改变的,不是岗位,而是整个企业的运营模式
人工智能
Bingorl1 分钟前
机器学习之朴素贝叶斯算法
人工智能·算法·机器学习
Nile8 分钟前
解密Palantir系列一:3. Palantir 是谁
大数据·人工智能·ai
m0_3801671410 分钟前
加密市场数据的未来:实时化、多交易所与 AI-ready
人工智能·区块链
云天AI实战派10 分钟前
AI 智能体总是跑偏怎么办?ChatGPT/API/Agent 故障排查指南与全流程修复手册
大数据·人工智能·chatgpt·agent
星浩AI11 分钟前
(六)模型微调效果测试:基于 BERT 的中文评价情感分析[附源码]
人工智能·机器学习·llm
smile-yan18 分钟前
大厂故事之百度(3/4)AI商业化迷航——从技术强到落地难
人工智能·百度
vensli18 分钟前
消息跨端架构演进:基于 C++ 的多端一致性研发框架实践
java·人工智能·软件工程·安卓
云烟成雨TD18 分钟前
Spring AI Alibaba 1.x 系列【70】思考模式
java·人工智能·spring
MediaTea20 分钟前
人工智能通识课:大语言模型
人工智能·语言模型·自然语言处理