论文部分内容阅读
随着各行各业数据量爆炸式的增长,信息技术已进入大数据和人工智能时代。但是,人工智能建模与普及应用面临很大瓶颈和制约,存在着诸如技术门槛高、人才严重短缺、大量依赖专家经验、建模周期长等若干问题和挑战。为了加速人工智能落地,提升AI建模效率,近年来,国际上出现了自动化机器学习(AutoML)技术,利用机器替代人工去自动化地完成模型选择和超参数调优,让模型设计自动化。目前,AutoML得到了国内外学术界和工业界的广泛关注,并在基本技术方法上已经取得显著的进展。然而,已有的AutoML学习方法尚不能很好地解决全流程数据分析场景以及终身学习场景下的自动化建模任务。一方面,大部分实际应用的模型往往是端到端的机器学习流水线。典型的数据分析流程涉及数据预处理、特征工程、算法选择、模型评估及超参数优化等多个阶段。数据分析人员需要了解每个阶段中每个方法,通过反复迭代和试错,最终挑选出性能优异的机器学习流水线。因此,开发一个高效的全流程的数据分析模型技术难度大且费时费力。另一方面,现有的AutoML技术方法大都用来解决静态数据集的自动化建模问题。在许多实际应用场景中,随着时间推移,数据分布会发生变化。这种数据特征及分布的动态改变也称为概念漂移。由于存在概念漂移,一个时间段下训练所得到的模型,有可能难以适应下一个时间段的数据,从而导致预测准确性下降。终身学习目的就是能够捕获数据概念漂移,使机器学习模型能够随着数据集的变化而动态更新。针对以上问题,本文首先研究提出一种结合强化学习和贝叶斯优化的机器学习流水线自动化设计算法框架Auto-PLD(AutoML for PipeLine Design)。其次,研究提出基于自适应模型加权集成的自动化终身学习算法框架Auto-LLE(AutoML for Lifelong Learning based on weighted Ensemble)。最后,设计实现简单易用、功能丰富的的自动化机器学习系统,能够同时支持自动化流水线设计和自动化终身学习。本文研究工作获得“互联网+”大学生创新创业大赛国赛金奖和NeurIPS 2018 AutoML Challenge第3名。本文的主要研究工作和贡献点包括:(1)研究提出面向全流程数据分析场景下的机器学习流水线自动化设计算法框架Auto-PLD。首先,定义一种包含五个阶段的机器学习流水线,并且可以支持分别处理连续型和离散型特征。然后,将自动化流水线设计问题分解为结构搜索和超参数优化两个子问题,并研究提出一种结合了强化学习和贝叶斯优化的算法,对这两个子问题进行交替优化。最后,为提高自动化流水线设计效率,进一步研究提出两种并行化的流水线构建方法。实验结果表明,Auto-PLD在大部分数据集下性能优于auto-sklearn算法。而且,随着计算节点的增加,并行化Auto-PLD可以进一步提升流水线构建性能。(2)研究提出面向终身学习场景的自动化机器学习算法框架Auto-LLE。针对存在概念漂移和数据不平衡的分类任务,研究提出一种基于自适应模型加权集成学习的算法。将概念类型分为“长期概念”(long-term concept)和“短期概念”(short-term concept),使用增量学习器和自适应权重更新方法分别处理不同类型的概念,最终进行加权集成预测。实验结果表明,Auto-LLE能够高效自动地捕捉概念漂移,提升模型预测性能。(3)在Auto-PLD和Auto-LLE的基础上,设计实现一个同时支持自动化流水线设计和自动化终身学习的系统。在系统设计上,通过设计易用的高层编程接口和可插拔式的模块集成方式,获得了较高的系统易用性和可扩展性;在任务类型上,支持分类、回归和聚类等常见的数据分析任务。