盘一盘从Hub加载模型的实践步骤

本文介绍了如何使用MindSpore Hub加载预训练模型,包括GoogleNet对CIFAR-10分类和MobileNetV2进行OpenImage迁移学习。通过`mindspore_hub.load`API,可以方便地加载模型并进行微调,实现模型的重训练和测试。
摘要由CSDN通过智能技术生成

众所周知,Hub加载模型向应用开发者提供了简单易用的模型加载和微调APIs,开发者们可以基于预训练模型进行推理或者微调,并部署到自己的应用中,也可以将自己训练好的模型按照指定的步骤发布到MindSpore Hub中。

对于我个人来说,确实在使用前期MindSpore Hub有点难,但是真正使用之后就会发现越来越顺手,开发过程中十分方便。

Mindspore_hub.load API用于加载预训练模型,该模型可以使用代码行完成模型的加载。主要的模型加载流程是这样的:

首先,使用GoogleNet对CIFAR-10数据集进行分类,代码长这样:

import mindspore_hub as mshub

import mindspore

from mindspore import context, Tensor, nn, Model

from mindspore import dtype as mstype

import mindspore.dataset.vision.py_transforms as py_transforms

context.set_context(mode=context.GRAPH_MODE,

                        device_target="Ascend",

                        device_id=0)

model = "mindspore/ascend/0.7/googlenet_v1_cifar10"

# Initialize the number of classes based on the pre-trained model.

network = mshub.load(model, num_classes=10)

network.set_train(False)

# ...

同时,模型也可以用于迁移学习通过mindspore_hub.load完成模型加载后,我们可以添加一个额外的参数元素,并且只加载神经网络的功能牵引部分,以便我们可以轻松地添加新的层进行迁移学习。如果模型开发人员向模型设计中添加其他参数,可以在模型的详情页中找到这个功能。include_top取值为True或者False,表示顶级网络是否应保持完全连接。

下面我们以MobileNetV2如何加载一个基于OpenImage的预训练模型,并在特定的子任务数据集上进行迁移学习(重训练)。主要的步骤如下:

使用url进行MindSpore Hub模型的加载,代码长这样:

import os

import mindspore_hub as mshub

import mindspore

from mindspore import context,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值