摘要: 走过路过不要错过,看Copy攻城狮如何借力华为云ModelArts玩转AI。

“自2018年10月发布以来,ModelArts累计服务了众多行业十几万开发者,通过基础平台的完备性和面向行业的知识沉淀以及平台化能力,使得AI应用开发更简单高效。”

正如华为轮值董事长徐直军在《ModelArts人工智能应用开发指南》一书中作序提到,ModelArts简化了AI应用的开发流程、优化了AI应用的开发成本、降低了AI行业应用开发技能要求。对于零基础的小伙伴来说,如何快速上手AI应用开发?我相信您看完我学习使用ModelArts的经历,应该能找到答案。

邂逅ModelArts

说到结缘ModelArts,不得不先说说我和华为云的故事。去年的时候,给甲方爸爸开发移动应用,他们的APP通过华为应用市场分发,于是我就注册了华为开发者账号。同时,我热衷于参与前端开发方面的线下技术交流活动,偶然一次机会有幸拿到了“HDC2019”华为开发者大会的入场券,最开始关注的还是前端领域的技术,比如当时去东莞松山湖就是冲着华为快应用去的。在HDC大会上,最让我印象深刻的就是CodeLab,类似线下的工作坊,从最基础的“Hello World”开始,能让开发者轻松地了解和接受一门新的技术。记得当时参与了好几个CodeLab,基本都是偏向于前端开发,如快应用开发、AppGallery Connect、手机主题开发等……当然,目前CodeLab也有线上的开发指南,如:0代码开发图像分类AI模型;还有更加方便的沙箱实验室,为我们可以体验使用ModelArts实现花卉图像分类、基于ModelArts实现人脸识别等实践操作。

不过在这之后,我一直关注的都是前端领域的技术分享,如华为云“7天玩转前端研发实战营”……尽管初次接触华为云并未直接邂逅ModelArts,但为后来的遇见做了很大的铺垫。今年4月份的时候,在论坛偶然关注到了MDG举办的《创新AI活动:在武大樱花下写防疫课观后感》以及毛启昌老师分享的【AI 创新开发者沙龙】如何在华为云 ModelArts 实现草莓成熟识别?,初步了解到借助华为云一站式AI开发平台ModelArts,零基础也能开发诸如图像分类、物体检测、预测分析、声音分类、文本分类等AI应用开发;然后也参与了华为云开发者AI青年班黑客松大赛,第一次动手调参,不过毕竟是零基础,经过不断的尝试,终于将基线代码调优到了0.948,并且将这段“不断碰壁”的经历分享到了ModelArts版块,于是就有了我在ModelArts版块的第一篇帖子--《【手摸手学ModelArts】轻松完成Baseline及调优至0.》,后来又参加了华为云AI实战营,还有幸分享了我在学习ModelArts过程中的“copy经验”,完成了人生第一场直播--【AI实战课堂】2020年华为云AI实战营 ——FasterRCNN和YoLoV3算法完成物体检测,再后来就真的一发不可收拾,深深地爱上了ModelArts。她教会了我:AI,没那么难;学AI就到huaweicloud.ai!

学习ModelArts

在学习任何知识或技能前,我觉得我们先得问问自己,为什么要学习?比如为什么要学习ModelArts?对我而言,想法很简单:现如今,人工智能俨然融入生活的点点滴滴,未来只有两种人--一种用人工智能赚钱的,一种为人工智能消费的;作为前端Copy攻城狮,如果能有AI加持自动Copy代码是不是如鱼得水,岂不乐哉?当今这个没有AI芯片加持的手机都不能称之为“旗舰机”的时代,没有AI技能加持的攻城狮感觉都有点落伍。但是,谈到学习人工智能,大家可能最先想到的是技术太难、学不会。如果,您体验了一站式AI开发平台ModelArts,您一定会和我一样惊叹:原来AI开发也能这么简单?

那怎么学习ModelArts呢?按照我过往的经验,个人感觉无论学习什么新知识或技能,官方文档是最原始的学习资料。举个例子,我想学习全场景深度学习框架MindSpore,那我可能会访问MindSpore的官网--https://www.mindspore.cn/,我们能够轻松找文档、教程、代码甚至手把手的教学视频。不仅如此,我们还能轻松找到加入社区的方式找到志同道合的好基友一起前行。

同理,要学习ModelArts,我们第一步就需要了解她,首先官网走一波:ModelArts是华为云倾情打造,访问华为云ModelArts专区华为云AI社区都能轻松找ModelArts及AI相关的教程。比如,我们还能获取到AI开发者成长路线,从0到1成为AI开发达人。

除了官方提供的文档和教程,我们可以关注一下MDG(ModelArts开发者社区)、华为云ModelArts论坛及博客,最新的一手资料能及时获得,如ModelArts新功能特性、官方发布的活以及社区小伙伴们的精彩分享。其次,学会ModelArts的最好途径就是自己多动手实践,前期的学习,我们可以根据官方文档动手实践了解一些基本的概念和操作,之后我们可以尝试实践自己的创意,比如之前朱永春老师就分享了众多创意实践,有奶茶识别、有花式表白、有云毕业照生成。当然,乐于分享也有助于自身的提升,分享对学习而言也是催化剂,期待能看到您的分享、一起学习一起进步!

