写点什么

华为云田奇:云原生时代,视觉预训练大模型探索与实践

  • 2020-12-08
  • 本文字数:5216 字

    阅读完需:约 17 分钟

华为云田奇:云原生时代,视觉预训练大模型探索与实践

近日,在 Qcon 全球软件开发大会(深圳站)上,华为云人工智能领域首席科学家、IEEEFELLOW 田奇博士,作了题为“云原生时代,视觉预训练大模型探索与实践”的主题演讲,介绍了云原生时代华为云在 AI 基础研究、视觉预训练模型研发和行业实践,以及 AI 开发平台 ModelArts 的最新进展。



以下是田奇博士演讲要点:


随着企业数字化的转型,传统企业已基本上将业务从线下搬到了云上。其中,第一个阶段是将企业的业务简单地部署到云上,我们可以称之为 ONCLOUD,在这种形态下,通过资源池化,解决了 IDC 时代运维、部署、扩容的难题。但是,传统方法的过于厚重、烟囱式的架构,导致云对业务的价值还仅仅停留在资源供给阶段,未充分发挥出云计算的潜力。随着企业的数字化建设逐步迈入智能化阶段,企业需要充分利用云计算带来的红利,就需要让其业务能力内生于云,由现在的 ONCLOUD 进阶到 IN CLOUD 阶段,即基于云的技术架构来构建企业业务,通过构建多云、多中心的分布式架构以及敏捷、智能的企业数字化业务,将企业的数字化建设带入智能化新阶段。此时,云对业务的价值不再是简单的资源供给,还能够以应用为中心,为业务赋能。


一站式 AI 开发平台,加速行业 AI 落地,践行普惠 AI


华为云提供了一站式的 AI 开发平台,加速行业 AI 落地,践行普惠 AI。华为云对 AI 平台打造了四层体系,第一层是智能体;第二层是知识计算解决方案;第三层是 ModelArtsPro,针对专业应用开发套件;第四层是 ModelArts Fundamental。对于一站式的 AI 开发平台,主要聚焦在模型高效、数据高效以及知识高效。这些强大的 AI 服务,底层都是基于云原生容器的 Volcano 高效能调度引擎,而 Volcano 调度引擎将训练任务的效率提升了 50%。 


华为云 AI 基础研究进展


华为云长期扎根 AI 技术基础研究,在计算机视觉、语音语义、决策优化三个方向做了深入探索与研究。为此,我们针对数据、模型和知识提出了六个子计划。其中,针对模型包含两个计划,一个是针对大模型的模型摸高计划,提供极致的性能;第二是针对小模型的模型瘦身计划。针对数据提出了两个计划,一个是处理多模态的数据魔方计划;另一个是针对小样本学习的数据冰山计划。最后针对知识的高效提取,我们提出了两个计划:建造通用 AI 系统的万物预视计划以及学习一种新范式的虚实合一计划。在这些计划中,我们始终聚焦在模型高效、数据高效、知识高效等重点方向上。对于自主研发的一些新技术,比如自动学习、知识蒸馏、预训练模型等等,都会以即插即用的方式部署到华为云线上,助力 AI 行业落地。


在众多 AI 领域中,计算机视觉具有广泛的落地场景,在智能汽车、智能手机、无人机、智能眼镜等应用都有计算机视觉算法的身影。这些年随着计算能力和 5G 通信技术的极大提高,以计算机视觉为代表的大批 AI 技术,已跨越了早期仅在研究领域取得进展的阶段,过渡到了与社会环境协同发展、共同促进的阶段。未来视觉 AI 技术会在千行百业进行落地,比如政府、医疗、工业、能源、交通、物流、金融等等。但是,技术落地也面临着巨大的挑战,由于 AI 应用的碎片化、定制化等因素,极大地限制了 AI 在真实环境下的落地部署。为了解决应对 AI 碎片化等问题,我们提出了预训练大模型的解决方案,希望能用大量无标注的数据和更大的模型来实现更通用的 AI 系统。


在自然语言处理领域,这两年大规模预训练模型取得了突破性进展,但是预训练模型对算力有极大的需求,而且我们预计更大规模、更大参数的模型还会继续出现。因此,受到自然语言处理中预训练模型的启发,在计算机视觉中我们也希望构建通用的 AI 系统,为下游各种视觉任务提供一个高效的初始化模型。


