社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

自动机器学习的机遇与挑战

战略前沿技术 • 3 年前 • 608 次点击  


电话 | 010-82030532    手机 | 18501361766

微信 | tech99999    邮箱 | yw@techxcope.com




来源:探臻科技评论
作者:关超宇


主要学术贡献

当前的人工智能领域有越来越多的研究关注于如何让计算机自动设计针对目标问题和场景的机器学习算法,这一领域被广泛地称为自动机器学习。

作为人工智能研究方向的新秀,自动机器学习为领域描绘了美好的未来,但也面临包括空间设计不够灵活、算法可靠性差、适应新领域的能力差等一系列挑战。本文将着眼于自动机器学习的基本问题,从表达能力、算法一致性、泛化性、统一开源平台等方面逐一分析当前自动机器学习所存在的不足,并给出我们的解决方案,进一步提高自动机器学习相关算法的性能和效果,利用自动机器学习相关技术,为社会创造更大的应用价值。


导语

人工智能技术已经给社会带来巨大应用价值。然而,当前的人工智能算法泛化性问题逐渐突出,在固定场景、固定数据集上训练出的机器学习模型,并不能解决现实生活中日新月异的新数据、新场景、新问题。由此,自动机器学习应运而生,让计算机自动适配变化的任务场景。相比于传统的通过领域专家的先验知识和手工调试来设计模型的方式,自动机器学习能够大大减少实际研究和应用过程中对模型设计的人力物力资源消耗。并且,由计算机自动学习出的模型超参数和实际人物之间的关联,往往要好于人类自主归纳的结果。由机器自动发现的最佳模型,已经在各个领域逐渐赶上并超过了手工设计的模型,并被各大公司广泛应用于现实场景的模型部署中。


01 自动机器学习的发展概况


       


人工智能技术在二十一世纪取得了重大技术突破,巨大的算力和海量的数据让深度学习如虎添翼。目前,人工智能已经在包括图像处理、自然语言理解、社交网络建模、游戏对抗等社会的各个方面创造了巨大的应用价值。 然而,当前的机器学习算法往往包含众多超参数来控制学习过程和推理过程中的精细实现,算法的性能对超参数十分敏感,这对机器学习更进一步的发展和落地造成了巨大阻碍。在深度学习蓬勃发展的今天,机器学习所需要确定的超参数变得越来越多,人工智能工程师们需要选择正确的神经网络架构、优化方法、正则化方法和他们对应的超参数,才能让所设计的人工智能算法发挥更好的效果。而这一过程即使对于领域内人工智能专家来说,也将是复杂繁琐的。只有经过多次实验、勤于归纳和总结,才能得到一个相对来说较为优秀的人工智能系统。

自动机器学习的诞生便是为了解决这一巨大挑战,旨在让计算机仅仅根据目标任务和数据集来自动化设计最合适的人工智能算法和它内部的所有超参。这是一种完全由数据驱动的、客观的、自动化的机器学习分支。有了自动机器学习系统,工程师或者用户只需要提供数据,就能够由该系统自动化地得到对目标应用的算法最佳实践。一方面,自动机器学习的出现极大降低了人工智能领域的应用门槛。即使是没有背景的使用者,也能够利用先进的机器学习方法完成他们的目的,而不用了解内部的细节。而另一方面,机器学习算法设计的效率和效果也得到了进一步的提升,而且由于所有工作均由计算机负责,应用成本也会大大下降。事实上,自动机器学习领域的发展已经初有成效,甚至在某些情况能够超过人类手工设计和调试的结果。各大公司如Google、微软等,也搭建了自己的自动机器学习系统,来帮助他们节省应用成本、提高应用效率、扩大应用覆盖面。

图1 自动机器学习的构成要件


自动机器学习可以和传统机器学习的任意过程结合,催生出了包括自动特征工程、神经网络架构搜索、超参数优化、损失函数搜索、优化器搜索、自动模型整合等一系列的子领域,而这些领域都在被学界广泛地研究。如图1所示,按照构成要件来分解,自动机器学习可以分为搜索空间、搜索策略和样本评估策略,后两策略组合在一起组成了搜索算法的概念。搜索空间定义了自动化算法所能探索的边界,搜索策略负责指出空间中哪部分有重要探索价值、最有可能包含最优的自动机器学习算法,而样本评估策略则是根据搜索策略指出的范围,验证它们的真实性能,为搜索策略的下一步探索提供信息。