Hello,ModelArts

废话不多说,先上一个“Hello ModelArts”案例--找云宝(使用自动学习实现物体检测应用,云宝是华为云的吉祥物),希望通过亲自动手简短的实操,您能感受到使用ModelArts开发AI应用是多么简单。

0.环境准备

初次体验ModelArts之前,需注册华为云账号并进行实名认证;ModelArts服务时,需先配置全局设置,您可以通过委托授权ModelArts访问OBS、SWR、IEF等依赖服务,使用委托您可以更精细的控制授权的范围,或者通过配置访问密钥进行授权。本案例还需用到数据存储服务OBS,可参考ModelArts准备工作。

1.数据集准备

得益于ModelArts强大的AI市场提供的数据集分享功能,我已将本次实践的数据集上传,只需访问ModelArts AI市场的数据集模块,搜索“Yunbao”,即可找到部分标注的云宝图片数据集。通过AI市场数据集模块的分发,我们可以将数据集直接下载到自己的ModelArts中。通过数据集管理可直接管理从AI市场下载的ModelArts数据集,这样数据集就没必要先下载到本地再上传到OBS再新建数据集了,大大简化了开发流程。

2.数据标注

基于上一步下载的数据集,我们可以新建自动学习-物体检测任务,在任务中进行数据标注;也可以在数据管理-数据集中选择上一步下载的数据集进行标注。当然,如果您想体验自动分组、智能标注等数据集高级操作,建议还是使用第二种方式,标注完毕之后在自动学习任务中同步数据。

3.训练

由于本次实践提供的已经有标注部分数据,因此我们可以直接训练,不过训练的结果没有全部标注完毕的好。创建训练也是非常简单,轻轻一点,ModelArts便开始自动训练,只需耐心等待片刻即可。

下图中V001是只标注了26中图片的训练结果,V002是全部标注完的训练结果。其中的差异是非常明显的,当然训练的耗时差异也是蛮大的,全部标注的训练时长几乎是原来的2倍,但换来的是精度的显著提升,也是非常值得的。

4.部署

部署也是一键点击即可,我这里以V002这个版本为基础进行在线部署,依旧是等待片刻,服务正常运行即可调用。这里不得不夸赞一下,ModelArts依旧提供了一个免费的在线部署服务实例,又进一步降低了我们开发AI的成本。

简单调试一下,基本能准确识别云宝及位置,至此零代码开发物体检测AI模型就完成了,您Get到了吗?是不是So easy?

探索快乐,分享快乐

刚学习ModelArts的时候,就有一个小小的念头:将我的学习经历整理成文档或者视频分享出来了帮助更多的小伙伴了解并学习ModelArts,甚至出版一本全方位学习ModelArts的电子书教程……然而,几个月过去了,我的想法还仅仅是想法,官方的开发指南一书确已经出版了!不过,这个想法仍然在我脑海里,更加细致的教程仍然需要打磨,小目标还是有的--未来一年内学习并整理出《手摸手学ModelArts》电子书,先把牛皮吹出了。

回顾这几个月的学习,除了AI实战营坚持打卡分享,基于ModelArts和本行前端开发,我体验了一站式AI开发:基于ModelArts官方案例完成了银行存款预测小Demo,详见【手摸手学ModelArts】今天你存款了吗?;基于AI实战营的命名实体识别案例完成华为云应用魔方AppCube与ModelArts结合的探索,详见【Copy攻城狮日志】ModelArts与AppCube双“魔”合璧庆双节。虽然没什么技术含量,也不成气候,但也是一步一个脚印,踏踏实实地学习探索,同时承蒙各位的抬爱,感觉非常值得,非常快乐。

除此之外,我还热衷于给ModelArts示例代码库的文档纠错,实实在在的“文档修改贡献者”;当然通过学习ModelArts-Labs代码库,也是能够第一时间掌握ModelArts新的玩法;如果能在学习之外,还能顺带帮助其他小伙伴,何乐而不为呢?

文中链接

点击关注,第一时间了解华为云新鲜技术~