现在主流的学习方式有两种,一种是监督学习,一种是强化学习。监督学习需要海量标注样本,泛化能力相对比较弱,另一种是强化学习,强化学习需要海量的试错,同样缺乏通用系统所需要的可适用性、可重复性以及鲁棒性。我们认为,自监督学习是迈向常识学习的关键步骤,但是目前自监督学习在视觉任务中的应用还不够成熟。过去,在数据标注、模型训练和输出阶段,分别要做大量的重复工作。未来,我们希望可以对计算机视觉或者自然语言处理任务构建一个通用预训练模型,仅通过下游少量的标注样本进行微调就可以高效完成任务,从而大量节约开发成本。


视觉预训练大模型研究和实践


接下来的报告,我会介绍一下我们在预训练模型方面的工作,主要是在自监督学习过程中预训练模型的一些进展。


自监督学习由于不需要任何人工标注便能够学习图像的内在表征,近年来受到了业界的极大关注。在没有人工标注的情形下,自监督学习需要预先设定一些预训练任务辅助模型学习。2016 年以前,一些预训练任务推动该领域出现了一些大的进展。自监督学习主要分为两种,一种是生成式,一种是对比式,近几年最新的一些工作大多是基于实例区分的对比学习。


基于实例区分的对比自监督学习在最近几年取得了极大的进展,在一些任务上刷新了现有自监督预训练任务的 SOTA 结果。最近我们在对比自监督学习方面有两项优化工作,首次实现了在 ImageNet 线性分类任务中达到全监督基线性能,并且在小样本分类上大大超越了之前的方法。然而,现有的自监督预训练模型仍然处于探索阶段,存在大量的问题未能够解决:现有的自监督预训练算法迭代缓慢,很难复制到大模型以及超大规模数据集;另外,相较于全监督学习,其特征表达在大多数下游任务上仅仅能获得与之相比拟的结果,其进一步的性能优势还有待挖掘。因此,如何利用自监督学习在超大数据集合,超大模型上获取更强的泛化性能将会是未来的发展方向。


在这里,介绍一下我们最新的几个工作,在对比自监督学习框架下,我们提出了基于邻域保持的混合图像增强,在业界首次提出了利用不同图像数据增强策略提升其泛化性能。过去,对比学习通常利用同一样本的不同数据增强生成正样本集合,并且把其他样本均视为负样本的策略,将样本特征的距离拉近或者拉远作对比学习任务,而我们首次提出了选取不同正样本的方法。同时,提出了基于局部领域混合增强的技术,把多个相似样本的特征拉近,不同样本的距离拉远。我们的方法在 ImageNet 线性分类评估上,TOP-1 的精度达到了 75.5%准确率,离监督学习基线 76.5%仅仅差了 1 个百分点。通过对预训练模型在小样本标注数据上进行微调(1%和 10%标注的数据),我们的精度达到了最好的结果。


接下来介绍一个我们今年刚刚完成的工作,基于等级化语义聚集的对比自监督学习框架。在上述工作的基础上,我们进一步发现即使显示地拉近语义相似性样本,特征表达的可分离特性并没有达到我们的预期目标,这限制了其泛化表征能力。自监督学习仍然存在优化困难,收敛速度慢等问题,为此,我们做了两点改进,第一,我们拓展了自监督学习算法中正样本数目,使得正样本集合能够更加高效的被聚集,同时避免受大量负样本优化的影响。第二,我们在浅层特征上引入对比自监督学习,通过精心设计的浅层优化目标加速训练过程,在浅层特征上实现了更好的可分离性,我们发现这些优势对小样本学习有极大的提升。从结果来看,我们在线性分类任务中达到了 76.4%的精度,首次达到了和全监督基线相比拟的性能,而且通过将预训练模型在小样本标注数据上进行微调,在之前的结果上又得达到了新的 SOTA,特别地,仅仅使用 10%标注,我们在 ImageNet 分类上达到了 75.1%的 TOP-1 精度。


上述两项工作都是在没有任何标签设置下完成的,更进一步,我们探索了如何把对比学习和数据标签高效地结合起来,通过引入图像真实标签来辅助对比学习,我们认为应该将自监督学习得到的表观特征和监督学习的语义特征相结合,它的本质是把表观相似和语义相似的样本距离拉近,将不相似样本的距离推远。从结果上看,这个工作在各个下游工作中(比如检测、语义分割、实例分割)的表现全面超越了以往的自监督和全监督的泛化能力。


