李亚洲 李泽南作者

NeurIPS 2018 AutoML挑战赛落幕:印度团队第一,清华第二

当地时间 12 月 3 日,AI 顶级会议 NeurIPS 2018 在加拿大蒙特利尔拉开帷幕,除了精彩的 Tutorial、Invited Talk、论文展示之外,NeurIPS 期间的竞赛同样吸引来自学术界、产业界的关注。

近日,由第四范式、ChaLearn、微软和阿卡迪亚大学联合举办的《The 3rd AutoML Challenge: AutoML for Lifelong Machine Learning》挑战赛落下帷幕。自 8 月份上线以来,本次赛事吸引了二百余支队伍参赛,其中包括 MIT、UC Berkeley、清华大学、北京大学等国内外顶尖高校,微软、腾讯、阿里巴巴等科技巨头,Rapids.ai 等新兴创业公司,以及一些来自开源社区的开发者。

「今年的 AutoML 竞赛赛题使用了新的问题设置,大数据、复杂数据类型,资源限制依然很大,」比赛组织者之一,第四范式机器学习架构师涂威威表示,「我们准备了一个简单的基线,令人惊讶的是,参赛者们的成绩远远超出了这个基线。此外,这次比赛吸引了大量国内外顶级研究机构的研究人员参与,比赛最后一个月竞争非常激烈。」

经过数月角逐,在 NeurIPS 大会正式开幕前夕,本次大赛公布了最终竞赛的结果:

最终,来自印度的团队 Autodidact.ai 取得本次竞赛的第一名,清华团队 Meta_Learners 获得第二名,来自中南大学、北京邮电大学和浪潮的 Grandmasters 取得了第三名。

本次竞赛包括两个阶段:

  • 反馈阶段(Feedback phase):代码提交阶段,参赛者可以在与第二阶段所用数据集本质相似的 5 个数据集上进行实践。参赛者可以进行有限次数的代码提交,可以下载标注训练数据和无标注测试数据集。也就是说,参赛者可以在家准备该阶段的代码提交。最后一次提交的代码将会到下一阶段进行最终测试。

  • AutoML 阶段(AutoML phase):盲测阶段,该阶段无需提交代码。上一阶段最后提交的代码将在五个新数据集上进行盲测。参赛者的代码将自动进行训练和测试,该过程没有人类干预。最后得分根据盲测结果而定。

因此,大赛官方也给出了反馈阶段的前三名:

第一名:来自微软、北京大学的团队 Deepsmart

第二名:清华、MIT 的团队 HANLAB

第三名:南京大学 PASA 实验室的团队 Fong

NeurIPS 2018 AutoML for Lifelong Machine Learning 竞赛结果以及团队成员名单。

大赛简介

在很多现实世界的机器学习应用开发过程中,由于机器学习专家数量稀缺,AutoML 显得非常有意义。此外,很多现实世界应用中的数据批次可能随时都在变化,数据分布随时间变化的速度相对较慢。这种情况为 AutoML 系统带来了持续学习或终身学习(Lifelong Machine Learning)的挑战。这类典型的学习问题包括客户关系管理、广告推荐、情感分析、欺诈检测、垃圾邮件过滤、交通监控、计量经济学、病人监控、气候监测、制造等。「AutoML for Lifelong Machine Learning」竞赛使用的大量数据来自于现实世界应用。

据官网介绍,与先前 AutoML 竞赛相比,该挑战赛更加注重概念漂移,而不是较简单的独立同分布情况。在比赛中,参与者需要设计一种可以自动开发预测模型的计算机程序(无需任何人为干预),这个模型需要在终身机器学习环境中进行训练和评估。

虽然,该竞赛场景相对标准,不过也有很多困难,例如:

  • 算法可扩展性(Algorithm scalability):竞赛提供的数据集大小是之前赛事的 10-100 倍。

  • 不同的特征类型(Varied feature types):包含不同的特征类型(连续、二元、顺序、类别、多值类别、时序),包含具备遵循幂定律(power law)的大量值的类别变量。

  • 概念漂移(Concept drift):数据分布随着时间会缓慢变化。

  • 终身环境(Lifelong setting):该竞赛所有数据集均按照时间顺序被分割为 10 个批,这意味着所有数据集中的实例批(instance batch)都是按时间顺序排列的(注意每一批中的实例未必按时间顺序排列)。将算法用于时间顺序的连续测试批,以测试算法适应数据分布变化的能力。测试结束后,标签将与学习机器相关,且被包含在训练数据中。

