文章目录
前言
近年来,随着人工智能技术的发展和应用机会的增多,AI在生活中占据着越来越重要的地位。但AI应用开发的过程复杂,各行业AI应用的渗透率还远远不够。为了应对上述问题,华为基于多年的AI应用开发和实践经验,推出了一站式AI应用开发和部署平台——ModelArts,大大简化了AI应用的开发。
本文记录了一个AI小白首次体验ModelArts开发AI应用的过程以及心得体会。希望自己在掌握操作细节后能对整体流程有更进一步的理解。如有不对之处还请多多批评指教:D
AI初学者与工程师的使用指南详情 ModelArts使用简介
一、Q&A
1. 整个开发流程需要多久?需要支付费用吗?
笔者跟随平台的新手指引,构建一个文本分类应用花费了30min,且仅在“创建桶”时产生2.01元的费用。具体费用标准详情 计费相关。
2. 借助ModelArts构建应用,我需要掌握哪些知识?
面向AI开发零经验的用户,不需要了解人工智能专业知识和算法,使用 AI Gallery 中预置的模型、算法、数据、Notebook等资产预置算法即可构建AI应用。如果你热爱学习,可以先阅读官方提供的基础知识,或者笔者的整理。
3. 开发过程中我可以收获到什么?
低门槛的体验并了解了AI应用开发的过程,明白知识在实际开发中的具体运用,查缺补漏。还有成功的喜悦hh。
二、掌握自动学习的基本流程
为减少信息重复,该部分不再详细介绍准备工作(桶和文件夹)的操作细节(请跟随系统指引或参考其他详细的博客),以文本分类为例,体会ModelArts自动开发带来的高效便捷。
我已经在新手教程的指引下成功找到了云宝,你呢?
体验完“找云宝”之后还不够过瘾?试试以下项目吧!(详情 ModelArts管理控制台)
- 图像分类:识别图片中物体的类别
- 物体检测:识别出图片中每个物体的位置和类别
- 预测分析:对结构化数据做出分类或数值预测
- 声音分类:对环境中不同声音进行分类识别
- 文本分类:识别一段文本的类别
接下来以文本分类项目为例讲解操作步骤,读者可自行挑选感兴趣的再熟悉一下开发流程
1. 数据准备
-
在AI Gallery的资产集市中寻找并下载你需要的数据集。下载前可以看看描述中的使用方法。本文的是采用 中文语句情感分类 。
-
将数据集下载到桶中。创立一个新文件夹专门存放数据集,点击确认
-
在ModelArts“数据管理-数据集”中,创建文本分类数据集(注意:数据集输入位置、数据集输出位置新建2个空的OBS路径)
- 刚刚我们选中的输入文件夹是空的,所以还要点击刚才的创建的数据集,在数据集详细页面右上角“导入”.
导入方式选择“对象存储服务(OBS)目录”
目录位置选择刚才的数据集下载路径
由于我们下载的这个数据集的文本和标签是合并的,所以我们按照下图选择(默认不动)
- 待导入完成后,单击页面右上角“发布”,数据按照0.8:0.2比例切分
- 进入ModelArts控制管理台,记得授权,否则无法创建项目
然后点击自动学习–创建一个文本分类的项目
数据集来源选择“已有数据集”,就是我们刚才创建的
2. 自动模型训练
数据标注好了,我们直接开始训练即可。后面的步骤和“找云宝”相同,这里不再赘述。
没想到准确率比云宝还高点hhhh 我两个选的都是Balance模式
做完了两个项目,发现在数据标注处理上有所差别。图像用的是坐标,文本用的是标签。
3. 应用部署和测试
等了一会儿部署也好了,预测准确^ ^ (结果为1代表postive,0为negtive)
关于”调用接口使用部署的服务“笔者还未来得及尝试 ,目前也没有找到关于测试文本分类模型的教程,推荐参考 官方部署帮助指南 / 手把手教你用Postman测试ModelArts部署的图像分类模型。另外,刚好今天看见一篇推文《比Postman更懂中国程序员,ApiPost真香!》,感兴趣的朋友也可以看看。
三 、理解流程与概念
首先,让我们看看AI应用开发的常规流程:
ModelArts的自动学习简化了上述步骤,三步即可完成一个AI应用的开发。
接下来,我们简单了解下在新手教程–准备工作中将会遇到的一些概念
如果你有大量且多样的数据需要存储,不如试试存到OBS系统或桶中吧。登录OBS服务器,使用OBS控制管理台/工具即可访问或管理你的数据。或者你需要开发多种类型的业务应用?SDK和OBS API接口可以帮你实现。
对象存储服务(Object Storage Service,OBS)是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力。
简单来说,在本文的应用场景下,OBS就是用来存数据集的
OBS产品架构图
由上图可知,在OBS中,桶(Bucket)是存储对象(Object)的容器,对象是数据存储的基本单位。
因此,我们得先有个容器,即创建桶,才能储存数据。
每个桶都有自己的存储类别、访问权限、所属区域等属性,用户在互联网上通过桶的访问域名来定位桶。
这就是为什么新手教程提示我们“请务必保证创建的OBS桶与ModelArts在同一区域”,在创建和配置桶时要多加注意哦。
有了容器之后,我们就可以把想存的东西放进去啦。我们存进去的数据就称作对象
一个对象实际是一个文件的数据与其相关属性信息的集合体,包括Data、Key、Metadata三部分。
其中Data是指文件的数据内容。Key是对象的名称,一个桶里的每个对象必须拥有唯一的对象键值。Metadata是对象的描述信息,以键值对(Key-Value)的形式上传,包括系统元数据(OBS自动产生)和用户元数据(上传时编写)。
上传的文件需要归类?在已创建的桶中新建一个文件夹,将本地文件直接通过Internet上传至指定的位置即可。
由于OBS是一种对象存储服务,并没有文件系统中的文件和文件夹概念。为了使用户更方便进行管理数据,OBS提供了一种方式模拟文件夹。实际上是通过在对象的名称中增加“/”,将该对象在OBS管理控制台上模拟成一个文件夹的形式展现。
四、AI Gallery
AI Gallery 是人工智能知识与实训的专区,也是优质AI资产(算法、模型、数据、论文等)的聚集地。
1. 入门课程
AI Gallery功能丰富。对于小白来说,目前最需要的就是系统地学习知识,打牢基础。 下图是AI Gallery为新手规划的学习路线。更多内容详情 成长地图
2. 资源共享
我们可以在AI Gallery上订阅官方及其他用户共享的模型、数据集、算法等。同时,我们也可以将自己的模型、数据集、算法等发布至AI Gallery,实现知识共享,互惠互利。