华为云的第二个核心研究方向是如何设计高效的视觉识别模型,即模型高效。在这个方向主要聚焦两个方面,第一是如何设计神经网络模型,第二是在神经网络架构搜索中,如何在原子算子层面上进行搜索。关于神经网络模型设计,最初的方式都是手工设计的,这种方式经过高速发展后,也进入了一个瓶颈,因此从 2017 年开始,自动的神经网络架构搜索经历了一个迅猛发展的过程,也取得了一些可喜的成绩。但是搜索出的网络也面临几个问题,第一个问题,搜索空间仍然是手工定义的;第二个,搜索的卷积算子是人工定义的,而且相比于手工设计的网络,搜索的网络可迁移性也是比较差的。


我们在网络架构搜索上第一个工作是 P-DARTS,提出渐进的可微分网络架构搜索算法。之前的网络架构搜索面临着搜索网络和测试网络深度不一样的问题,在较浅的搜索网络中搜索出来的架构并不适合较深的测试网络。早期的方法直接加深搜索的深度,但是会造成显存爆炸的问题,并且导致搜索不稳定。为了解决这个问题,我们提出了两个思想,一个是搜索空间近似,第二个是搜索正则化。搜索空间近似,是指采用渐进搜索策略,逐渐加深搜索的深度;同时进行链接权重的学习,把权重比较小的链接运算都扔掉,这样减少了搜索空间。搜索正则化主要是对搜索得到的一些 skipconnect 的数量上的限制。从结果上看,我们把 P-DARTS 搜索的网络迁移到 ImageNet 上,在 ImageNet 分类任务上与基线方法相比提高了两个百分点。P-DARTS 网络搜索算法是在 P100 上完成的,大概需要 0.3 个 GPU-days。与去年同期的 DARTS 工作进行大致的比较,它的搜索时间是 4 个 GPU-days,而在性能和速度都有超越的情况下,我们的方法只需要 0.3 个 GPU-days。我们在架构搜索上的第二个工作是 PC-DARTS,这是业界搜索速度最快的网络架构方法之一,其主要思想有两个,一个是采用局部连接的思想来解决网络冗余的问题,第二个是采用边正则化的思想来解决网络搜索稳定性的问题。并且,这个工作首次在大规模图像数据集 ImageNet 上进行了神经网络架构搜索。


我们最新的一个相关工作是 GOLD-NAS,渐进剪枝的单阶段可微分搜索算法。这个算法主要的一个贡献是它打破了传统可微分搜索空间的诸多限制,因此大大增加了搜索空间的容量,并提出了单阶段优化策略和渐进剪枝的优化策略。从结果上看,在扩大的搜索空间中,算法不仅能够找到绝对性能更强的网络,也能找到具有更高性价比的网络。


我们第四个工作是卷积搜索,提出对卷积操作进行搜索,当前的模型搜索都是采用一些固定的卷积操作,比如 1×1、3×3 的卷积,这种方式限制了模型的性能。因此,为了将卷积的设计也纳入搜索的范围,这个工作提出了针对点云任务的基于数据驱动的模型搜索,同时对卷积的结构也进行了搜索,将来将进一步扩展到传统的图像领域。


我们最近两年在计算机视觉三大顶会 CVPR、ICCV、ECCV 大概发表了近百篇文章,基本进入视觉研究领域第一梯队,极大地提高了华为在计算机视觉领域的国际竞争力,同时有一些工作也获得了最佳论文和最佳论文提名。而且最新的算法已经逐渐部署到华为的一站式 AI 开发平台,在一些行业得到了广泛的应用,下面再介绍一下视觉任务的进展和在行业的实践。


第一个进展是图像分类技术,在 ImageNet 上,今年我们的分类准确率达到了 85.8%,而之前谷歌最好的精度是 85.5%。从今年 3 月份以来,我们在这方面一直保持着领先水平。


第二个进展是弱标注场景下的图像分类技术。在 WebVision 大规模弱标注的网络图像分类比赛中,大约有 5000 个类别的 1600 万张图像,有 90 多支参赛队伍竞争,华为云在分类准确率上取得了业界第一的水平。我们把图像分类技术应用到了一些传统行业,比如米旗蛋糕店。结果上看,我们的技术让商品整盘识别率达到了 99%以上的精度。另外,我们的模型训练时间小于一天,因此每天都可以进行模型更新,商品的识别时间也小于 1 秒。