谈到概念漂移和终身学习环境对该竞赛难度的影响以及参赛者的解决方案,涂威威告诉机器之心,「概念漂移和终身学习的环境使得自动化机器学习变得更为困难,自动化机器学习不再是解决一个满足独立同分布的,只有一个训练集和测试集的静态问题,而是解决一个更加贴近实际业务的动态环境问题,数据分布会发生变化。由于数据不断的增加,资源有限,就需要更加精巧的算法如何更好地进行迁移学习。参赛者们从样本、特征和模型的角度都做了很多有趣的改进,比如会做时序特征,也会做样本的选择、模型的迁移等等。」

复杂的特征类型使得特征工程变得更加复杂和困难。在很多实际业务中,特征工程往往也是开发过程中更重要的部分。本次竞赛的获奖者们在自动特征工程上有非常多的创新。据介绍,除了常见的一些单特征处理之外,他们还做出了很多组合特征,前几名的队伍甚至做出了一些自动化的时序特征。

国内获胜团队解决方案

虽然第一名的解决方案还无法了解到,但我们已经获知国内两支参赛队伍在比赛中采用的技术。

据新智元报道,获得此次比赛第二名的清华大学 Meta_Learners 团队成员包括计算机系博士毕业生张文鹏、在读硕士生熊铮、在读博士生蒋继研,由张文鹏担任队长,朱文武教授担任指导教师。

在本次比赛中,Meta_Learners 团队采用了梯度提升(Gradient Boosting Tree)的方法,在传统的 AutoML 框架上,结合本次比赛数据的特性做了有针对性的设计:

  • 特征工程方面,参赛团队针对类别特征高基数、长尾分布的特点,采用了频数编码、中值编码等不同编码方式,以及离散化、分位数变换等处理技巧。

  • 迁移适应方面,针对数据存在概念迁移的问题采用了自适应的流式编码技术。

  • 资源控制方面,通过自动监测系统中各个组件的运算花销,并使用 Bandit 技术对搜索空间进行压缩和剪枝

该团队认为,AutoML 比赛的关键在于做好不同层次的权衡(Tradeoff)。

在比赛结果出炉后,排名第三的团队,来自中南大学、北京邮电大学等组成的 Grandmasters 向机器之心分享了自己的模型设计。该团队由来自中南大学的本科生常鉴耕担任队长,队员包括北京邮电大学的研究生柴金龙、赵亚坤,以及来自浪潮的 AI 工程师刘宏刚。

常鉴耕告诉机器之心,Grandmaster 团队采取的是基于单模型的 GBDT 的架构,主要创新点有如下几点:

  • 对原始数据的双重编码:由于数据是匿名处理的,我们无法判断原始数据的实际意义,也无法从业务逻辑上考虑特征工程。鉴于这些问题,我们放弃了自动化组合特征,采用了数据再编码的方法。我们对于原始数据使用 ordinalEncoder 以及 frequence 的两种方法进行编码。其中 ordinalEncoder 是序列编码器。其原理是将不同类别按照整数顺序进行编码操作。我们认为此种编码方式有简洁快速、可适用于多值类特征的优点,但其会给数据引入不必要的信息干扰。使得相关性未知的类别之间被编码赋予了已知的相关性。因此另采用了 frequence 编码的方式。我们通过观察数据的变化曲线发现,基于不同的 batch 之间,不同类别出现的频次不同,将特征的频次作为编码,可以保留一定的信息量。实验证明,frequence 编码大幅度提升了模型的性能。

  • 增量学习的引入:增量学习是将训练好的模型保存下来,所引入的新数据是基于上一个模型的基础下训练的。这种做法有效的将不同的数据分布引入到同一个模型训练过程中来,有效的改善了大赛重点提及的数据漂移现象,即数据的分布随时间变化导致的模型鲁棒性不高的现象。

  • 全量学习的使用:在 py2 赛道上,我们使用了全量学习的思维。即将所有的数据 batch 拼接起来,让模型可以学习到更多分布变化的信息。全量学习与增量学习的配合使用,使我们模型应对不同数据集的鲁棒性大大提升,并在 py2 赛道上斩获第一名。

  • 滑窗法的使用:py3 赛道上,由于时间的限制,我们放弃了全量学习,转而使用了滑动窗口采样的方法。秉着「时间越相近的数据越有相关性」的想法,我们保留了最后两个 batch,抛弃更远的数据,提升了运行速度。

  • 学习步长的调节:随着 batch 的叠加,我们使学习步长逐步增大,使得模型学习到更多信息的同时,保证了学习速率。

经过这一系列数据处理过程,我们对于数据进行了一个可迁移的深入挖掘。我们采用了 LightGBM 作为基本模型,并在构建模型的初期,使用 gridsearch 方法针对一个数据特征最为丰富的数据集进行调参。我们进一步在之后的调节过程中不断优化参数,使得 AUC 值稳步提升。