虽然自动机器学习为人工智能描绘出了一个美好而又宏大的愿景,但它在技术上面临着巨大挑战。首先,自动化算法的表达能力还有待提高,由于算法和资源的限制,目前对于搜索空间的设计仍拘束于一些简单的架构,对于一些机器学习领域的关键技术(如注意力机制)仍然保留最初的设计模式。其次,自动化算法的可靠性问题亟待解决,为了提高自动机器学习的效率,许多算法的样本评估策略使用一些轻量级、快速的代理指标,来代替耗时的真实指标,但这种代理指标并不能够很好地反映真实指标的性能。再次,自动化算法的泛化能力也存在不足,许多算法仅仅是为了某一应用领域而专门设计,对于其他领域需要重新设计自动化算法。本文主要着眼于这三个挑战,来进一步提高自动机器学习的应用价值。


02 表达能力


       


在深度神经网络的设计中,自注意机制已变得越来越流行,来达到更好的性能。由于能够帮助深层模型有选择地关注有用的信息,自注意机制已经被证明是非常有效的设计,并被广泛应用于各种研究方向。

图2 (a) 手工设计自注意力机制


(b)自动化设计自注意力机制


典型的自注意机制可以被视为根据Key和Query提取Value中的有用信息,其中Key、Query和Value是输入数据的不同表示。适当的自注意机制表征(Key、Query和Value)可以大大提升模型的性能。然而,如图2(a)所示,以前的工作都是完全依靠手工设计来获得自注意力表征,大部分工作依赖于通过手工堆叠和组合CNN、RNN、GAT和GCN等各种功能组件,来从输入数据中获得有效的Key、Query和Value表征。这些手工制作的表征设计需要花费大量人力物力来进行实验和归纳,并且由于人类的偏见而处于次优状态,从而使它们难以适应现实世界的应用。

为了解决这个问题,我们提出自注意力的自动表示方法(图2(b))。主要需要解决一下两个问题:(1) 如何获得最合适的搜索空间?一个合适的注意力表征搜索空间应该是:i)支持联合搜索注意力表征和其他功能成分,以达到全局最优的结果;ii)足够灵活,以涵盖大多数最先进的注意力表征设计 iii)具有较低的复杂性以简化搜索。(2) 如何在参数共享中考虑每个子结构的特殊性?在上述搜索空间中,即使是同一组参数,在处理或输出不同含义的张量时,也会有不同的功能(例如,Key、Query、Value等)。直接应用广泛使用的参数共享策略而不考虑这些特殊的特性将无法提供可靠的架构评估。

为了应对这些挑战,我们提出了一种自动注意力搜索方法AutoAttend[3],以搜索具有最佳注意力表征的模型。我们将深度网络视为一组连接层,然后将注意力表征重新表述为源层选择和操作选择过程,以构建一个灵活的、表达能力强的、统一的搜索空间。我们进一步依据人工设计注意力机制的先验约束了搜索空间,在不损失表现力的情况下降低了搜索空间复杂性。我们构建了超网络来搜索所提出的搜索空间中的最佳架构,并提出了上下文感知的参数共享机制来提供可靠的架构评估。这样的机制可以考虑到每个子架构的特点,只在它们具有相同的上下文时共享参数。

实验证明,AutoAttend能够有效提高注意力模型的泛化性。针对不同的目标任务,AutoAttend总能构造适合的注意力模型。这进一步提高了自动机器学习的表达能力,为后续更精细化地自动化注意力模型设计指出了方向。


03 可靠性


       


神经网络架构搜索是自动机器学习的重要分支,主要关注于深度神经网络的自动化搭建问题。近年来,神经网络架构搜索算法已被成功地广泛应用于包括计算机视觉、自然语言处理、图表示学习在内的各个领域。其中,基于超网络的神经网络架构搜索,作为一种高效的性能估计方法,已被广泛使用,以快速得出具有满意性能的模型。

