摘要:全场景可扩展的分布式协同AI基准测试项目 Ianvs(雅努斯),能为算法及服务开发者提供全面开发套件支持,以研发、衡量和优化分布式协同AI系统。
本文分享自华为云社区《KubeEdge|分布式协同AI基准测试项目Ianvs:工业场景提升5倍研发效率》,作者 华为云|郑子木。
在边缘计算的浪潮中,AI是边缘云乃至分布式云中最重要的应用。随着边缘设备的广泛使用和性能提升,将人工智能相关的部分任务部署到边缘设备已经成为必然趋势。
KubeEdge-Sedna子项目,作为业界首个分布式协同AI框架,基于KubeEdge提供的边云协同能力,支持现有AI类应用无缝下沉到边缘,降低分布式协同机器学习服务构建与部署成本、提升模型性能、保护数据隐私等。
本篇文章为大家阐释分布式协同AI技术背景,研发落地三大生态挑战和社区调研报告,并对全新社区SIG AI子项目(于KubeEdge Summit 2022 重磅发布):全场景可扩展的分布式协同AI基准测试项目 Ianvs(雅努斯),进行介绍。该项目能为算法及服务开发者提供全面开发套件支持,以研发、衡量和优化分布式协同AI系统。欢迎关注Ianvs项目,持续获得第一手独家公开数据集与完善基准测试配套。开源项目GitHub地址:https://github.com/kubeedge/ianvs
01 分布式协同AI技术背景
随着边侧算力逐步强化,时代也正在见证边缘AI往分布式协同AI的持续演变。分布式协同AI技术是指基于边缘设备、边缘服务器、云服务器利用多节点分布式乃至多节点协同方式实现人工智能系统的技术。虽然还在发展初期,分布式协同AI成为必然趋势的驱动力主要有二。第一,由于数据首先在边缘产生,有大量数据处理需要在边侧运行。第二,由于边侧逐步具备AI能力,高阶数据处理需要在边侧运行。在实际应用场景中,以往常见的是云上训练、边侧推理模式,现在在各个场合已经频繁听到边云协同推理、边云协同增量学习、边云协同终身学习、联邦学习等协同模式,可以看到边缘AI向边云协同乃至分布式协同的演进正在发生。上述这些都使得我们有理由相信,分布式协同AI是大势所趋。
关于分布式协同AI的产业发展形态,根据Research Dive Analysis预测,全球边缘AI乃至分布式协同AI软件(算法、平台等)市场规模将从2019年的4.36亿美元增长到2023年的30.93亿美元。分布式协同AI解决方案市场规模比例显著大于服务。也就是说,与直接提供通用服务相比,结合行业解决方案可能是分布式协同AI商业变现的主要途径。至于与行业解决方案结合的话,据麦肯锡预测,边缘AI乃至分布式协同AI至少覆盖12个行业。可以看到,相关行业解决方案的市场领域多样化,通过产业链聚拢乃至垄断方式来收割商业价值无疑存在规模复制挑战。因此,从产业发展形态出发考虑,一家企业独大并不可取,与生态伙伴同行才有可能走得更远。
鉴于上述分布式协同AI技术趋势和产业发展形态,KubeEdge社区基于CNCF成熟治理模式,成立了KubeEdge SIG AI。其工作目标是基于 KubeEdge 的边云协同能力,提供具有低成本、高性能、易用性、隐私保护等优势的边缘智能平台。SIG AI工作范围包括:
1、 构建分布式协同AI框架,高效合理利用端、边、云的各类资源,并能根据负载和应用类型实时地进行模型调度,实现高性能和低成本兼备的边缘AI系统。
2、 构建分布式协同AI基准测试,识别AI系统中重要指标,帮助用户评估边缘AI系统的功能和性能,以衡量和优化分布式协同AI系统,揭露各应用场景的最佳实践。
3、积极与周边AI平台、边缘智能硬件厂商等伙伴开展合作,实现自动化的异构资源匹配,减少用户管理异构资源的工作量,提升AI 应用的部署管理维护效率。
02 分布式协同AI应用落地挑战调研报告
KubeEdge SIG AI及整个行业各个技术方案落地与成果转化到产业的进程正在紧锣密鼓地进行,大家也经常提到sedna进入质检、卫星和园区的案例。但仅凭技术是不足够完成落地和产业转化的。当前学界业界很多团队已经遇到各式各样的困难。社区从算法开发者、服务开发者和技术布道者三种边缘AI研发角色的需求出发,启动了边缘AI研发落地生态挑战问卷调研,希望进一步了解边缘AI方案落地与产业转化过程中遇到的,诸如研发资源难获取、工具链不完备等主要依赖社区分工与共享的生态挑战。
截止2021年9月20日已回收有效答卷180份。调研结果发现了20+生态挑战,问卷开放选项采集到49条补充意见和8条补充建议。
• 调研对象职业主要是工业界从业者(53.45%),其次是在校学生(31.03%)和学术界研究者(25.86%)。
• 调研对象的技术方向主要是边缘AI及其应用(55.75%)、AI及其应用(49.43%)、边缘计算及其应用(42.53%)。也有约四分之一的方向为云计算及其应用(25.86%),以及少量的其它方向(13.22%)。
基于调研结果已发布业界首份边缘AI落地生态挑战调研报告,可通过下方二维码扫描获取。我们也绘制了三种不同角色所反馈的生态挑战词云。
报告的重点内容简要介绍如下:
•对于算法开发者排名第一的挑战是实际业务数据集及配套算法难以获取,排名第二的挑战是重复部署整套端边云系统过于沉重。从中我们可以对于算法开发总结出研发资源支持少的生态挑战。
•对于服务开发者排名第一的挑战是通用方案整体性能不一定满足特定业务需求,排名第二的挑战是自研业务算法和系统方案周期长成本高。从中我们可以针对服务开发总结出方案选型成本高的生态挑战。
• 对于技术布道者排名第一的挑战是缺乏商业成功案例,排名第二的挑战是缺乏与现有方案系统对比,包括成本、部署要求。从各挑战中可以针对技术布道者总结出价值呈现晦涩理解难的生态挑战。
基于本次调研,我们从刚刚提到的几个挑战出发,进一步了解这个领域各位开发者的心声和行业痛点,探索可能的解决方案。
核心痛点I:业务数据集及其配套算法难以获取
在调研过程,算法开发者跟社区反馈得最多的还是业务数据集机器配套算法难以获取
• 正在打造边缘AI算法利器,有什么实际业务可以练兵吗,在哪找?
• 我认识一家边缘计算公司在做工业质检,质检靠谱数据有吗?可以先试一试。
•公开数据集太多,大海捞针翻到头都秃了。
• 数据集要么质量不太高,或者要么跟具体业务不太匹配……
• 真实、好用的数据集说起来轻巧,但新业务数据集找起来太累了吧。
• 也不知道找哪家公司合适;自己去买设备采集?
从中可总结出核心痛点:业务数据集及其配套算法难以获取,同时封闭测试环境难以跟上各类新业务孵化。同时看到第一个需求:分布式协同AI标准数据集和配套算法管理与下载,快速上手真实业务。
核心痛点 II:通用方案不满足特定需求
在调研过程,服务开发者跟社区反馈得最多的则是通用方案不一定满足特定业务需求。
•业务问题多得很……一宿一宿睡不着,天天挨客户骂,现场各种安抚疲于奔命。顶会论文?真的没有时间看。
• 现有测试数据和指标要求与实际业务差距过大。听说算法进展很快,但调研大半年,尝试很多算法,要真正能做进客户心窝里还是很困难的。
• 新业务不断产生,现有测试需要对应改进。但现有测试都是那几个玩具数据集和指标,基准固化后还不能改。亟需针对特定场景个性化配置。
• 场景很多,问题更多。针对不同场景甚至相同场景的不同算法范式要针对不同架构、接口和参数使用不同测试工具。这导致在不同边侧场景,进行各种测试实验非常繁琐。要规模化被迫采用简单技术。
•自研人力物力成本高,比如设备贵、人才高薪。挑战复杂难题?中小企业试试就逝世,不如交给大企业或者高校(躺)。
从中可总结出核心痛点:全场景多范式测试成本高、个性化场景的测试用例准备繁琐。同时看到第二个需求:个性化、全场景测试乃至自动化测试,对症下药并降低研发成本。
03 分布式协同AI基准测试Ianvs项目开源发布
针对上述痛点和挑战,KubeEdge SIG AI也为大家带来了一个全新的社区子项目 全场景可扩展的分布式协同AI基准测试工具 Ianvs来解决以上问题。借助单机就可以完成分布式协同AI前期研发工作。项目地址:https://github.com/kubeedge/ianvs
全场景可扩展的分布式协同AI基准测试工具 Ianvs
1、 针对业务数据集难以获取,数据采集与处理成本高的痛点,ianvs提供丰富AI生态,做到开箱即用。ianvs开源数据集与5+配套算法,覆盖预处理、预训练、训练、推理、后处理全流程,零改造开箱即用。
2、 针对封闭测试环境难跟上各类新业务孵化的痛点,ianvs提供可扩展开放工具链。测试环境管理实现自定义动态配置测试数据集、指标,告别封闭守旧的测试环境。
3、 针对全场景多范式测试成本高的痛点,ianvs提供全场景灵活切换。ianvs测试用例管理统一不同场景及其AI算法架构与接口,能用一套工具同时兼容多种AI范式。
4、 针对个性化场景的测试用例准备繁琐的痛点,ianvs提供低代码生成测试用例。ianvs测试用例管理基于网格搜索等辅助生成测试用例,比如一个配置文件即可实现多个超参测试,降低超参搜索时的繁琐重复编程。
Ianvs同步发布一个新的工业质检数据集PCB-AoI。PCB-AoI 数据集是开源分布式协同 AI 基准测试项目 KubeEdge-Ianvs 的一部分。 Ianvs 很荣幸成为第一个发布此数据集的站点,Ianvs 项目相关社区成员将PCB-AoI 公共数据集同时也放在 Kaggle和云服务上方便各位下载。PCB-AoI工业质检公开数据集下载链接请参见:https://ianvs.readthedocs.io/en/latest/proposals/scenarios/industrial-defect-detection/pcb-aoi.html
PCB-AoI数据集由KubeEdge SIG AI 来自中国电信和瑞斯康达的成员发布。在这个数据集中,收集了 230 多个板,图像数量增加到 1200 多个。具体来说,数据集包括两部分,即训练集和测试集。训练集包括 173 个板,而测试集包括 60 个板。也就是说,就 PCB 板而言,train-test 比率约为 3:1。进行了数据增强,将图像方面的训练测试比率提高到 1211:60(约 20:1)。 train_data 和 test_data 的两个目录都包含索引文件,用于关联原始图像和注释标签。
这里同步展示一个Ianvs在工业场景的案例。本案例是基于PCB-AoI数据集的工业质检。该案例基于工业视觉AoI设备输出视频图片,检测PCB板是否存在贴装异常。
案例提供了单任务学习和边云协同增量学习两种范式。在本案例的单任务学习范式中,数据全部上云,在训练阶段获得所有数据。在本案例的边云协同增量学习范式中,数据部分上云,训练数据分两轮提供。Ianvs除算法指标外,还可监控系统指标,如样本上云比例指标。测试的基础模型选用特征图金字塔网络FPN(Feature Pyramid Networks)。
基准测试结果显示,待测FPN算法F1性能在0.84-0.95波动。边云协同增量学习可节省近50%的上云数据量,同时获得10%以上的精度提升。如下图所示,增量前1处漏检:仅检出7处,增量后全部检出:检出全部8处缺陷。
Ianvs将提供开箱即用的数据集与配套算法,借助支持多场景范式切换和易扩展的工具链,以及测试用例的低代码自动生成能力,来降低开发者在分布式协同AI应用开发测试时的门槛,技术验证时间半年降低到1个月,提升5倍研发效率。
Ianvs发布之际在此也特别感谢社区10+初创单位。社区也持续募集在Ianvs项目上的合作伙伴,共同孵化开源项目、研究报告及行业标准等。
KubeEdge-Ianvs 初创单位
04 Ianvs未来工作展望
对于未来工作上,Ianvs项目希望进一步解决各位社区用户的问题。
首先,算法开发者们投票第二位的挑战是重复部署端边云系统费时费力的问题
• 只是想聚焦系统上的分布式调度而已,需要自己把迁移学习、增量学习、联邦学习算法啥的协同机器学习算法学一遍很痛苦
• 想聚焦系统上的AI算法而已,真需要写那么多系统代码,把整一套边云协同系统自己搭起来非常不友善
• 费力气搭系统,也不足以落地应用到工业界……工业界有些系统机制,包括模型管理和维护等,能为模型上线护航
• 好了,组里花大钱搭起来,系统和算法终于能用了,但眼看着一年过去,马上毕业来不及科研……AI系统的构建对于高校团队来说费时过长成本过高,简直大坑
• 很多公司已经有了,重复造轮子感觉憋屈。想在巨人肩膀上实现系统突破,搞大事情
因此第一项未来工作可以是实现工业级分布式协同系统仿真,提升方案研发效率。
另外一个未来工作,可以是关于技术布道者和最终用户的价值呈现问题
•缺乏与先前方案的对比。受众不明白什么是边缘,跟以前有什么区别
• 客户有数据,伙伴有研发,但因数据使用协议,数据无法出边缘,经常需要驻场调整
• 没有界面,缺乏demo,方案不直观,客户看不懂,没有吸引力
因此第二项未来工作可以是算法/范式测试排行与最佳方案展示,做好价值呈现。
Ianvs项目规划路标如下图。欢迎关注Ianvs项目,持续获得第一手独家公开数据集与完善基准测试配套。社区也持续募集在Ianvs项目上的合作伙伴,共同孵化开源项目、研究报告及行业标准等。开源项目GitHub地址:https://github.com/kubeedge/ianvs
Ianvs 项目路标
添加KubeEdge小助手微信putong3333, 进群和社群成员一起交流。
点击关注,第一时间了解华为云新鲜技术~