通过ModelArts自动学习能力实现AI应用(图像识别)实践【玩转华为云】
【摘要】 在当今快速发展的技术环境中,人工智能(AI)和机器学习(ML)已经成为推动创新的关键力量。随着这些技术的普及,越来越多的企业和个人开发者开始探索如何将AI集成到日常应用中,以解决实际问题并提升效率。作为一名对AI充满热情的技术爱好者,我一直渴望找到一个既有趣又能体现AI价值的项目。因此,我选择了构建一个“比熊识别”应用程序作为我的实践案例,不仅因为比熊犬是我最喜欢的宠物之一,而且这个项目也提供了一
引言
在当今快速发展的技术环境中,人工智能(AI)和机器学习(ML)已经成为推动创新的关键力量。随着这些技术的普及,越来越多的企业和个人开发者开始探索如何将AI集成到日常应用中,以解决实际问题并提升效率。作为一名对AI充满热情的技术爱好者,我一直渴望找到一个既有趣又能体现AI价值的项目。因此,我选择了构建一个“比熊识别”应用程序作为我的实践案例,不仅因为比熊犬是我最喜欢的宠物之一,而且这个项目也提供了一个完美的机会来体验华为云提供的ModelArts自动学习能力和低代码开发平台——Astro的强大功能。(实话实说,比熊是真的可爱,我家的比熊就像个小公主,哈哈~通过该案例的实践,大家可以训练更庞大的数据集,毕竟千篇一律嘛~)
选择ModelArts与Astro的原因
ModelArts是一个一站式AI开发平台,它集成了数据处理、模型训练、部署和服务管理等功能,使得即使是非专业开发者也能轻松上手。
而Astro则是一款基于浏览器的可视化编程工具,允许用户无需编写大量代码就能创建复杂的AI应用程序。这两个平台结合在一起,为我这样的开发者提供了前所未有的便利性和灵活性。
本文将介绍如何通过 ModelArts 和 Astro 轻应用实现 AI 应用落地,并以一个物体检测应用为例进行演示。本次实践基于华北-北京四环境。
准备工作
在开始之前,首先需要准备一些基础材料:
- 硬件环境:一台可以连接互联网的计算机。
- 软件环境:安装了最新版本Chrome或Firefox浏览器的操作系统;注册华为云账号,并开通ModelArts服务。
- 数据集:收集足够数量且质量良好的比熊犬图片用于训练模型。可以通过公开的数据集或者自行拍摄获得。
第一步:ModelArts 训练并部署模型
使用 ModelArts 的数据处理功能,对原始数据进行预处理和标注,生成训练所需的数据集。通过自动学习对数据集进行训练并发布部署模型。
数据是 AI 应用的基础,要构建一个高质量的 AI 模型,首先需要有一个高质量的数据集(在 GPT 时代数据集也许无需标注,但要求更高的质量和多样性)。ModelArts 提供了数据处理功能,可以帮助用户对原始数据进行预处理和标注,生成训练所需的数据集。ModelArts 也提供了自动学习,就算您是零基础的 AI 小白,根据教程点点鼠标就能训练出自己专属的模型。
1.登录 ModelArts 控制台,在左侧导航栏中选择“自动学习”,进入自动学习页面并点击物体检测创建自动学习任务。(PS:由于下载的数据集默认在新版数据集管理中,无法一键创建自动学习任务,我们可以在自动学习页面用下载的数据集来创建新的数据集进行自动学习)
这里我要补充说明下:在创建项目的时候有个前提就是你得先创建数据集,我们可以通过OBS来上传,如下图所示:
01在OBS上创建和上传相关材料;
02创建数据集,路径使用刚创建的obs路径:
03创建数据集后我们需要等待一段时间将数据导入,看数据大小,我这边100份图OBS只需要1分钟左右:
04接下来就可以创建物体检测项目了,这里我们选择了限时免费训练规格(其他参数自定义即可):
05创建完成后,我们将进行训练学习,训练学习的步骤可分为6项,分别是:数据标注、数据集版本发布、数据校验、物体检测、模型注册、服务部署。如下图所示:
05-001首先第一步:数据标注,点击【数据标注】下的【实例详情】按钮,跳转至实例详情页面:
05-002单击开始标注进行图片标注(这里我们先创建标签并手动进行5张图片的标注,然后可以选择智能标注):
05-003进入智能标注后,我们等待时间即可(这里我9张图花了5分钟时间,标注的效果其实还不错的):
05-004复核标注信息,这里我们可以选择【快速复核】,快速复核会直接展示标注信息,如果你看到某张图标注有问题,可以点击进入进行修改调整重新标注;
05-005完成确认后,点击发布即可(版本默认设置为v001);
05-006然后下一步我们返回【自助学习页面】点击进行【继续运行】进入到下一步:【数据集版本发布】:
05-007【数据集版本发布】成功够将会自动进入下一步【数据校验】,这里我们等待这即可,无须操作(华为云提供了[限时免费]的训练资源规格:GPU: 1*GP-Vnt1(32GB) | CPU: 8 核 64GB):
05-008【数据校验】成功够将会自动进入下一步【物体检测】,这里我们同样只需等待即可:
当然,如果等待过程如果你想查询进入,我们可以前往【实例详情】页面进行查看:
在运行日志中,我们可以直观的看到相关进度:
05-009在【物体检测】跑完后,我们可以在实例运行界面查看数据评估,这里他会给出综合评估(从多个角度评价模型,并给出一定的调优建议。)。这里我的模型跑出来人建议如下所示:
- 目标框面积占比对bixong的召回率有重大影响,在不同特征区间上mAP的方差为0.400。建议使用Balanced Loss来进行目标框回归计算。
- 目标框清晰度对bixong的召回率有重大影响,在不同特征区间上mAP的方差为0.400。建议在训练时,添加针对此特征的数据增强。
- 目标框亮度对bixong的召回率有重大影响,在不同特征区间上mAP的方差为0.331。建议在训练时,添加针对此特征的数据增强。
05-009接下来我进行【服务部署】,这里计算机规格可以选择(免费)的哟(选择免费规格的话需要开启自动停止配置,且时间只能选择1小时,否则会部署失败);
05-010等待部署成功之后可以进行预测调试。在线服务将AI应用部署为一个Web Service,并且提供在线的测试UI与监控能力。(这里我再强调下:免费实例 1 小时之后就会自动停止,如需不间断运行只能使用付费运行或者使用脚本维持。)
这里,请记住服务 ID,比如: 26078a82-1da1-443c-a98b-9516ae422815,请保存调用指南中的 API 地址,前面一串数字是 模型Apig-Code,服务ID也就是后面那串数字是 模型Id。
ModelArts 的数据处理能力展现了其在灵活性、效率和易用性方面的显著优势,为用户提供了强大的支持:
多样化的数据与标注类型:无论是图像、视频、音频还是文本,ModelArts 都能处理,并且支持分类、检测、分割等多样的标注需求。这种广泛的支持确保了无论您的项目涉及何种数据形式或任务类型,都能找到合适的解决方案。
智能化与协作式的标注流程:通过集成智能标注特性,ModelArts 能够利用预设或定制化的模型自动完成数据标签化工作,大幅减少了人工投入的时间与成本。同时,平台还支持团队成员间的协同作业,允许多人共同参与数据标注过程,并内置了评分与反馈机制,确保了标注结果的一致性和精准度。
灵活的数据存储选项:为了简化数据管理并提升使用便捷性,ModelArts 提供了两种主要的存储方案——OBS(华为云对象存储服务)和本地存储。前者适合需要安全、稳定地保存大量数据的场景;后者则针对快速上传下载的需求设计,提供了即时可用的临时存储空间。
第二步:Astro 轻应用集成 ModelArts 在线服务
使用 Astro 轻应用的轻应用功能,通过拖拉拽的方式搭建应用界面,将 ModelArts 的模型服务接入 Astro 轻应用的连接器,实现应用的前端展示和交互。
应用是 AI 应用的载体,要构建一个高品质的 AI 应用,需要有一个高品质的应用界面,并能与 AI 模型服务进行有效的交互。Astro 轻应用提供了轻应用功能,可以帮助用户通过拖拉拽的方式搭建应用界面,并将 ModelArts 的模型服务接入 Astro 轻应用的数据源,实现应用的前端展示和交互。
步骤开始咯
01登录 Astro 轻应用控制台,在左侧导航栏中选择的“应用”,点击“新建低代码应用–新建空白应用”。
02根据流程,我们先配置好应用名称,和图标:
03Astro 通过集成 ModelArts 连接器,实现了调用 ModelArts 在线服务。以前在没有 ModelArts 连接器的时候,我们需要自行开发 AKCK 鉴权、ModelArts API 调用、OBS 文件上传等等。现在我们要将Astro 集成 ModelArts 连接器,我们的环境默认是没有配置好的 ModelArts 连接器,需要开发者自行配置,我们可以导入下面的实例安装包,再进行连接器配置。
实例安装包:https://appcube-ai-temp.obs.cn-north-4.myhuaweicloud.com/CNAMEO__EI-0.0.1-beta.zip
04配置好连接器,我们可以在这个页面对在线模型检测简单的测试。
为了方便大家的学习和操作,我这边附上官方的教学视频:
低代码 AI 实战营: https://bbs.huaweicloud.com/live/cloud_live/202212151900.html
05接着进行拖拉拽开发页面,这里就不多说,重要的还是自己去动手实践。
完成开发后,大致的实现效果如下所示:
Astro 轻应用不仅是一套工具,更是一种全新的开发理念,它通过一系列创新特性,为开发者和业务人员提供了前所未有的便捷性和灵活性。
多样化应用场景:无论是构建轻量级应用、行业定制化解决方案还是大型业务展示平台,Astro 都能完美适配。从日常办公到人力资源管理,再到运营协同与项目管控,Astro 涵盖了企业运作的方方面面,确保每个需求都能得到精准满足。
直观易用的界面设计:借助拖拽式的页面编辑器,即使是没有编程背景的用户也能轻松创建出功能完备的应用界面。丰富的组件库、预设模板以及可视化工作流编辑器,让用户能够迅速将创意转化为现实,无需一行代码。
强大的数据整合能力:Astro 支持多源数据接入及服务编排,可以无缝集成来自 ModelArts 的机器学习模型服务或华为云及其他第三方提供的各种服务。这一切都可以通过图形化的界面完成配置,让复杂的数据处理变得简单直观,实现从前端交互到后端逻辑的全面贯通。
高效的应用部署与管理:一键发布功能支持多种终端形式——PC 端、移动端、微信小程序/H5 和 WeLink 集成等,同时提供详尽的应用性能监控、使用统计和分享选项,确保每一个上线的应用都具备高度的可用性和稳定性。
总结与展望
以上便是我个人关于通过ModelArts自动学习能力和低代码平台Astro实现“比熊识别”的AI应用实践经历。希望这篇文章能够为同样对AI感兴趣的朋友们提供一些有价值的参考。如果你也有兴趣尝试,请不要犹豫,勇敢迈出第一步吧!
当然,通过这次实践案例,我深刻体会到了ModelArts和Astro所带来的巨大便利。它们不仅大大降低了AI开发的技术门槛,也让普通开发者有机会参与到这场科技变革之中。未来,我希望能够继续深入研究这两个平台的更多特性,并尝试将其应用于更广泛的领域。此外,随着AI技术的不断发展,相信会有越来越多类似ModelArts和Astro这样优秀的工具涌现出来,为人们的生活带来更多惊喜和改变。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)