AutoML 坏掉了

2019 年 2 月 20 日 云头条

作者:Piotr Plonski在Netezza和IBM担任过软件工程师,担任过iQor的数据科学家,华沙理工大学的助理教授,现为MLJAR公司创始人。


自动化机器学习坏掉了


本文阐述了反对实施机器学习解决方案的若干理由,并介绍了面临的问题不是机器学习问题,可能使用优化就能加以解决的场景。

 

按照维基百科的解释,自动化机器学习(AutoML)是指使运用机器学习处理实际问题的整个端到端过程实现自动化。


典型的机器学习应用包括:


  • 数据预处理

  • 特征提取、工程和选择

  • 算法选择

  • 超参数优化


好多步骤!AutoML旨在使它们实现自动化,那样你就可以将宝贵的时间用于处理更具挑战性的任务上。听起来很酷,但果真如此吗?不妨仔细看看......


开始之前,你的问题是什么?


在开始构建机器学习管道(自动或手动)之前,你需要知道:


  • 你想要实现什么样的目标?

  • 你想要解决什么样的问题?

  • 你真的需要机器学习吗?


这非常重要!也许你不需要复杂的机器学习解决方案。许多问题不是机器学习问题。它们可能是优化问题、探索性数据分析任务,或者是用简单的统计方法就能解决的问题。


好了,现在你确信自己需要机器学习。


三个数据问题:什么?哪里?怎样?


然后,你需要数据!


  • 你需要什么数据!

  • 你已经拥有它了(在某个地方)吗?

  • 你需要购买吗?

  • 你需要手动标记吗?

  • 数据位于何处以及如何可以访问它?

  • 如何合并多个源数据?(这可能很重要)


许多人表示,上面概述的这些步骤是构建机器学习解决方案过程中最耗费时间的,因此也是最耗费资金的。在生产环境中运行这部分至少需要某种基本的抽取、转换和加载(ETL)。


让我们训练模型吧(这部分很简单)


数据准备好后,就可以运用AutoML。只要点一下鼠标,你就可以训练成百上千个模型,随后这些模型在云端并行训练。你最终会得到一组模型,或者甚至全部模型,它们经过训练,就某个验证方案而言可优化某个指标。最好的那个(全面调优)模型会比拥有默认超参数的单个模型好几个百分点。全部模型让你可以在接下来改进几个百分点。假设你最终改进了10%至25%,相当好,是不是?!在相同的情况下,这可以转化为巨大的投资回报――想想交易解决方案或信用评分任务。


模型复杂性


不过你最终会得到一个复杂的模型,有以下属性:


  • 难以理解的黑盒子(是的,你可以尝试使用AI解释器,努力解释模型及其预测)

  • 计算预测所需要的时间可能很长(以全部模型为例,你需要计算来自所有模型的预测)

  • 难以维护......


机器学习维护


模型维护是什么意思?嗯,仅仅训练精确、花哨的AI/机器学习模型还不够。想在生产环境中使用机器学习模型,你应该:


  • 监控数据质量,意识到可能出现的漂移(比如如果是自然语言处理即NLP,语言需要多年才有显著变化,但如果是客户数据,可能几天内就会变化)

  • 监控预测(模型拿训练中未见到的新数据来计算预测,因此没人知道会发生什么)

  • 提供反馈回路,可用于监控用途和模型再训练。


无聊的软件


训练机器学习模型令人兴奋!这是Tigger最喜欢的!围绕机器学习构建软件并不同样令人兴奋。机器学习模型在生产环境中运行所需要的无聊软件包括:


  • 为训练和生产准备输入数据所用的软件――你的ETL解决方案

  • 为服务机器学习模型、监控数据质量和反馈回路所用的软件

  • 为请求机器学习模型拿新的数据记录计算预测,并进行操作所用的软件(是的,你需要用预测做一些事情,为此还需要代码)


在本地运行机器学习时,最后两个步骤通常联系起来。所有使用的软件同样需要一些维护。


用预测做什么?


你已成功完成上述所有步骤。恭喜!你现在可以拿新的数据记录来计算预测。可以用预测做什么?


  • 你可以用预测来获取洞察力(我认为这是最容易的方法,实际上这根本不使用机器学习模型,这是探索性数据分析)

  • 你可以用预测来执行操作。有很多可能性,比如可用于提交汇兑交易或向客户发送电子邮件。我认为这是整条机器学习管道中最出色的部分。基于数据行事。


结论:


1. AutoML解决方案可以调整机器学习模型,并借助某种验证模式和数据来提高准确性。它可以节省大量时间,数据科学家通常需要大量的时间来检查不同的算法和验证(你不需要编代码、不需要检查库版本或接口)。当然,拥有AutoML是一大优势,很有必要。然而在我看来,就算你有AutoML魔法箱子,也需要大量资源(资金、时间和人力)来处理贵公司的机器学习。


2. 你需要提供无聊的软件来处理数据并利用机器学习预测。我认为,机器学习管道的这部分被低估了,实际上它是数据驱动型解决方案的主力部分。


3. 此外,很多时候你不需要复杂的高精度模型。我认为最好从一个尽可能简单的模型入手,看看你是否可以将它运用于实际生活中,它是否为贵公司提供改进/投资回报。就连简单的机器学习模型也应该胜过根本就没有模型(随机处理)。简单模型比复杂模型有显著优势:它们对人类而言是可读的(是的,你可以理解它在做什么!)。


4. 使用机器学习来执行操作。你会感受到自动化带来的便利。机器学习模型基于你的数据来自学(你不需要为它编代码),然后它可以帮你预测未来。用它来执行操作。


5. 商用AutoML解决方案价格不菲(每年5万至20万美元),因此只有大企业才负担得起。除此之外,你仍需要大量资源才能在公司成功地部署机器学习。我认为,中小企业需要等待,等到这项技术趋于成熟,变得更经济实惠。


原文链接:https://pplonski.github.io/automatic-machine-learning-is-broken/


登录查看更多
4

相关内容

专知会员服务
31+阅读 · 2020年4月24日
自动机器学习:最新进展综述
专知会员服务
119+阅读 · 2019年10月13日
概述自动机器学习(AutoML)
人工智能学家
19+阅读 · 2019年8月11日
AutoML:机器学习的下一波浪潮(附代码&链接)
THU数据派
4+阅读 · 2019年4月29日
AutoML:机器学习的下一波浪潮
AI前线
9+阅读 · 2019年4月27日
自动机器学习(AutoML)最新综述
PaperWeekly
34+阅读 · 2018年11月7日
神经网络架构搜索(NAS)综述 | 附AutoML资料推荐
干货 | AutoML 和神经架构搜索初探
AI科技评论
3+阅读 · 2018年8月1日
AutoML 和神经架构搜索初探
雷锋网
5+阅读 · 2018年8月1日
AutoML—降低机器学习门槛的利器
深度学习
8+阅读 · 2018年1月29日
A Survey on Edge Intelligence
Arxiv
51+阅读 · 2020年3月26日
The Measure of Intelligence
Arxiv
6+阅读 · 2019年11月5日
AutoML: A Survey of the State-of-the-Art
Arxiv
69+阅读 · 2019年8月14日
Adaptive Neural Trees
Arxiv
4+阅读 · 2018年12月10日
Arxiv
26+阅读 · 2018年9月21日
Arxiv
5+阅读 · 2018年9月11日
Neural Architecture Optimization
Arxiv
8+阅读 · 2018年9月5日
Arxiv
7+阅读 · 2018年1月24日
VIP会员
相关资讯
概述自动机器学习(AutoML)
人工智能学家
19+阅读 · 2019年8月11日
AutoML:机器学习的下一波浪潮(附代码&链接)
THU数据派
4+阅读 · 2019年4月29日
AutoML:机器学习的下一波浪潮
AI前线
9+阅读 · 2019年4月27日
自动机器学习(AutoML)最新综述
PaperWeekly
34+阅读 · 2018年11月7日
神经网络架构搜索(NAS)综述 | 附AutoML资料推荐
干货 | AutoML 和神经架构搜索初探
AI科技评论
3+阅读 · 2018年8月1日
AutoML 和神经架构搜索初探
雷锋网
5+阅读 · 2018年8月1日
AutoML—降低机器学习门槛的利器
深度学习
8+阅读 · 2018年1月29日
相关论文
A Survey on Edge Intelligence
Arxiv
51+阅读 · 2020年3月26日
The Measure of Intelligence
Arxiv
6+阅读 · 2019年11月5日
AutoML: A Survey of the State-of-the-Art
Arxiv
69+阅读 · 2019年8月14日
Adaptive Neural Trees
Arxiv
4+阅读 · 2018年12月10日
Arxiv
26+阅读 · 2018年9月21日
Arxiv
5+阅读 · 2018年9月11日
Neural Architecture Optimization
Arxiv
8+阅读 · 2018年9月5日
Arxiv
7+阅读 · 2018年1月24日
Top
微信扫码咨询专知VIP会员