写点什么

自动化数据科学与机器学习:Auto-sklearn 开发团队访谈

  • 2017-04-18
  • 本文字数:2382 字

    阅读完需:约 8 分钟

本文中文版已获原文作者 Matthew Mayo 授权。

在最近由 Kdnuggets 举办的自动化数据科学与机器学习博客大赛中,Auto-sklearn 开发团队勇夺了冠军。Matthew Mayo 采访了 Auto-sklearn 开发团队,了解了 Auto-sklearn 项目的基本情况,以及开发人员的背景和自动化数据科学的动态。

KDnuggets 最近举办了一场自动数据科学和机器学习博客比赛,获得了众多参赛者的作品提交,涌现了许多获奖作品以及一系列的荣誉称号。

来自弗莱堡大学的Matthias Feurer、Aaron Klein 和Frank Hutten 撰写的题为“ Contest Winner: Winning the AutoML Challenge with Auto-sklearn ”的获奖作品,概要介绍了 Auto-sklearn ,一个可以自动确定有效的机器学习管道进行分类和回归数据集的开源 Python 工具。这个项目围绕成功的 scikit-learn 库而构建,并赢得了不久前的 AutoML 挑战。

鉴于这篇文章如此受欢迎,我们询问了作者是否有兴趣谈谈关于自己和项目的轶事,以及自动化数据科学的一些后续问题。以下是访谈记录。

Matthew Mayo:首先祝贺你们的 Auto-sklearn 项目在 KDnuggest 自动化数据科学和机器学习博客大赛获胜!你们能为读者介绍一下团队成员,并讲述你们每个人的背景情况吗?

Matthias Feurer:我是 Frank 集团的二年级博士生,致力于超参数优化和自动化机器学习。大多时间,我对预定义机器学习管道的优化感兴趣。在我硕士研究生期间,就开始为 Frank 工作,在我的大部分学习项目中,经常为超参数的调整而感到困扰。

Aaron Klein:我也是 Frank 集团的二年级博士生,研究方向是超参数优化和自动化机器学习。像 Matthias 一样,在加入 Frank 集团之前,我是弗赖堡大学的硕士生。

Frank Hutter:我是弗莱堡大学计算机科学系的助理教授,主要从事人工智能、机器学习和自动化算法设计。在来到弗赖堡大学之前,我在加拿大温哥华不列颠哥伦比亚大学工作了九年。

所有:除了我们三个人(撰写了 KDnuggets 博客大赛的博文),我们的团队还包括来自弗赖堡大学的博士生和博士后:Katharina Eggensperger、Jost Tobias Springenberg、Hector Mendoza、Manuel Blum、Stefan Falkner 和 Marius Lindauer。

这篇文章非常翔实,很好地描述了 Auto-sklearn。您希望我们的读者在了解 Auto-sklearn 或自发布以来的任何进展有什么需要额外注意的吗?对于它的未来发展计划,有什么可以分享给读者吗?

我们的短期目标是回归,以便我们可以做更多的工作。而我们的长期目标,是希望 Auto-sklearn 能够成为 scikit-learn 灵活的扩展,能够帮助用户优化机器学习管道。我们还要沿着 Auto-Net 的方向进行更多的工作,通过考虑跨数据集、跨数据子集和基于时间的任意时间算法(anytime algorithms)来显著地加速优化过程。

那么,你认为机器学习和数据科学在多大程度上可以自动化?所谓的全自动化系统需要何种程度的人机交互?

尽管有一些方法可以用来调试机器学习管道的超参数,但是目前为止,很少有工作能发现新管道。Auto-sklearn 以固定的顺序使用一系列的预定义的预处理器和分类器。加入一个方法对于找到新管道很有效,那么这个方法将会很有用处。当然,人们可以继续这种思路,并尝试自动寻找新的算法。最近,已经有几篇论文这样做了。比如 Learning to learn by gradient descent by gradient descent。当机器学习模型进行训练过于费时费钱时,人们可以调整超参数,比自动化方法做得更好,例如最先进的用于大型数据集的深层神经网络。我们正在努力将专家的启发式方法转换为完全形式化的算法,比如我们的 Fabolas 方法先从较小数据子集上开始优化神经网络的超参数,从而加快了解全部数据集的最佳超参数。

考虑到先前的问题,短期之内数据科学家是否会失业?或者,如果让脑洞大开,目前被媒体大肆炒作的数据科学家,将来会不会被自动化压制?如果是这样的话,会有什么样的程度?

当然不是,我们发展自动化机器学习方法是为了向数据科学家提供帮助,而不是代替他们。这些方法使数据科学家摆脱了讨厌复杂的任务(比如说超参数优化),机器可以很好地解决这些任务。然而数据分析与结论获取仍然需要人类专家来完成,尤其是通晓应用领域的数据科学家仍然非常重要。然而我们相信,自动化将会提高数据科学家的工作效率,因此,这有可能确实会影响到数据科学家需要做的工作量。

