TPAMI 2021 | 深度赋智AutoDL系列竞赛世界冠军方案首次公开
导读:「深度赋智」斩获NeurIPS-AutoDL 2019系列竞赛总决赛世界冠军,在图像/音频/视频/文本/表格不同场景的十个数据集上稳定获得八项第一和均分第一。为共同推动AutoDL技术的快速发展,冠军方案的技术细节首次公开,最新相关论文已被人工智能顶刊IEEE TPAMI接收。TPAMI筛选极其严格,每年录用量仅200篇左右(当前影响因子17.861,在中国计算机学会认定的人工智能领域四个A类期刊中排名第一)。
项目地址:https://github.com/DeepWisdom/AutoDL
致力于用AI制作AI,「深度赋智」在AutoDL领域不断探索前沿科技方向,取得了全新的研究进展。近日,深度赋智联合厦门大学纪荣嵘教授团队首次公开AutoDL2019挑战赛冠军方案的研究细节,详细介绍了AutoDL竞赛中各模块组件(元学习器、数据注入器、模型选择、评估方法等)的设计与实现,以及竞赛中benchmark相关工作和AutoDL服务,并将竞赛中的完整代码进行开源。
目前,研究成果“Winning Solutions and Post-challenge Analyses of the ChaLearn AutoDL Challenge 2019“已被人工智能顶级期刊TPAMI录用。论文共同作者包括弗雷堡大学Frank Hutter、第四范式、联想集团、Paris-Saclay大学等学者及机构。AutoDL 2019-2020系列竞赛由国际人工智能顶级会议NeurIPS(神经信息处理系统大会)主办,是人工智能领域机器学习和计算神经科学的国际顶级赛事,历来备受瞩目。
近年来,深度学习技术在诸多领域获得了关键性突破。但是,多数深度学习模型的性能在很大程度上依赖于过量的模型设计策略。如果人类工程师想要让神经网络在特定的任务上取得理想的表现性能,就需要很好地选择和设计网络结构、学习过程、正则化方法及超参等。另外,随着任务的不同,工程师需要重复上述过程。因此,是否可以设计一种AutoML算法,能够在大量任务上以一致的良好性能进行快速学习,从而减少对人类专业知识的过度依赖?
大赛提供的各类基准数据集
NeurIPS-AutoDL 2019系列竞赛的初衷则是希望解决上述问题。竞赛提供了一系列可重用的基准数据集,要求参赛选手设计开发无任何人工干预的自动深度学习系统,并使用该系统解决包括图像、视频、语音、文本和结构化表格数据等多领域的全自动多标签分类任务。
论文指出,在有限时间和计算资源的限定下,使用通用的神经网络搜索(Neural Architecture Search)是不切合实际的,系统需要设计更高级的模块化组织,包括元学习器、数据注入器、模型选择器、评估方法等。这些高度模块化的组件对于元学习、集成学习和有效数据管理十分重要。「深度赋智」实现了一个基于平均排名、多任务执行和随时学习矩阵的AutoDL系统(系统架构参考下图),提供了将用户数据自动封装为系统输入的端到端开源工具包,以便用户快速使用AutoDL服务。
参赛解决方案的系统组件图
其次,论文总结了Top5参赛队伍的模型选择方案。我们从下表中看到,几乎所有方案都对5个领域使用了不同的方法。对于计算机视觉中图像和视频这两个领域,冠军方案主要采用了诸如ResNet及其变体等流行的主干网络,同时引入预训练模型和数据增强技术。对于语音域和文本域,采用了不同的特征提取技术,使用领域知识(如MFCC、STFT、截断)进行特征提取。对于表格域,将更经典的机器学习算法与智能数据加载策略相结合。
Top5 解决方案总结
同时,作者认为元学习、数据加载和数据增强是显著提升模型性能的三大关键技术。
- 元学习(Meta-learning):元学习包括迁移学习、训练前模型和超参数设置和选择。元学习对模型训练和预测的最终精度和速度都至关重要。
- 数据加载(Data Loading):数据加载是加速训练过程以获得更高ALC分数的关键因素。系统从三个方面改进了数据加载。首先,加速将数据解码为Numpy格式,同时对文本和表格数据进行批处理以加快转换速度。第二,对不同层次数据和特征管理采用缓存机制;第三,以渐进的方式提取视频帧。
- 数据增强(Data Augmentation):将快速自动增强、时间增强和ThinResNet34模型的分段配置分别作为图像、视频和语音数据的数据增强技术。
为了论证三大关键技术的有效性,作者做了消融实验进行对比,结果如下图所示。我们可以看到,元学习可以被认为是「深度赋智」解决方案中最重要的一个组成部分。分别移除数据加载和数据增强技术,也会使得模型性能降低。
三大关键技术消融实验结果
基于该AutoDL框架,「深度赋智」于2020年4月获得国际自动机器学习领域的顶级赛事NeurIPS-AutoDL系列竞赛总决赛世界冠军,在多领域测试集上取得了优异的性能表现,证明了该框架在不同场景的普适性。
总决赛Top9 ALC得分
总结
AutoDL的研究面临诸多挑战,例如时间和计算资源的限制、最优配置的搜索、网络结构的设计等等。尽管构建一个完全自动化的解决方案非常复杂,我们还是希望能够向一个相当统一的模块化体系结构靠拢。我们的消融研究表明,未来AutoDL在元学习和集成学习方面还可以进一步改进和优化。目前,「深度赋智」已将该研究成果应用于其自研的天机自动机器学习平台,已为零售/鞋服、工业、交易平台、金融等行业的多个头部客户提供了相应服务。客户数据表明,整套解决方案可大幅提高决策、推荐、搜索等任务的效果,并提升40%~60%的商业指标,为客户实现超过60%的人力成本节约和显著的净利率提升。
「深度赋智」与其合作学术团队已经在PAMI/NeurlPS/KDD/ACL/CVPR/ICCV/AAAI等顶会顶刊上发表了数百篇论文,拥有丰富的学术积累。对于天机产品的潜力与价值,深度赋智创始人兼CEO吴承霖认为:“以零售行业为例,零售行业近几年经过多轮的转化与升级,但成本管理难、销售额增长瓶颈、供应链效率低等多个痛点依然存在。「深度赋智」能全自动部署至线下多个零售触点,实现更低成本更高效率。”未来,「深度赋智」将继续探索前沿科技方向,助力AI技术在各个细分行业的落地,让AI创造更多的社会价值。
IEEE Transactions on Pattern Analysis and Machine Intelligence(IEEE TPAMI)是人工智能领域最顶级国际期刊,该期刊影响因子在人工智能领域的期刊中常年位居榜首,高达17.861,在中国计算机学会(CCF)期刊会议推荐列表中为A类。在人工智能领域会议论文日益增多的今天,TPAMI仍维持每年仅200篇左右的录用量(在中国计算机学会认定的人工智能领域四个A类期刊中排名第一)。
相关文章:

转: 如何实现jQuery的Ajax文件上传
【PHP文件上传】 在开始之前,我觉得是有必要把通WEB上传文件的原理简单说一下的。实际上,在这里不管是PHP,JSP,还是ASP处理上传的文件,其实都是WEB早已把文件上传到服务器了,我们只是运用上传处理函数来处理…

Mybatis遍历查询 ——foreach
第一步: 在xxxMapper接口中添加一个函数,返回一个list,这里的参数是一个integer类型的集合 public List<Emp> findEmpByList(Param("list") List<Integer> list); 第二步: 在xxxMapper.xml 中添加statement…

C#中如何获取注册表信息
实现方式:利用Microsoft.win32类提供的注册表类访问系统注册表获取ODBC数据服务列表。 具体实现: Microsoft.win32提供了RegistryKey类,用来访问系统的注册表。 ///定义注册表子Path string strRegPath "SOFTWARE/ODBC/ODBC.INI…

用 Python 实现隐身,我可以 | 文末福利
作者 | 李秋键头图 | 下载于视觉中国出品 | AI 科技大本营(ID:rgznai100)引言:视频和图像的隐身术是指在视频或者图像中中,在没有任何输入遮罩的情况下,通过框选目标体,使得程序实现自动去除视频中的文本叠…

改变myeclipse北京颜色
经常用 MyEclipse 写代码,时间久了会觉得白色的背景颜色很刺眼,于是乎便想要换一种柔和些的颜色来缓解视力疲劳,那么怎么样来修改 MyEclipse 代码编辑区域的背景颜色呢? 依次展开菜单 Window >> Preferences >> Gener…