然而,饱受诟病的一点是,虽然利用超网络来估计搜索空间中的每个模型性能具有非常低耗的时间和成本,但它对空间中模型的性能排序,和模型的真实性能排序的相关性却非常低。低相关性问题将导致对最佳模型的估计将会出现较大的偏差,从而为给定的任务提供性能次优甚至较差的架构,导致自动化算法的可靠性变差。在该研究领域,许多相关学者提出了各种方法来提高超网络的可靠性,却并没有系统地分析过超网络算法中各个步骤的影响。为了对超网络的一致性问题作系统地分析[6],我们对超网络算法做了系统化归纳和建模,并在各个部分探究不同处理方式对最终超网络可靠性的影响。最终,我们利用精心设计的参数共享策略、公平采样策略、精细化的超参数选择和基于动态教师的知识蒸馏策略的组合,极大地提高了超网络的可靠性。从实验的角度,系统分析和总结了最近研究领域的突破和进展,以及值得进一步探索的有前景的方向。


图3 基于超网络的神经网络通道数搜索算法框架


如图3所示,我们将常见的超网络算法框架分成以下几个步骤。(1)超级网的构建(如何共享各个模型的权重),(2)架构采样,训练数据采样(如何选择要优化的数据和架构),以及(3)超级网的优化(如何定义损失和更新超级网的参数)。我们采用神经通道搜索来验证各个步骤中的前沿算法设计。通过广泛地实验,我们发现,通过序数共享的超网络参数共享方式(如图x所示)会对超网络的可靠性有巨大提升,而将知识从最大的架构蒸馏到搜索空间中所有的子架构的策略,会进一步提升算法的可靠性,而细致的超参数选择、公平采样策略也会或多或少带来更高的可靠性。最终,我们将算法在CVPR 2021学术会议举办的轻量级NAS挑战赛的超网络赛道中实践,赢得了并列第三名成绩。


04 泛化性


       


尽管机器学习取得了巨大的成功,但人类和人工智能之间的一个明显差距是,从小样本中学习的能力。例如,从有限的例子中学习识别物体。受人类从经验中学习的能力的启发,元学习旨在从有限数据的多个任务中学习到通用的学习经验,并利用这一经验快速地完成对新的任务的学习。作为自动机器学习中的一个巨大分支,元学习也受到了不少来自研究学界的关注。作为元学习最成功的应用之一,小样本学习的目标是从有限的标记实例中学习,并已经成为一个研究趋势。在小样本图像分类任务中,分类器必须学会用有限的例子来对训练期间从未见到的新类别图像进行快速识别。

现有的元学习算法可以分为三类。(1)基于度量的方法,为实例学习一个编码器,并在嵌入空间中进行无参数推理(如k近邻算法);(2)基于优化的方法,提取优化算法的元知识以实现快速适应;(3)基于黑箱或模型的方法,直接学习将数据集嵌入模型参数以进行预测。其中,(1)和(2)已经成为最流行的方法,并在各种小样本场景下得到验证。然而,现有的元学习算法存在着两个从未被探索的挑战。首先,大多数算法并不考虑时间和资源的限制,这阻碍了它们在许多实际应用中的应用。此外,现有方法的成功在很大程度上依赖于对每个小样本场景进行精心地超参数设计(如模型架构设计、学习率设置等)。而在现实世界中,数据集和任务可能是未知的、多样的,甚至是随时间变化的,我们并不能手动选择最合适的超参数。

图4 MetaDelta流程示意图


为了应对这些挑战,我们针对小样本图像分类场景设计了元学习系统MetaDelta[4]。如图4所示,MetaDelta首先采用预训练的卷积网络作为骨干模型,将图像应设至潜在语义空间,然后用线性分类器对骨干网络在训练数据集中进行微调。为了提高系统在时间和内存限制下对任何未知数据集的泛化能力,我们采用多进程进行多个元学习模型的学习和集成,同时在主进程中用中央控制器管理时间和资源。此外,我们还提出了自动模型集成算法,通过自动地考虑每个模型在当前任务的预测结果来提高泛化能力。我们成功在各大比赛场景中验证了MetaDelta算法的效果,先后在AAAI 2021 MetaDL挑战赛和NeurIPS 2021 MetaDL比赛的第一阶段中已大幅分数优势赢得第一。