Top 战队解决方案详情将在现场分享会上呈现。

  • 时间:12 月 7 号下午 13:30 - 15:00

  • 地点:Room 518 Competition Track

小结

AutoML 技术作为一种通用机器学习技术,在未来应用的范围非常广泛。第四范式表示,AutoML 技术可以应用于金融、零售、医疗、能源、政府等行业中,并有效降低机器学习算法的门槛,加速人工智能在各行业落地。目前,第四范式等公司的 AutoML 技术已在上述领域中有很多落地案例了。

本次竞赛中,参赛者们提出的方案对 AutoML 在工业界的应用带来了一些启发,其中不仅包括新的思路,也提出了新的问题。希望随着更多交流的出现,人们能够进一步推动 AutoML 在学术界和工业界的发展。

赛事网站:https://competitions.codalab.org/competitions/19836

工程挑战赛AutoMLNIPS 2018NIPS
1
相关数据
微软机构

微软是美国一家跨国计算机科技公司,以研发、制造、授权和提供广泛的计算机软件服务为主。总部位于美国华盛顿州的雷德蒙德,最为著名和畅销的产品为Microsoft Windows操作系统和Microsoft Office办公室软件,以及Xbox的游戏业务。微软是美国《财富》杂志2015年评选的世界500强企业排行榜中的第95名。

https://www.microsoft.com/en-us/about
第四范式机构

第四范式成立于2015年初,是国际领先的人工智能技术与服务提供商,已服务20多个行业完成上千个AI落地案例。目前国内重要的国有银行和全国性股份制银行,超过一半都是第四范式的客户,此外,公司在互联网、医疗、政府、能源、零售、媒体等行业均有涉猎,诸多案例取得百分之一百以上的效果提升。

https://www.4paradigm.com/
增量学习技术

增量学习作为机器学习的一种方法,现阶段得到广泛的关注。对于满足以下条件的学习方法可以定义为增量学习方法: * 可以学习新的信息中的有用信息 * 不需要访问已经用于训练分类器的原始数据 * 对已经学习的知识具有记忆功能 * 在面对新数据中包含的新类别时,可以有效地进行处理

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

剪枝技术

剪枝顾名思义,就是删去一些不重要的节点,来减小计算或搜索的复杂度。剪枝在很多算法中都有很好的应用,如:决策树,神经网络,搜索算法,数据库的设计等。在决策树和神经网络中,剪枝可以有效缓解过拟合问题并减小计算复杂度;在搜索算法中,可以减小搜索范围,提高搜索效率。

提升算法技术

Boosting是一种主要用于减少偏差的机器学习集成元算法,也是监督学习的一个变化,是一种将弱学习器转换为强学习器的机器学习算法家族。 Boosting是基于Kearns和Valiant(1988,1989)提出的问题:一组弱学习器能创造一个强大的学习器吗?一个弱的学习器被定义为一个分类器,它与真实的分类只有轻微的相关性(它可以比随机猜测更好地标注示例)。相反,强大的学习器是一个与真实分类任意相关的分类器。

梯度提升技术

梯度提升是用于回归和分类问题的机器学习技术,其以弱预测模型(通常为决策树)的集合的形式产生预测模型。 它像其他增强方法一样以阶段式方式构建模型,并且通过允许优化任意可微损失函数来推广它们。

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

逻辑技术

人工智能领域用逻辑来理解智能推理问题;它可以提供用于分析编程语言的技术,也可用作分析、表征知识或编程的工具。目前人们常用的逻辑分支有命题逻辑(Propositional Logic )以及一阶逻辑(FOL)等谓词逻辑。

大数据技术技术

大数据,又称为巨量资料,指的是传统数据处理应用软件不足以处理它们的大或复杂的数据集的术语。

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

独立同分布技术

在概率论与统计学中,独立同分布(缩写为IID)是指一组随机变量中每个变量的概率分布都相同,且这些随机变量互相独立。一组随机变量独立同分布并不意味着它们的样本空间中每个事件发生概率都相同。例如,投掷非均匀骰子得到的结果序列是独立同分布的,但掷出每个面朝上的概率并不相同。

批次技术

模型训练的一次迭代(即一次梯度更新)中使用的样本集。

自动化机器学习技术

机器学习最近在许多应用领域取得了长足的进步,这促成了对机器学习系统的不断增长的需求,并希望机器学习系统可以被新手快速地熟悉并使用。相应地,越来越多的商业企业推出产品旨在满足这种需求。这些服务需要解决的核心问题是:在给定数据集上使用哪种机器学习算法、是否以及如何预处理其特征以及如何设置所有超参数。这即是自动化学习(AutoML)企图解决的问题。

推荐文章
暂无评论
暂无评论~