第三个进展是图像检测、分割技术,在业界权威的目标检测数据集 MS-COCO 数据集上,不论是单模型还是多模型,我们都取得了今年业界第一的成绩。我们将检测、分割技术用到了医疗智能体,在今年新冠肺炎 AI-CT 辅助筛查中实现了自动智能检测,而且已经在各大医院成功部署。


我们第四个进展是多模态数据处理技术,相对于单模态,多模态具有天然的互补优势,比如在无人驾驶中除了图像的输入,还有激光雷达信号、GPS、图像分割的数据。在最权威的三维目标检测 NuScenes 数据上,我们提出的技术也取得了非常好的成绩,我们的结果比第二名领先了 3.1%。同时我们将多模态处理技术用在了深圳交通智能体上,实现对红绿灯控制的智能化,在交通总量相同的情况下将平均通行车速提高了 15%,将平均等待时间、延误时间下降了 17.7%。


最后介绍一下华为云一站式 AI 开发管理平台 ModelArts。ModelArts 有两个不同层次的版本,一个是 ModelArtsFundamental,一个是 ModelArts Pro。根据华为云在十多个行业常年的技术积累,ModelArts Pro 开发平台主要提供五大类的专业应用开发套件,包括文字识别套件、视觉套件、知识图谱套件、多模态开发套件、自然语言处理套件,还提供了四十多个行业级的高精度预置的算法, 包含数据准备、数据处理、 模型设计、模型管理及部署等等。


以上是华为云在视觉预训练模型上的一些基础研究最新进展和行业实践的案例,以及在华为云 AI 开放平台沉淀的一些工作。谢谢!


2020-12-08 20:162109

评论

发布
暂无评论
发现更多内容

人机交互系统(2

Java 程序员 后端

什么?JDK16刚刚又发布了?赶紧尝尝鲜

Java 程序员 后端

JavaScript 进制问题

空城机

JavaScript 11月日更

从架构演进的角度聊聊Spring Cloud都做了些什么?

Java 程序员 后端

用EasyRecovery怎么恢复电脑中已删除的视频

淋雨

数据恢复

什么是事务数据库?

Java 程序员 后端

从SpringBoot源码看资源映射原理

Java 程序员 后端

手慢无!2021 OceanBase 数据库大赛专属键盘等你来拿!

OceanBase 数据库

数据库 开源 架构 大赛 11月日更

从这五个方面看hashmap,新手一遍就能懂

Java 程序员 后端

京东秒杀系统是世界上最牛批的,不接受反驳!(1)

Java 程序员 后端

什么会导致Java应用程序的CPU使用率飙升?

Java 程序员 后端

用明道云实现与物流信息交互

明道云

传授一套月薪20k程序员的高薪秘籍

Java 程序员 后端

什么才是Java的基础知识?

Java 程序员 后端

今年面试大厂屡屡失败,一波三折最终入职拼多多java岗,我经历啥?(1)

Java 程序员 后端

从一道 LRU 算法题说到缓存淘汰策略

Java 程序员 后端

从三线城市公司跳槽美团关键,啃透了腾讯T8-3手写Java高级笔记

Java 程序员 后端

企业级的SaaS多租户微服务平台SpringBlade 项目,源码分享

Java 程序员 后端

京东秒杀系统是世界上最牛批的,不接受反驳!

Java 程序员 后端

今年面试大厂屡屡失败,一波三折最终入职拼多多java岗,我经历啥?

Java 程序员 后端

从筛选简历和面试流程讲起,再给培训班出身的程序员一些建议

Java 程序员 后端

以后面试再也不怕被问Java并发编程了,多亏了这本PDF电子书

Java 程序员 后端

京东员工被裁后哀叹:优化后连面试的机会都没有,每月还要还贷款

Java 程序员 后端

从JVM锁到Redis分布式锁,对小白十分友好

Java 程序员 后端

从内存分析局部变量与成员变量的区别(Java)

Java 程序员 后端

从头到尾说一次 Spring 事务管理(器),还不会你打我!

Java 程序员 后端

什么是分布式系统,如何学习分布式系统

Java 程序员 后端

什么!有一定的学习门槛你就学不好?Java多线程,从基础到并发模型统统帮你搞定!

Java 程序员 后端

今日话题:程序员,从培训班出来的都是垃圾?你们是怎么看待的

Java 程序员 后端

从单体式架构迁移到微服务架构

Java 程序员 后端

从美术生到程序员转型之路【我的故事】

Java 程序员 后端

华为云田奇:云原生时代,视觉预训练大模型探索与实践_AI&大模型_华为云_InfoQ精选文章