快快使用ModelArts,零基础小白也能玩转AI!的更多相关文章

  1. 学Java必看!零基础小白再也不用退缩了

    程序员们!请往这儿看 对于JAVA的学习,可能你还会有许多的顾虑 不要担心 接着往下看吧 学Java前 一.数学差,英语也不好是不是学不好Java? 答案是:是~ 因为你在问这个问题的时候说明你对自己 ...

  2. 【自动化基础】手把手教零基础小白搭建APP的UI自动化环境

    前言 帮助零基础小白一步步搭建UI自动化环境,完成Python+Appium+模拟器/真机的UI自动化环境搭建. 环境准备: jdk1.8.0 sdk Node.js appium python Ap ...

  3. 零基础小白怎么用Python做表格?

    用Python操作Excel在工作中还是挺常用的,因为毕竟不懂Excel是一个用户庞大的数据管理软件.本文用Python3!在给大家分享之前呢,小编推荐一下一个挺不错的交流宝地,里面都是一群热爱并在学 ...

  4. 零基础小白入门IT开发指南

    先自我介绍以下,本人是一枚刚毕业不到两年的某一线城市的程序员,本科阶段专业是计算机科学与技术.从大四开始出去实习到现在的编码经验也有快2年半了,两年半的时间包括实习在内任职过有4家公司,包括一家互联网 ...

  5. 🚴‍♂️全套MySQL数据库教程_Mysql基础入门教程,零基础小白自学MySQL数据库必备教程☔ #002 # 第二单元 MySQL数据类型、操作表#

    二.本单元知识点概述 (Ⅰ)知识点概述 二.本单元教学目标 (Ⅰ)重点知识目标 1.Mysql的数据类型2.如何选择数据类型3.创建表4.修改表5.删除表 (Ⅱ)能力目标 1.熟练创建数据库及删除数据 ...

  6. 这可能最简单的一种PS图片特效,零基础小白教程

    不少小伙伴都想学习PS,可是又觉得PS很难,学了一段时间却还是做不出什么惊艳的效果,没关系!小编今天就来教大家做一个超级简单的图片特效,就算是小白也能轻松学会!我们先来看看图片效果~ 想知道怎么做吗? ...

  7. uni app 零基础小白到项目实战-1

    uni-app是一个使用vue.js开发跨平台应用的前端框架. 开发者通过编写vue.js代码,uni-app将其编译到Ios,android,微信小程序等多个平台,保证其正确并达到优秀体验. Uni ...

  8. 零基础小白必看篇:从0到1构建Python Web框架

    造轮子是最好的一种学习方式,本文尝试从0开始造个Python Web框架的轮子,我称它为ToyWebF. 本文操作环境为:MacOS,文中涉及的命令,请根据自己的系统进行替换. ToyWebF的简单特 ...

  9. 零基础小白Python入门必看:面向对象之典型魔术方法

随机推荐

  1. Java知识系统回顾整理01基础03变量04类型转换

    一.不同类型之间的数据可以互相转换,但是要满足一定的规则 二.数据类型转换规则 转换规则如图所示  精度高的数据类型就像容量大的杯子,可以放更大的数据 精度低的数据类型就像容量小的杯子,只能放更小的数 ...

  2. 如何使用微软提供的TCHAR.H头文件?

    转载:https://www.cnblogs.com/flyingspark/archive/2012/03/16/2399788.html 如何使用微软提供的TCHAR.H头文件? 如果你现在写的代 ...

  3. 《C++primerplus》第11章练习题

    1.修改程序清单11.5(随机漫步),使之以特定的格式将结果写入文件中. //vector.h -- Vector Class #ifndef _VECTOR_H_ #define _VECTOR_H ...

  4. 题解【[USACO18FEB]New Barns 】

    浅谈一下对于这题做完之后的感受(不看题解也是敲不出来啊qwq--) 题意翻译 Farmer John注意到他的奶牛们如果被关得太紧就容易吵架,所以他想开放一些新的牛棚来分散她们. 每当FJ建造一个新牛 ...

  5. 安装memcache,步骤

    1.先下载emcache.rar安装包<ps:随便安装在哪里文件夹,或者新建文件夹都是可以的> 2.解压安装包<ps:运行里面的程序> 3.然后根据自己的phpstudy的版本 ...

  6. 如何让矢量瓦片配图神器maputnik支持 geoserver

    关键词:maputnik.geoserver.矢量地图.矢量瓦片.mapbox.mapboxgl.地图配图.地图配色 一直想搞一个类似百度.高德地图那样的矢量地图配图工具 百度个性化地图配图工具: 高 ...

  7. 通过MapReduce降低服务响应时间

    在微服务中开发中,api网关扮演对外提供restful api的角色,而api的数据往往会依赖其他服务,复杂的api更是会依赖多个甚至数十个服务.虽然单个被依赖服务的耗时一般都比较低,但如果多个服务串 ...

  8. 自定义常用input表单元素三:纯css实现自定义Switch开关按钮

    自定义常用input表单元素的第三篇,自定义一个Switch开关,表面上看是和input没关系,其实这里采用的是checkbox的checked值的切换.同样,采用css伪类和"+" ...

  9. centos6.8 Mysql-5.7.20 升级 mysql-8.0.14-1

    Mysql-5.7.20 升级 mysql-8.0.14-1   操作前建议先查阅以下网页初步了解Mysql版本升级信息  https://blog.csdn.net/u012946310/artic ...

  10. 标签中colgroup的属性

    如需对全部列应用样式,<colgroup> 标签很有用,这样就不需要对各个单元和各行重复应用样式了. <colgroup> 标签只能在 table 元素中使用. 可选的属性 属 ...