实践案例丨基于ModelArts AI市场算法MobileNet_v2实现花卉分类
概述
MobileNetsV2是基于一个流线型的架构,它使用深度可分离的卷积来构建轻量级的深层神经网,此模型基于 MobileNetV2: Inverted Residuals and Linear Bottlenecks 中提出的模型结构实现。可以用图像分类任务,比如猫狗分类、花卉分类等等。用户提供一系列带有标注的数据集,该算法会载入在ImageNet-1000上的预训练模型,在用户数据集上做迁移学习。训练后生成的模型可直接在ModelArts平台部署为在线服务或批量服务,同时支持使用CPU、GPU或Ascend 310进行推理。(以上介绍来自ModelArts AI 市场算法介绍)
注意:需要用到ModelArts和OBS桶,建议提前购买相应资源或代金券,或使用免费规格,但OBS是要花钱的。
准备数据集
这里使用的是花卉数据集,共3669张花卉图片,5个种类,数据集下载地址http://download.tensorflow.org/example_images/flower_photos.tgz (数据集来自自博主张震宇的博客中所提供的数据集,在这里感谢大佬,附上大佬博客链接https://bbs.huaweicloud.com/blogs/158092,里面描述的很详细,建议可以看一下,学习学习,以下的上传数据集方法也来自该博客)
下载解压后,进入flower_photos目录,里面有5个子目录
这里要把flower_photos这个文件夹,也就是上面五个文件的上一级文件夹上传到OBS(华为云对象存储服务),建议使用OBS Browser工具上传。OBS Browser下载:https://support.huaweicloud.com/browsertg-obs/obs_03_1003.html
上传好了之后,回到ModelArts首页,点击左侧“数据管理”->“数据集”,然后点击“创建数据集”
然后先在“数据集输入位置”和“数据集输出位置”选择2个OBS上的文件夹(文件夹要自己创建,必须是空文件夹),剩下的部分默认就行,之后点击右下角创建即可。
回到“数据管理”->“数据集”界面,点击刚才创建的数据集
点击数据集,进入数据集界面,选择右上角的导入
点击导入后,选择最开始上传数据集的路径,就是选择flowers_photos文件夹。
选择之后需要等待一会,可能你会看到导入仍然是0,不要着急,等一下。当看到如下情况,表示导入完成了,接下来就可以发布数据集了。
同样,点击数据集,进入刚才导入的界面,选择右上角的发布
这里选择8:2的比例划分训练集和测试集。点击确定即可。等待数据集创建完成。
下面开始训练,这里首先要到AI市场,订阅算法,放心,是免费的,点击链接进入算法订阅 https://console.huaweicloud.com/modelarts/?region=cn-north-4#/aiMarket/aiMarketModelDetail/overview?modelId=0470e6b1-923b-47a8-ba3e-fe93de5ae2a0&type=algo
点击订阅,按照弹出的界面确认即可。
订阅之后,还要配置同步算法,点击应用控制台
好了,算法和数据已经有了,下面开始执行训练吧,选择创建训练作业。
这里选择我们刚才创建的数据集和对应版本号就行,这里我用的是以前创建的数据集,所以数据集名称和版本号和前面创建的不一样,你选择自己刚才创建的就好,同时,还要创建一个空文件夹存放训练输出,至于训练日志,可以不选择存放路径。
还要选训练规格,如果没有代金券的话,选择免费版本
最后,选择下一步即可。
可能有几个确认选择,最后可得到
接下来等训练完成就行了,至于训练中更加详细的介绍,可以参考算法订阅界面的介绍,自己设定参数。
这个训练大概17min完成,还是挺快的。接下来,导入模型。
前面的训练作业名称是随机的,选择就好,应该选择导入后,自动选择的就是刚才训练的了。点击右下角的立即创建,等待导入。
显示正常,表示成功了,下面开始线上部署。
默认是使用CPU部署推理的,当然选择GPU和Ascend也可以,可参考算法页面的介绍。
这里以CPU为例。单击部署,选择在线部署。
选择免费的CPU体验规格就行了
选择下一步,确认,得到
下面选择预测——>上传——>预测即可。
最后,看看效果,还不错。
以上就是基于ModelArts AI市场算法MobileNet_v2实现花卉分类的实践内容。是不是很简单,赶快来试一下吧。
实践案例丨基于ModelArts AI市场算法MobileNet_v2实现花卉分类的更多相关文章
- 实践案例丨基于 Raft 协议的分布式数据库系统应用
摘要:简单介绍Raft协议的原理.以及存储节点(Pinetree)如何应用 Raft实现复制的一些工程实践经验. 1.引言 在华为分布式数据库的工程实践过程中,我们实现了一个计算存储分离. 底层存储基 ...
- HBase实践案例:知乎 AI 用户模型服务性能优化实践
用户模型简介 知乎 AI 用户模型服务于知乎两亿多用户,主要为首页.推荐.广告.知识服务.想法.关注页等业务场景提供数据和服务, 例如首页个性化 Feed 的召回和排序.相关回答等用到的用户长期兴趣特 ...
- 实践案例丨教你一键构建部署发布前端和Node.js服务
如何使用华为云服务一键构建部署发布前端和Node.js服务 构建部署,一直是一个很繁琐的过程 作为开发,最害怕遇到版本发布,特别是前.后端一起上线发布,项目又特别多的时候. 例如你有10个项目,前后端 ...
- 实践案例丨利用小熊派开发板获取土壤湿度传感器的ADC值
摘要:一文带你用小熊派开发板动手做土壤湿度传感器. 一.实验准备 1.实验环境 一块stm32开发板(推荐使用小熊派),以及数据线 已经安装STM32CubeMX 已经安装KeilMDK,并导入stm ...
- Quartz应用实践入门案例二(基于java工程)
在web应用程序中添加定时任务,Quartz的简单介绍可以参看博文<Quartz应用实践入门案例一(基于Web应用)> .其实一旦学会了如何应用开源框架就应该很容易将这中框架应用与自己的任 ...
- 数据挖掘案例:基于 ReliefF和K-means算法的应用
数据挖掘案例:基于 ReliefF和K-means算法的应用 数据挖掘方法的提出,让人们有能力最终认识数据的真正价值,即蕴藏在数据中的信息和知识.数据挖掘(DataMiriing),指的是从大型数据库 ...
- Demo分享丨看ModelArts与HiLens是如何让车自己跑起来的
摘要:基于HiLens Kit已经基本开发完成,可部署到HiLens Kit,模型的选择为基于DarkNet53的YOLOv3模型,权重为基于COCO2014训练的数据集,而车道线的检测是基于Open ...
- 贝叶斯公式由浅入深大讲解—AI基础算法入门
1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率,只有固定的0和1,即要么发生,要么不发生,从来不会去考虑某件事情发生的概率有多大,不发生的概率又是多大.而且概率虽然未知,但最起码是一个确定 ...
- 贝叶斯公式由浅入深大讲解—AI基础算法入门【转】
本文转载自:https://www.cnblogs.com/zhoulujun/p/8893393.html 1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率,只有固定的0和1,即要么发生, ...
随机推荐
- Codeforces1144C(C题)Two Shuffled Sequences
C. Two Shuffled Sequences Two integer sequences existed initially — one of them was strictly increas ...
- linux常用命令---文件软硬链接
文件链接
- 第一章 Python 基础
1. 为什么学习 Python? 答题路线:a.python的优点,b.python的应用领域广 具体: 优点 1.python语法非常优雅,简单易学 2.免费开源 3.跨平台,可以自由移植 4.可扩 ...
- 洛谷 p1605 迷宫问题 详解
题解:dfs搜索 #include <iostream> #include <algorithm> #include <cstring> #include < ...
- php连接数据库 需要下载adodb
<?include('adodb/ADOdb.inc.php'); # 加载ADODB$conn = &ADONewConnection('odbc_mssql'); # 建立一个连结$ ...
- SpringBoot代码生成器,从此不用手撸代码
前言 通常在开始开发项目的时候,首先会建立好数据库相关表,然后根据表结构生成 Controller.Service.DAO.Model以及一些前端页面. 如果开发前没有强制的约束,而每个程序员都有自己 ...
- ShoneSharp语言(S#)的设计和使用介绍系列(7)— 布尔Bool及对象Object
ShoneSharp语言(S#)的设计和使用介绍 系列(7)— 布尔Bool及对象Object 作者:Shone 声明:原创文章欢迎转载,但请注明出处,https://www.cnblogs.com/ ...
- 【图机器学习】cs224w Lecture 11 & 12 - 网络传播
目录 Decision Based Model of Diffusion Large Cascades Extending the Model Probabilistic Spreading Mode ...
- 如何在ARM上运行k3s? 窥探k3s启动过程!,内附容器多平台包构建
开始之前 最近在对华为云鲲鹏服务器(一种ARM服务器arm64)运行容器可行性做验证,顺便了解了很多ARM和容器相关的知识.一提到arm运行容器首先想到的是k3s,下面是用k3s快速搭建一个kuber ...
- Java——参数传递
写这篇文章时,其实还是不理解Java中的参数传递只有传值没有传址(传引用).这里引用知乎上大神的讲解来记录一下. 一.基本类型和引用类型 int num = 10; String str = &quo ...