数据科学家能够做什么来避免被淘汰的命运?当然,提出这个问题并非捣乱,而是为了增加本次采访的价值。

分析和解释统计分析的结果,总得由数据科学家来完成,因此,对于开始数据科学工作的年轻毕业生来说,掌握这个技能可能比其他技能更为永不过时(例如,手动调整超参数以充分利用神经网络)。

您过去一直积极参与机器学习比赛,您有什么有趣的技巧、诀窍或见解与读者分享吗?

自动化和仔细的重采样策略。由于自动化允许进行大量实验,为防出现过拟合(overfitting),因此需要像仔细的交叉验证那样的重采样策略。进一步开放思想也是非常重要的,只需让数据来说明哪种方法对数据集效果最好。

最后一个问题,你认为在五年内,机器学习技术将会到达什么样的水平?

未来会怎么样,这很难预测,这点在机器学习领域尤为如此。要知道在五年前,并没有人预见到深度学习的兴起。但是我们相信,机器学习将会越来越普遍,在大家都使用的商业工具中将会见到机器学习的身影。

非常感谢您百忙之中抽出这一点宝贵的时间接受我的采访。

相关资料

原文链接:


感谢杜小芳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-04-18 19:004760
用户头像

发布了 376 篇内容, 共 211.0 次阅读, 收获喜欢 949 次。

关注

评论

发布
暂无评论
发现更多内容

谈一谈 build-scripts 架构设计

Java-fenn

Java

Maven 中依赖使用的版本号

HoneyMoose

啃完这32W字的Java程序员面试题,大厂面试分分钟搞定!

收到请回复

Java 云计算 开源 架构 编程语言

建木持续集成平台v2.5.5发布

Jianmu

开源 DevOps 低代码 CI/CD 无代码

为什么说企业需要关注客户体验?怎样去提升它?

Baklib

企业 客户体验

千行百业,可信开源,2022 OSCAR开源产业大会成功召开

Ada@SegmentFault

面试必问的AOP,我今天用它实现了系统告警

程序员小毕

spring 源码 程序员 Java 面试 aop

「Gitea篇」如何用Git平台账号登录建木CI

Jianmu

DevOps 持续集成 gitops 建木

字节Java大神精心编写的《Java开发者面试百宝书》,助你一臂之力!

收到请回复

Java 云计算 开源 架构 编程语言

《OSCAR开源产业大会丨《全球开源生态研究报告(2022年)》重磅发布》

Ada@SegmentFault

9月大厂Java岗面试原题复盘,双非2年经验成功内推进入阿里!

收到请回复

Java 云计算 开源 架构 编程语言

通过自动化单元测试的形式守护系统架构

京东科技开发者

系统架构 单元测试 代码评审 代码质量检测工具 Archunit

为什么Kubernetes和容器与机器学习密不可分?

京东科技开发者

人工智能 机器学习 Kubernetes 容器 ML

中山市等级测评机构有哪些单位?电话号码是多少?

行云管家

等保测评 等级测评 中山市

面试复盘 | 2022届 大疆秋招 测试开发 完整面经

Java-fenn

Java

「番外篇」如何用Git平台账号登录建木CI with docker-compose.yml

Jianmu

DevOps 低代码 CI/CD gitops 无代码

利用Python开发App实战

千锋IT教育

设计模式之备忘录模式

Java-fenn

Java

MySQL约束和事务知识归纳。

Java快了!

MySQL

C++ 中 Lambda 表达式的快速指南

Java-fenn

Java

Wordpress 如何添加 Ads.txt 文件

HoneyMoose

易周金融分析 | 易观千帆发布7月城商行农商行APP盘点;养老理财产品跨行代销布局提速

易观分析

金融 理财产品

ESP32-C3 VScode开发环境搭建(基于ESP-IDF—Windows和Ubuntu双环境)

矜辰所致

vscode 开发环境 ESP32-C3 9月月更

云管平台的优势有哪些?哪家云管平台好?

行云管家

云计算 云管平台 云管理

Spring 注册 Bean 在配置中的定义和使用 Autowired

HoneyMoose

如何进行高效的文档管理?这三点很重要!

Baklib

文档管理 企业文档管理工具

速度与安全可兼得!改造异步布局大幅提升客户端布局性能

小红书技术REDtech

性能优化 安卓 客户端 Andriod

有关Redis你掌握好这22点,大厂面试基本稳了!

Java全栈架构师

数据库 程序员 后端 Java 面试 redis 底层原理

什么是帮助中心?企业该怎样制作帮助中心页面?

Baklib

企业 帮助中心

Java 异步编程 (5 种异步实现方式详解)

Java-fenn

Java

自动化数据科学与机器学习:Auto-sklearn开发团队访谈_语言 & 开发_Matthew Mayo_InfoQ精选文章