redis 代理工具Predixy安装部署
PredixyPredixy 是一款高性能全特征redis代理,支持redis-sentinel和redis-cluster特性高性能并轻量级支持多线程多平台支持:Linux、OSX、BSD、Windows(Cygwin)支持Redis Sentinel,可配置一组或者多组redis支持Redis Cluster支持redis阻塞型命…

超级详细的 Python 数据分析指南
来源 | 算法进阶头图 | 下载于视觉中国前言:数据分析是通过明确分析目的,梳理并确定分析逻辑,针对性的收集、整理数据,并采用统计、挖掘技术分析,提取有用信息和展示结论的过程,是数据科学领域的核心技能。…

C#实现-移位加密
/* Filename: encrypt_string.cs Author : zhanghua Date : 2005-08-11 Fuction : input a strig and encrypt a string 加密后的字符串的第一个字符是原先字符串的最后一个字符, 其余的每一个字符是对应的原字符串中的前一个字符的值…

oracle相关操作
查看用户系统权限:select * from dba_sys_privs;select * from session_privs;select * from user_sys_privs;查看用户对象权限:select * from dba_tab_privs;select * from all_tab_privs;select * from user_tab_privs;修改数据库密码:alte…

Ansible批量安装mysql数据
1.构建安装目录mkdir -p /ansible/roles/mysql/{defaults,files,handlers,meta,tasks,templates,vars}defaults 默认寻找路径tasks 存放playbooks路径files 存放文件和脚本,copy模块文件搜索路径templates 模版存放路径handlers notify调用部分playbook存放路径vars…

C#在客户端和服务端操作Excel文件
一、在客户端把数据导入到Excel文件步骤1、创建Excel application对象,打开或生成Excel文件//服务端创建StringBuilder对象System.Text.StringBuilder sbnew System .Text .StringBuilder (); //指定客户端执行语言sb.Append ("<Script LanguageVBScript&g…

oracle数据库同步交换的方法
oracle数据同步方案与实现:如何在两个oracle服务器之间交换数据?来源:无忧模板 作者:网络编辑 更新时间:2010-08-09 18:10 点击:次 方案一:建立两个数据库之间的DATA_LINK,直接将新数据写入另一数据库方案二:使用SQL *…

让语音助手听懂方言,这个数据集能搞定
来源 | HyperAI超神经头图 | 来源于网络 侵删方言是语音识别技术发展中必须要迈过去的坎儿,那么如何让模型能够听懂和理解方言呢?使用优质的数据集是一种的方法,本文将介绍一个经典的方言录音数据集 TIMIT。随着科技的成熟,语音识…

Django内置Admin
Django内置的Admin是对于model中对应的数据表进行增删改查提供的组件,使用方式有:依赖APP:django.contrib.authdjango.contrib.contenttypesdjango.contrib.messagesdjango.contrib.sessions模板的context_processors:django.cont…

Puppet扩展篇1-自定义fact结合ENC(hirea)的应用实践
零基础学习Puppet自动化配置管理系列文档在大量节点加入Puppet之后,你至少会面临两个比较大的问题:1、由于节点数的增多,site.pp文件必然会编写更多的节点条目,以及节点包含的类。假设你用Puppet管理500个节点,存在三种…

C#WinForm制作异形窗体/控件
制作异形窗体或控件的思路一般都是想办法生成一个region,然后设置给指定的窗口或控件。生成region的方法有很多,最常用的就是从一幅图片生成,把该图片中的透明色部分“抠”掉,剩下的部分作为一个region。设置窗口或控件的region可…

谷歌提出纯 MLP 构成的视觉架构,无需卷积、注意力 !
来源 | 迈微AI研习社责编 | 寇雪芹头图 | 下载于视觉中国当前,卷积神经网络(CNN)和基于自注意力的网络(如近来大火的 ViT)是计算机视觉领域的主流选择,但研究人员没有停止探索视觉网络架构的脚步。近日&…

HttpApplication事件ASP.NET页面周期
学习吧少年........................... 修改中........... 当一次请求到达IIS 1、http.sys将请求发送到指定的应用程序池。 2、应用程序池再将请求交给池中的工作进程(w3wp.exe), 3、w3wp.exe根据请求URL的后缀,决定加载那个ISAP…

C#实现对象的Xml格式序列化及反序列化
要序列化的对象的类: [Serializable]public class Person{private string name;public string Name{get{return name;}set{namevalue;}}public string Sex;public int Age31;public Course[] Courses;public Person(){}public Person(string Name){nameName;Sex&qu…

outlook2010 打开总是提示“正在加载配置文件”
公司员工的电脑一打开OUTLOOK2010的时候,总是提示“正在加载配置文件”,要重新启动,还是无法打开,尝试了卸载和重装的方法也没有用.其实,只需下载一个windows search 4.0即可解决.转载于:https://blog.51cto.com/shidilun/1400227

腾讯云存储产品矩阵全面升级,发布三维生态战略
5月10日,腾讯云在北京举行存储产品战略发布会,发布了业界首款十微秒级的极速型云硬盘、业界首款突破百GB 吞吐的文件存储、以及业界首创能够10倍提升数据湖存储分析性能的对象存储三级加速器等新一代云存储产品矩阵。 同时,腾讯云还宣布将围…

围绕云计算 虚拟化技术又呈现新面貌
本文讲的是围绕云计算 虚拟化技术又呈现新面貌,【IT168 资讯】虚拟化技术的三项基本使命-即作为客户端技术,作为服务器技术和作为网络技术,如今正在围绕云计算理念相结合在一起。 起源于X86服务器的虚拟化技术已经快速扩展到存储和网络领域。…

C#字符串处理类
首先介绍一下常用的几个功能: Compare(str1,str2)——比较两个字符串 str1,str2的大小,如果大于返回正数,等于返回0,小于返回负数! IndexOf——定位字符串中第一次出现某个给定字符串的位置PadLeft和PadRight——在字…

linux严谨的telnet搭建并用防火墙开通与禁行
今天本打算练练防火墙iptables的东西,本想拿telnet的23号端口练手,没想到在敲实验的时候遇到了些曲折,经过一番努力,把本次实验过程生成文档。实验环境:rhel5.6及系统盘实验目的:通过iptables对telnet服务2…

孩子、老人与海豚,如何用 AI 伴他们走出孤独
“万里归来颜愈少。微笑。笑时犹带岭梅香。试问岭南应不好。却道。此心安处是吾乡。”苏轼的一首《定风波》道出老人心愿,道出人生百态,也道尽世间炎凉。当你走出万里,无论天涯或是海角,每个人的身上都带着自己独有的印记。这份印…

Linux之 手动释放内存
我们在进程中要怎样去描述一个文件呢?我们用目录项(dentry)和索引节点(inode)。它们的定义如下: 所谓"文件", 就是按一定的形式存储在介质上的信息,所以一个文件其实包含了两方面的信息,一是存储的数据本身,二是有关该文…

C#操作Excel导入导出
前些日子,有很多朋友说需要C#导出到Excel的代码,现共享给大家 /// <summary> /// 读取Excel文档 /// </summary> /// <param name"Path">文件名称</param> /// <returns>返回一个数据集</returns> …

中国安全态势越来越好,专访山石网科CSO蒋东毅 | 拟合
从无序中寻找踪迹,从眼前事探索未来。2021 年正值黄金十年新开端,CSDN 以中立技术社区专业、客观的角度,深度探讨中国前沿 IT 技术演进,推出年度重磅企划栏目——「拟合」,通过对话企业技术高管大咖,跟踪报…

《大数据、小数据、无数据:网络世界的数据学术》一 导读
前 言‖ 在“大数据”风靡的当代,学术研究中的“小数据”依旧不容小觑。随着绝对数据量的增加,学者们进行个体研究的能力却不断退化。因为他们从未距离研究对象如此遥远。新工具和新视角成为学术研究的必需品。但相对于“小数据”而言,“大…

UIView旋转角度
2019独角兽企业重金招聘Python工程师标准>>> 最近做一个视图的旋转、放大、拖动、拉伸,其他的都慢慢解决了,就是旋转之后各种问题不好处理,最终归结到旋转角度的不能获取,纠结了好几天,终于找到了获取旋转角…