05 自动图学习开源系统


       


在过去的十几年里,图上的机器学习已经吸引了越来越多的关注。然而,随着理论研究的蓬勃发展和图任务的日益多样化,为给定的图任务手动设计最佳的机器学习算法变得越来越困难。因此,对图的自动机器学习有迫切的需求,逐渐成为最受关注的研究课题之一。图上的自动机器学习结合了基于图学习和自动机器学习技术的优势,使基于图的机器学习算法的设计自动化。图学习算法的超参数优化和神经架构搜索方面已经在理论研究中取得了初步的成功。

开源系统对于促进和推动图上自动机器学习的研究和应用至关重要。目前的开源系统生态社区,存在一些用于图上机器学习的库和工具包,如PyTorch Geometric、Deep Graph Library等等。此外,自动机器学习的开源系统,如AutoKeras、AutoSklearn、Hyperopt和NNI也相继问世。然而,由于自动机器学习在图上应用的挑战,现有的自动机器学习库并不能直接适配图学习任务。当前开源社区急需自动图学习开源系统的出现。

图5 AutoGL框架示意图


为了解决这个问题,我们提出了AutoGL[5],这是学界首个用于图上自动机器学习的框架和开源系统。AutoGL的整体框架如图5所示。我们将图上的自动学习管道总结并抽象为四个模块:自动特征工程、模型训练、超参数优化和自动集合。对于每个模块,我们都提供了大量的最先进的算法、标准化的基类和高级的API,以便于灵活地进行定制。

目前,AutoGL已经发布了第二个版本,并在开源学术社区累积获得了700+星标。我们相信,AutoGL开源系统将会进一步推动自动机器学习在图算法领域的研究和应用,为社会创造更大价值。


结语


       


人工智能已经为人类社会创造了巨大的价值与财富,然而现有的人工智能算法却严重依赖于领域专家和从业人员进行高成本、低效率的手工算法设计。自动机器学习从数据驱动的角度,给出了一个近乎于理想的解决方案,却仍然在表达能力、可靠性、泛化性方面存在问题。本文分别从这三个角度对自动机器学习现存的问题进行深入分析,并做出了初步的探索和尝试。最后,我们开源AutoGL自动图学习平台与框架来总结已有的自动化算法最佳实践,从而进一步推动自动机器学习在图学习任务中的应用。这些研究内容和方向都将对自动机器学习领域产生深远影响。



一网打尽系列文章,请回复以下关键词查看:
创新发展习近平 | 创新中国 | 协同创新 | 科研管理 | 成果转化 | 新科技革命 | 基础研究 | 产学研
热点专题军民融合 | 民参军 | 工业4.0 | 商业航天  国家重点研发计划 装备采办 | 摩尔定律 | 诺贝尔奖 | 国家实验室 军工百强 试验鉴定 | 双一流 | 净评估 
前沿科技颠覆性技术 | 仿生 | 脑科学 | 精准医学 | 基因编辑 虚拟现实 | 增强现实 人工智能 | 机器人 | 3D打印 | 4D打印  太赫兹 | 云计算 | 物联网 互联网+ 大数据 | 石墨烯 | 电池 | 量子 | 超材料 | 超级计算机 | 卫星 | 北斗 | 智能制造 不依赖GPS导航 5G | MIT技术评论 | 航空发动机 | 可穿戴 氮化镓 | 隐身 | 脑机接口 |  传感器 | 数字孪生
先进武器无人机 | 轰炸机 预警机 | 运输机 | 直升机 战斗机 | 六代机 网络武器 | 激光武器 | 电磁炮 | 高超声速武器 反无人机 | 防空反导 潜航器
未来战争未来战争 | 抵消战略 | 水下战 | 网络空间战 |  分布式杀伤 | 无人机蜂群 | 太空战 反卫星 混合战 电子战 马赛克战
前沿机构战略能力办公室 | DARPA 快响小组 | Gartner | 硅谷 | 谷歌 | 华为 阿里 | 俄先期研究基金会 | 军工百强
其他主题系列陆整理中,敬请期待…… 



















Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/124372
 
608 次点击