作为一个AI零基础开发人员,碰到了项目上的实际AI需求(图片物体检测),如何快速低成本训练出可落地的模型+方便集成的SDK?这篇博文记录了我们的体验过程。
1. 平台介绍
华为ModelArts介绍
官方主页:华为云ModelArts
2018年10月在华为云发布,主要提供自动学习、快速建模、标准开发等三大类服务,分别面向零基础、初学者或非AI专业人员、专业人员三类用户。
自动学习(零基础人员)
无需具备AI开发能力,开箱即用
提供最热门、成熟度最高的4种应用场景,标注好自己的数据集,不需涉及任何算法层面的内容,就可以直接开始训练,得到模型,直接部署上线。
快速建模(AI初学者或非专业人员)
与自动学习服务主要区别:
- 支持数据集管理
- 支持选择预置算法,配置作业参数
- 模型训练可视化
- 模型可发布到市场共享/售卖
标准模型开发(AI专业人员)
相当于提供了一整套AI开发脚手架,免去自行搭建开发环境、训练环境(算力资源)、管理和标注数据集、模型参数&版本管理、部署上线等繁杂的非核心工作。
可以理解为,为AI开发搭建了一套端到端的PaaS服务平台。
百度EasyDL介绍
官方主页:百度大脑EasyDL
2018年1月由百度大脑推出的零门槛AI开发平台,面向各行各业有定制AI需求、零算法基础或者追求高效率开发AI的企业用户。支持包括数据管理与数据标注、模型训练、模型部署的一站式AI开发流程,原始图片、文本、音频、视频等数据,经过EasyDL加工、学习、部署,可通过公有云API调用,或部署在本地服务器、小型设备、软硬一体方案的专项适配硬件上,通过SDK或API进一步集成。
EasyDL产品根据目标客户的应用场景及深度学习的技术方向,主要有以下6类产品:
- EasyDL 图像
- EasyDL 文本
- EasyDL 语音
- EasyDL OCR
- EasyDL 视频
- EasyDL 结构化数据
2. 图像AI之物体检测对比体验
第一步:素材上传
本次素材图片为动车机车零部件(直供电插座),形态单纯,颜色突出,属于辨识度较高的物体。数量都为26张。
- ModelArts
需要先上传到华为Obs文件存储服务(收费)中,再从Obs引入
支持JPG、JPEG、PNG、BMP四种格式图片 - EasyDL
直接在标注界面上面本地文件,免费存储
支持jpg,png,bmp,jpeg,限4m大小,不限张数
第二步:标注
- ModelArts
多边形标注:不支持
切图速度:慢
自动标注:不支持
切图时将整个界面置灰遮罩,体验不友好
- EasyDL
多边形标注:不支持
切图速度:较快
智能标注:支持(在手工标注大于10张之后可启用)
第三步:训练
- ModelArts
训练耗时:4m10s
特色:有训练阈值配置 - EasyDL
训练耗时:40m
特色:提供云服务和离线SDK两种应用类型
第四步:模型成绩
- ModelArts
准确率:100% 召回率:75% - EasyDL
准确率:100% 召回率:100%
成绩对比:
评估结果比百度差了一点(召回率),但训练速度比百度快非常多,应该是得益于华为云在GPU和自研Ascend芯片方面的优化
第五步:识别效果测试
- ModelArts
完美检测到物体,并框出位置区域
置信度:98.66%
耗时:20s - EasyDL
完美检测到物体,并框出位置区域
置信度:98.73%
耗时:13s
成绩对比:
检测结果都很不错,准确框选出物体的位置区域。说明图像识别的通用AI算法成熟度已经很高,可以让无AI开发能力的个人或开发商,借助云平台的通用算法和工具,快速开发出AI应用集成到自己的解决方案中。且数据采集和标注的成本并不高,此实验只标注了26张图片。
第六步:部署和收费
- ModelArts
免费发布为在线API服务(自动发布,无人工审核),按使用资源收费:
主要的计费项为模型训练和部署上线,都会占用计算资源 - 使用训练服务后,自动生成3个计算资源,免费体验10小时
- 未提供离线SDK服务,仅支持在线API服务形式
- EasyDL
免费发布为在线API服务(自动发布,无人工审核),按调用次数收费: - 对比来看:
百度的按次计费形式更友好,且每日有500免费额度,如果是用户规模小,可以长期免费使用;另外百度提供了离线SDK服务,扩展了落地场景
3. 对比结论(图像AI之物体检测)
类别 | 华为ModelArts(自动学习) | 百度EasyDL |
素材上传 | 需要使用OBS服务(收费) | 直接上传,免费存储 |
标注 | 不支持智能标注 | 支持智能标注,只需标注数据集30%左右的数据即可训练模型 |
训练 | 结果指标比百度稍差,速度快 | 指标强,速度慢 |
识别效果 | 完美检测,效率稍慢(20s) | 完美检测,较快(14s) |
部署和收费 | 按计算资源计费,10小时免费体验;无离线SDK服务 | 按调用次数计费,每日500次免费;提供离线SDK服务 |
总体来看,两家平台都能够支持0编码实现图像识别应用,物体检测的效果都很不错。百度EasyDL在计费友好度,操作体验,部署场景上要比ModelArts要好一些。
PS.百度在AI开发平台上除了EasyDL这样的低门槛方案,在集成开发框架(飞桨)、在线开发平台(Ai Studio)上也有比较成熟的产品,在算法支持能力和模型丰富度上,个人感觉积累更深入。而且百度提供了不少软硬件一体的解决方案(比如人脸识别开发板套件),生态扩展能力也强于华为。