拖拽式机器学习的爱与恨

拖拽式机器学习是我想了很久的问题。

1. 前世今生

拖拽式机器学习是,人们在界面上通过拖拽就是建立机器学习过程。拖拽式机器学习系统一般拥有丰富的组件,包括数据清洗、特征选择、训练、预测和效果评估。通过类似于 “搭积木” 的方式,人们将学习组件合成一个完成的机器学习过程。

拖拽式机器学习的雏形很早之前就出现了。Weka 是有新西兰 Waikato 大学开发的数据挖掘软件。Weka 除了提供 Java API 之外,还提供 Weka Explorer 图形界面。人们在 Weka Explorer 界面上通过鼠标操作就能很方便地加载数据、观察数据特点、训练、预测和效果评估。除了 Weka 免费软件之外,商业软件 Matlab 和 SASS 也提供了图形界面。我个人觉得,这些软件将自己定位为软件,而不是工具包或者系统。但这些软件确实是最开始有图形界面的机器学习系统。

随着最近几年机器学习成为显学,“人人都能使用机器学习” 成为不少人的愿景。在他们的想象中,数据准备、不同算法训练、不同算法的预测和效果评估都封装在组件中,人们只需要点点鼠标拖拽拖拽组件,就能顺利地使用机器学习。秉承这样的理念,人们开发了不少拖拽式机器学习系统。其中比较有名的就包括微软的 Azure Machine Learning Studio 和阿里的大数据计算服务 MaxComput。

除了大公司,也有创业公司开发拖拽机器学习系统。下图是 aetros 基于 theano 建立的深度学习平台。用户只要进行拖拽就可以完成一个基本含有ConvNet,fcNet的架构。

2. 爱

拖拽式机器学习将机器学习的使用门槛,从编程降到组件拖拽和配置文件撰写。机器学习使用难度实现了质的下降。但这个优势我一直有怀疑。金融公司、外贸公司、银行,甚至互联网企业等组织机构中,非技术人员真的有使用机器学习的需求和知识储备嘛?我表示怀疑。

拖拽式机器学习即使不能实现 “人人都能使用机器学习” 的初心,也能极大地方便工程师进行机器学习任务。工程师在界面上组织资金的机器学习任务,可能对自己的机器学习任务有一个直观的认识:自己的机器学习任务进行到哪一步了;如果出错,在哪一步出错;出错步骤影响了哪些任务。

比如我们很直观地可以从上图看出,如果归一化出错,将会影响拆分任务和后续任务。

3. 恨

说了拖拽式机器学习的好,我们再说说拖拽式机器学习的坏。

拖拽式机器学习中,组件加配置替换了编程,成为人们使用机器学习的方式。但是组件加配置,却不能像编程那样,完全地处理机器学习使用的复杂度。除了对机器学习算法的理解,机器学习使用最复杂的部分有两个部分:调特征和调参数。调特征的内容包括:要用哪些特征,要摒弃哪些特征,采用哪些特征预处理方法 (比如 scaling)。调参数则和具体算法有关,比如逻辑斯蒂回归主要有学习率和正则因子两个参数。

组件加配置的方式能配置一组特征工程方案和一组参数,但很难快速验证哪一组特征工程方案和参数效果最好。在编程方式中,我们可以用循环的方式,遍历不同的特征工程方案和参数,得到相应效果指标。但在拖拽式机器学习的组件加配置的方式中,我们只能在文档中记着不同的特征工程方案和参数,选择其中一个配置到拖拽式机器学习系统,运行几个小时得到评估指标,将评估指标记录到文档中;再选择下一组,重复上述步骤直到遍历完所有特征工程方案和参数。我们程序员的目标是用代码将不同的任务串起来,实现自动化。但现在拖拽式机器学习粗暴割裂了这个自动化链条。

那么直接用组件加配置实现自动化呢?如果要实现这点,拖拽式机器学习要提供条件判断组件和循环组件,还需要定义一套特征工程方案和参数变化的标准。这好像是在制定一个新的编程语言了,还不如直接用现有的编程语言接口呢。

4. 总结

拖拽式机器学习 “人人都能使用机器学习” 的初心我是不看好的。对于工程师来说,拖拽式机器学习也是充满了爱恨情仇。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ATYUN订阅号

NVIDIA发布最新数据增强库和图像解码库

由深度学习支持的计算机视觉应用包括复杂的多阶段预处理数据流水线,其中包括计算密集型步骤,如从磁盘加载和提取数据,解码,裁剪和调整大小,颜色和空间变换以及格式转换...

1045
来自专栏ATYUN订阅号

2018年9月机器学习Github开源项目TOP 10

在此期间,我们将项目与新的或主要版本进行了比较。Mybridge AI根据各种因素对项目进行排名,以衡量专业人员的质量。

1013
来自专栏人人都是极客

第二课:开发机器学习app前的准备工作

框架的选择 如上一节课所说,随着机器学习的发展,目前已经出现很多不错的学习框架,这里我们做个对比: TensorFlow:深度学习最流行的库之一,它不仅便携、高...

30410
来自专栏机器人网

[学习}28 款 GitHub 最流行的开源机器学习项目

现在机器学习逐渐成为行业热门,经过二十几年的发展,机器学习目前也有了十分广泛的应用,如:数据挖掘、计算机视觉、自然语言处理、生物特征识别、搜索引擎、医学诊...

3638
来自专栏吉浦迅科技

【讲座】在NVIDIA Jetson上从Tensorflow到TensorRT

NVIDIA在太平洋时间3月8日上午11:00-12:00(北京时间3月9日凌晨3:00-4:00)举办了主题为“AI at the Edge: TensorF...

5286
来自专栏IT大咖说

自主研发、不断总结经验,美团搜索推荐机器学习平台

内容来源:2018 年 5 月 26 日,美团点评技术专家杨一帆在“饿了么技术沙龙·第25弹【搜索推荐】”进行《Why WAI: 美团点评搜索推荐机器学习平台》...

2145
来自专栏AI研习社

深度学习预测比特币价格;基于神经网络的自动化前端开发 | Github 项目推荐

对于开发者来讲,证明其编程能力最好的方式是展示他们的项目和代码。AI 研习社本周从 YouTube、知乎以及 Github 官网上搜罗了数个与 AI 相关的开源...

3847
来自专栏专知

【开源】基于Keras的知识图谱处理实战

【导读】近日,Daniel Shapiro博士利用开源的图结构卷积网络进行知识图谱处理,并应用于交易数据的欺诈检测,其知识图谱处理相关源码也开源出来,并且Dan...

8184
来自专栏机器之心

教程 | 教Alexa看懂手语,不说话也能控制语音助手

数月前的某个夜晚,我躺在床上时,一个念头闪过我的脑海——「如果语音是计算接口的未来,那么那些听不见或看不见的人该怎么办?」我不知道究竟是什么触发了这个想法。我自...

2742
来自专栏人工智能头条

黄金三镖客之TensorFlow版

1993

扫码关注云+社区