作者:lingzheng的Qian Yan
近年来,自学和学习和变压器在视觉领域发光。图像的预训练预训练大大减少了通过繁重的图像任务来减少标签工作,并节省了很多劳动力成本。NLP领域的Transormer技术在CV模型效应中的巨大成功也为Ali Group和Alibaba Cloud上的自学效果提供了很多想象力。创建了EasyCV多合一的视觉建模工具,建立财富和完美的自学算法系统并提供效果。SOTA的视觉变压器预训练模型,ModelZoo涵盖图像自我 - 训练训练,图像分类,测量学习,测量学习,对象,对象检测,关键点检测和其他字段,并为开发人员提供盒子的培训和推理功能。在效率方面还进行了 - 深度优化。此外,EasyCV已与Ali Lingjie系统兼容,用户可以轻松使用用户easyCV在阿里巴巴云环境中的所有功能。
经过充分的磨练,我们希望将EasyCV框架推向社区,以进一步为庞大的简历算法开发人员和爱好者提供服务,以便他们可以非常快速,方便地体验最新的图像自我 - 自我效力和变压器技术。自己的业务生产。
EasyCV设计背后的算法框架如何?开发人员如何使用?将来有什么计划?今天让我们了解。
EasyCV是一种基于Pytorch的Alibaba开放源代码的多合一视觉算法模型,并以自学学习和变压器技术为核心。EasyCV支持搜索,Amoy,Youku和Alibaba Group中的搜索BU服务,例如Alibaba Group中。同时,它还为阿里巴巴云上的几个企业客户提供服务。通过平台组件的形式,可以解决业务问题的需求。
项目开源地址:https://github.com/alibaba/easycv
在过去的两年中,基于没有准备的培训数据的自学和预训练技术已经迅速发展,各种视觉任务的效果与监督和培训的效果相当,甚至超过了需要大量的监督和培训的效果标签;另一方面,它在NLP字段中取得了很大成功。变压器技术进一步刷新了SOTA对每个图像任务的影响,其应用显示了井的爆发。作为两者的组合,监视视觉变压器也出现了。
行业自学和学习以及视觉变压器算法技术更新的迭代非常快,与此同时,它也给CV算法开发人员带来了许多麻烦。例如,相关的开源代码分散了。推理性能低,等等。阿里巴巴云PAI团队设置了一个灵活且容易 - 使用算法算法框架easycv,该算法easyCV系统地沉淀了SOTA的自我 - SOTA的suppervision算法和变形金刚预训练。模型。用户尝试最新的自我训练前培训技术和变压器模型来促进业务应用和着陆。
此外,PAI团队已经积累了深度学习培训和推理加速技术已有多年了,IO优化也已集成到EasyCV,模型培训加速,定量切割和其他功能中,并且具有自己的绩效优势。Cloud的PAI产品生态学,用户可以轻松地执行模型管理,在线服务部署和大规模的离线推理任务。
EasyCV体系结构图
EasyCV的基础引擎基于Pytorch,并访问Pytorch培训加速器进行培训加速器。该算法框架主要分为以下层:
EasyCV支持在本地环境中方便的操作和调试。同时,如果用户想执行大型生产任务,我们还支持Aliyun Pai产品部署的便利性。
无需从监督和学习中标记数据。比较学习的引入逐渐接触了监督和学习,成为近年来学术和行业关注的重点之一。ESYCV包括基于比较学习的主流自我 - 安排算法,包括Simclr,Moco V1/V2,Swav,Moby,Moby,Moby,dino.it还基于蒙版图像建模再现了MAE算法。此外,我们提供了一个完整的基准测试工具来评估自普比维斯预培训模型对Imagenet的影响。
基于系统的自我主题算法和基准工具,用户可以轻松改善模型改进,比较效果并执行模型创新。在同一时间,您还可以培训适合您业务的更好的预培训模型基于您自己的大量Unbexing数据的字段。
下表显示了基于ImageNet数据的预训练以及线性评估/Finetune对ImageNet验证集的影响的现有监督算法的影响。
结构.easycv提供了各种传统的CNN网络结构,包括Resnet,Resone,Hrnet,Darknet,Inception,Mobilenet,Genet,MNASNET等。随着视觉变压器的开发,变形金刚在越来越多的领域中取代了CNN,成为了一个back骨,该框架具有更强的表达能力。该框架实现了常用的VIT,SwintransFormer等,并引入了Pytorchimagememogemodel(TIMM)以支持更全面的变压器结构。
结合自我植物算法,所有模型都支持自我训练预培训和成像网络数据监督培训,为用户提供大量的预训练骨干。用户可以简单地在定义的下游任务中的框架前pre -pre -storage。中的下游任务中配置。
API方法
推理示例
1.如技术体系结构图的右侧所示,所有模块都支持注册,并通过配置文件配置自动创建。这允许每个模块通过配置灵活地组合和替换。以下以模型和评估器配置为例。用户可以简单地通过配置文件修改不同的主链,并通过模型结构调整了不同的分类头。支持用户在评估中指定多个数据集,并使用不同的评估器进行多指导器评估。
2.根据注册机制,用户可以编写自定义的颈部,头部,数据管道,评估器和其他颈部,头部,数据管道,评估器的模块,然后快速注册到框架,并通过配置创建并调用类型字段文件。
配置文件如下
在培训方面,它支持多款多卡和FP16加速训练和评估。
此外,对于特定任务,将针对框架。例如,自学训练需要大量的小图片进行预训练。EasyCV使用tfrecord格式数据封装小文件。下面的图是使用dali+tfrecord格式进行训练,并比较原始图片训练的性能。
正如一开始所述,EasyCV支持阿里巴巴集团的10+BU20+业务。同时,它满足客户定制模型的需求,并通过平台组件解决业务问题。
例如,BU使用100W图片的商业画廊进行自我训练的预训练,并且下游任务fineTune是根据预训练模型进行的,以实现最佳效果,这比比培训模型更有效地提高了1%基线模型。一个BU学生的数量使用自学预裁训练模型进行特征提取,并使用比较学习的特征来使用图像功能在同一图中执行混合任务。同时,我们还启动了公共云上类似图表的解决方案。
对于公共云用户,对于输入级别的用户,打开数据标签,模型培训和服务部署链接以创建流畅的用户体验,掩护图像分类,对象检测,实例分割,语义分割,语义分段,关键点在其他字段中,仅使用用户,需要指定数据,简单地调整人参可以完成模型培训,并可以通过一个单击部署来完成在线服务。对于高级开发人员,提供了笔记本开发环境,Yunyuan群集培训计划的支持,支持用户使用该用户使用该服务。定制算法开发的框架,并使用Finetune的预训练模型。
我们计划每个月发布发布版本。最近的路线图如下:
此外,在中间和长期,我们将继续投资以下探索方向。我们还欢迎反馈和改进建议以及有关各个维度的技术讨论。
项目开源地址:https://github.com/alibaba/easycv
如果您想了解更多的AI开源项目,请单击:https://www.aliyun.com/activition/big
原始:https://juejin.cn/post/710111282613924623