出品 | AI科技大本营(ID:rgznai100)【导读】12 月 5-7 日,由中国计算机学会主办,CCF 大数据专家委员会承办,CSDN、中科天玑协办的中国大数据技术大会(BDTC 2019)在北京长城饭店隆重举行。100+ 顶尖技术专家、1000+ 大数据从业者齐聚于此,以“大数据驱动智能+”为主题,聚焦智能时代大数据技术的发展曲线,围绕大数据与社会各行业相结合的最新实践,进行了深度解读和讨论。其中,热门的“自动化机器化学习技术与系统”论坛于12月6日拉开帷幕,作为本次论坛的开场嘉宾,江苏鸿程大数据研究院副总经理、南京大学PASA大数据实验室博士朱光辉带来了《自动化机器学习AutoML技术研究进展 》的主题演讲。核心观点:改变人工智能建模依赖专家的手工作坊式生产,打造人工智能建模的“数控机床”,利用机器替代人工实现AI模型的构建,大幅提升AI建模效率,降低AI技术门槛,加速AI应用落地。以下内容为演讲实录,由AI科技大本营(ID:rgznai100)整理:众所周知,机器学习与人工智能技术目前已经成为国家重要发展战略之一,各行各业都在积极向人工智能转型升级。著名计算机专家李开复曾预计,到2025年,AI将无处不在,“AI赋能行业”应用模式在未来将迎来高速成长。然而AI在行业应用落地时,却存在着专业人才短缺、技术门槛高、建模周期长等痛点,导致很多中小企业对人工智能望尘莫及。随着人工智能的普及,科技公司对人工智能的要求越来越高,人才成本、准确度、效率都影响着人工智能能否落地融入到日常的使用中。对人工智能应用的快速增长也进而催生了对影响人工智能水平的关键要素——机器学习方法的需求。正因此,自动化机器学习方法AutoML应运而生,利用机器替代人工完成AI建模,从AI for APP到AI for system最后到AI for AI,用人工智能的方法自动化完成AI模型的构建,大幅降低AI的使用门槛,从而提升建模效率。“自动化机器学习就好比构建一个AI行业的数控机床,以前靠人现在靠机器,多快好省的以自动化的方式生产AI模型。“朱光辉说,传统的AI模型训练往往要经历特征分析、模型选择、调参、评估等步骤,这些步骤需要经历数月的时间,如果完全没经验,时间会更长。而AutoML可以完全不用依赖人工专家经验,它可以依靠数学方法,人工智能算法理论由完整的数学推理的方式来证明,自动化完成模型自动选择和参数调优,最终实现实现端到端机器学习流水线的自动化设计。具体来说,就是给定通过输入数据集,在更短的时间内尝试更多的算法模型,寻找到最优或者满足应用精度需求的算法模型。而后针对特定模型,通过数据的分布和模型的性能,不断评估最优解的分布区间,实现对参数进行优化的目的。 AutoML不仅可以解决传统学习,还可以解决深度学习、终生学习。AutoML可以解决自动化特征工程、自动化模型选择、自动化参数优化等不同类型的任务,在类型和任务确定的前提下可以选择针对特定任务的AutoML方法,比如语言元学习、强化学习、遗传算法等等。南京大学PASA大数据实验室从2017年开始研究自动化机器学习,谈及具体取得了哪些进展,朱光辉从以下层面进行了介绍。基于强化学习的三阶段机器学习流水线,自动化设计算法框架。为了实现高效的机器学习流水线的自动化设计,提出基于强化学习的三阶段机器学习流水线算法的框架,主要包括——元学习阶段、强化学习阶段和集成学习阶段。针对强化学习阶段,将机器学习流水线自动化设计的问题抽象成强化学习问题,即将从开始到数据预处理,再到特征选择、算法选择的这样一个流水线抽象成强化学习的问题,再利用强化学习Q-Learning或者DQN等强化学习的方法来解决问题,最终自动地设计出一个最优的机器学习流水线。如下图所示,每个状态代表当前pipeline所处的阶段及当前阶段所选择的算法,不同阶段之间的算法可以跳转,但分类算法选择不可以跳过,因为只有先选择一个分类算法才可以解对应的分类问题。在既定的计算时间内怎么选择最优的流水线,最终由强化学习来自动决定。另外,元学习阶段通过收集多个数据集进行预训练,实现强化学习阶段实现热启动。集成学习阶段使用Stacking等集成学习方法对多个性能较好的机器学习流水线进行集成,进一步提升算法鲁棒性。在PAKDD 2018 举办的第二届AutoML国际竞赛,朱光辉带领团队从全球285支队伍中脱颖而出,取得了国际第三名的优异成绩。另外,为了提升AutoML算法的运行效率,团队研究实现了并行化的AutoML算法,支持分布式运行。基于集成学习阶段,开发PASA-AutoML系统平台实现端到端的机器学习流水线自动化设计。笼统来讲,PASA-AutoML对在验证集上表现良好的模型使用交叉验证,得到训练集以及测试集的预测作为新的训练集和测试集的特征;而后使用新的训练集训练一个高层分类器(逻辑回归),然后用高层分类器类预测新的测试集来得到最终的预测结果。朱光辉强调,为了实现AutoML的应用落地,将进一步将AutoML技术封装成一个完整的系统,叫做PASA-AutoML。PASA-AutoML性能优于目前国际上最好的开源自动化机器学习系统Auto-sklearn。,它不仅简单易用,而且支持更丰富的AutoML业务场景。,还支持超单优化的调优,而相比于单机算法,PASA-AutoML能够在更短的时间内取得更好的预测性能。基于自适应连续筛选的模型选择/超参调优。现实的应用场景中算法和模型的超单数的组合空间非常巨大,但可用的AutoML时间资源却是有限的,因此过滤出最有模型/超参数就显得尤为重要。将模型选择问题抽象成多臂赌博机(Multi-armed bandit)问题,将每个候选模型作为赌臂,并且为每个模型构建贝叶斯模型,而后在每一轮候选模型验证过程中,根据贝叶斯超参优化结果选择超参数,将表现较差的模型/超参数组合尽可能早地过滤掉,从而将更多的资源分配给表现较好的模型/超参数组合,从而提升AutoML计算效率。基于终身学习场景,围绕自动化特征编码、自动化特征组合、自动化特征选择进行规范自动化特征工程以及增量学习技术,提出基于时间窗口的自适应同时加权集成学习算法,最终实现能够自动捕捉数据集特征的变化,实现模型的动态更新自适应地设计出模型的目的。也正是通过这个技术实验,南京大学PASA大数据实验室在NIPS 2018举办的第三届AutoML国际竞赛中从全球348支参赛队伍(包括清华大学、北京大学、麻省理工学院、UC Berkeley等国内外知名高校以及微软、腾讯、阿里巴巴等科技巨头公司)脱颖而出,取得国际第三名的优异成绩。基于时序多表关系型数据集,构建高效有效机器学习模型。在实际生产环境下,数据往往分布在多个关系数据表中,而多表自动关联后,特征维数急剧膨胀。这时,采用基于采样的自动化特征选择方法可以有效降低内存开销;除此之外,还可以采用基于多次采样数据的集成学习方法,将LightGBM作为学习器,并利用贝叶斯优化进行超参数调优。而在KDD Cup 2019数据挖掘国际大赛中荣获TOP10优胜奖(全球860多支参赛队伍),体现了该技术在解决时序多表关系数据AutoML正是AutoML能够高效利用关系型数据的有效性有力佐证。 基于多保真度优化,提出优化深度神经网络超参算法。在多保真度优化层面,相比于传统的机器学习,深度神经网络训练时间开销较大,对应地,深度神经网络超参调优的时间开销也会大幅度提升。而为了提升深度神经网络超参优化效率,团队提出多保真度优化和early-stopping机制相结合的算法,在多组采样数据集上高效评估超参数组合性能,同时具备良好的anytime performance和final performance。 随着AutoML越来越火,越来越多的人开始尝试将AutoML和时间序列数据集、自然语言文本数据集以及语音数据集关联起来,通过自动化的方式解决语音自动化分类或者文本的自动分类问题。朱光辉所在的团队参加了在ACML 2019举办的第一届AutoSpeech国际竞赛,并获得第一名,并获邀至在加拿大举办的NIPS 2019做技术分享报告。AutoSpeech作为NIPS 2019 AutoDL自动化深度学习系列挑战赛之一,吸引了广泛的关注。该赛事的指标是图里阴影的面积,它是性能和时间的积分,叫做性能的时间函数。这个指标不仅要考虑性能,而且要在更短的时间得到性能优异的模型内出结果。因为做AutoML算法要考虑其通用性的特点,比如音频数据集可能涉及3个甚至100个类别,音频时长不同,数据集的特征不同,但是算法要涵盖不同数据集的特点,做通用的解决方案。首先,针对不同数据集,制定通用解决方案,语音特征选取MFCC、梅尔频谱,文本就是数据选取用TF-IDF特征快速出结果,再用Embedding提升最终性能,从而构建的递增式学习框架。根据评价指标,团队设计了一个比较个性化的框架,先用简单的模型,逻辑回归模型快速得出结果,再用复杂的模型,如神经网络CRN或LSTM得到较高的性能。根据这样一个评价指标先用简单的模型快速得出结果,再用复杂的模型提出最终的性能,用增量的学习框架解决这个问题。团队还为该模型做了一个集成学习的方法,每个模型会一直维护 top3 的小集成,在通过求大集成和小集成的平均率得到最终的效能。在一些数据集下用传统的机器学习算法就已经达到了很好的性能,出结果很快,不到几秒就能达到性能上限,说明做文本分析或语音分类解决实际问题时不一定上来就用神经网络,可以选择比较好的特征,用传统的机器学习模型探索,再逐渐应用深度学习网络。此外,朱光辉还表示南京大学PASA大数据实验室下一步的重点是做自动化特征组合的相关工作,他们发现,各种比赛的特征组合对于提高最终的性能非常有帮助,所以其首要工作就是自动化的特征组合。第二,将聚焦于AutoML的效率方面,提高AutoML效率也是一个非常关键的问题,比如可以通过采样提高性能,或通过减少迭代次数提升大数据的AutoML性能。在和华为的一项合作项目中发现,做自动化机器学习技术时不仅考虑模型性能,还要考虑模型的复杂度,比如华为很多算法部署在基站信号塔里,所以要考虑模型的复杂度和性能优化的问题。第四是AutoML+图像、文本、语音、时间序列。PASA大数据实验室也正在研究自动化半监督学习,让用户只需要部分标注数据就可以实现自动化建模。“如今,我们的技术已经被华为、360广泛使用,有非常广阔的市场空间,我们的团队成立了研究院江苏鸿程大数据研究院,加快科技成果转化。”谈及未来,朱光辉说,“我们还将进一步开发完善AutoML平台,面向细分行业提供定制化分析的AutoML产品或服务,以自动化和高效易用的方式,支持行业大数据智能化分析建模与应用的快速开发。“而我们也坚信,让AI惠及更多的行业和企业,以此让AI真正普及并赋能行业应用。”(*本文为AI科技大本营整理文章,转载请微信联系 1092722531)