AutoML-自动机器学习

​ 今年在 ICML 2017International Conference on Machine Learning, ICML)国际机器学习大会和ECMLPKDD 2017(European Conference on Machine Learning and Principles and Practice of Knowledge Discovery in Databases, ECMLPKDD)欧洲机器学习会议和数据库知识发现的原理与实践上将会举行关于AutoML的研讨会。那么什么是AutoML呢?

img

概述:什么是AutoML?

​ 机器学习(Machine Learning, ML)近年来取得了相当大的成功,越来越多的学科需要依赖它。然而,这个成功的关键是需要人类机器学习工程师完成以下的工作:

  • 预处理数据
  • 选择适当的功能
  • 选择一个适当的模型选择系列
  • 优化模型超参数
  • 后处理机器学习模型
  • 严格分析所得的结果

    由于这些任务的复杂性通常超过了非机器学习专家的能力,机器学习应用的快速增长产生了对于现成的机器学习方法的需求,而且这些现成的机器学习方法简单易使用且不需要专业的知识。我们称以机器学习的渐进自动化为目标的研究领域为AutoML(Automatic Machine Learning, AutoML)。

    ​虽然它的最终用户面向那些没有专业机器学习知识的人,但AutoML依然向机器学习专业人士提供了一些新的工具,如:

  • 执行深层表示的架构搜索

  • 分析超参数的重要性

    遵循“优化编程”的范例,AutoML主张开发可以用数据驱动的方式自动实例化的灵活软件包。

AutoML的实例

​ AutoML旨在创建可以由ML新手”开箱即用“的软件。最近可能展示的一些实例:

  • AutoWEKA是一种可以同时选择机器学习算法和其对应超参数的方法;通过使用WEKA包,可以为各种数据集自动生成良好的模型。
  • 深层神经网络众所周知依赖于他们的超参数,一些现代优化器在参数设置方面已经比人类做的更好了(如Bergstra等,Snoek等)。
  • 创建一个模型搜索科学:一个复杂的计算机视觉架构可以自动被实例化以在3种不同的任务中获得最先进的结果:面部匹配,面部识别和对象识别。

AutoML所使用的方法

​ AutoML借鉴了机器学习的许多学科,主要是:

  • 贝叶斯优化
  • 结构化数据和大数据的回归模型
  • Meta 学习
  • 转移学习
  • 组合优化

促进AutoML的超参数优化系统

​ 用于贝叶斯优化的机器学习超参数系统可以促进AutoML,主要包括:

  • Hyperopt,包括TPE算法

  • 基于序列模型的算法配置(SMAC)

  • [Spearmint](https://github.com/JasperSnoek/spearmint

    此外,还提供了两个可用于超参数优化的软件包:

  • RoBO-鲁棒的贝叶斯优化框架(Robust Bayesian Optimization framework)

  • SMAC3 - SMAC算法的python实现

*AutoML的功能浅析

​ 一般情况下,进行机器学习首先需要大量的训练数据,再由机器学习工程师/数据科学家对数据进行分析,设计算法形成训练模型;这需要大量的专业知识。但是,如果使用AutoML,就像是在使用一个工具,我们只需要将训练数据集传入AutoML,那么这个工具就会自动帮我们生成参数和模型,形成训练模型,这样即使不具备机器学习方面深入的专业知识也可以进行机器学习方面的工作。

AutoML-自动机器学习_第1张图片

目前还需要人类去使用AutoML,配置参数;在未来就是通过大量的人工智能来生成AutoML Box,再将数据传递到AutoML Box中生产训练模型,如下图所示:

AutoML-自动机器学习_第2张图片

参考资料

  • http://www.ml4aad.org/automl/

  • http://www.ml4aad.org/automl/workshops/

  • http://slides.com/streguer/automl/fullscreen#/


    更多的互联网知识,计算机专业面试等资源见微信公众号:互联网学术(IT-paper)
    AutoML-自动机器学习_第3张图片

你可能感兴趣的:(机器学习,从零开始-Machine,Learning学习笔记)