拖拽式机器学习的爱与恨

作者: 佚名 2017-04-05 14:00:10

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

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. 总结

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

拖拽式 机器学习 配置
上一篇:有没有将深度学习融入机器人领域的新尝试? 下一篇:科学家提供新方案 用磁场来控制仿生机器人移动
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

机器学习变革物流运输和交通出行

云和机器学习的融合催生了自动驾驶技术尤其是人们出行方式的广泛创新,正在改变整个行业的游戏规则。根据普华永道(PWC)的数据,68%的物流运输企业负责人认为,未来5年,提供物流运输服务的核心技术的改变将颠覆整个行业。

AWS大中华区云服务产品管理总经理顾凡 ·  2天前
轻松构建 PyTorch 生成对抗网络(GAN)

生成对抗网络(GAN)是一种生成式机器学习模型,它被广泛应用于广告、游戏、娱乐、媒体、制药等行业,可以用来创造虚构的人物、场景,模拟人脸老化,图像风格变换,以及产生化学分子式等等。

佚名 ·  3天前
新AI让教师能够快速开发智能辅导系统

通过使用一种采用人工智能的新方法,教师可以通过演示解决某个主题中的问题的几种方法来教计算机……

佚名 ·  4天前
终结重复工作!教你30分钟创建自己的深度学习机器

建立一个深度学习环境是一件很重要的事情。本文讲述使用深度学习 CommunityAMI、TMUX和 Tunneling在EC2为Jupyter Notebooks创建一个新的深度学习服务器。

读芯术 ·  4天前
如何用机器学习模型,为十几亿数据预测性别

基于用户画像进行广告投放,是优化投放效果、实现精准营销的基础;而人口属性中的性别、年龄等标签,又是用户画像中的基础信息。那该如何尽量准确的为数据打上这些标签?

TalkingData ·  2020-05-26 18:50:49
教你轻松选择合适的机器学习算法!

机器学习方面没有免费午餐。因此,确定使用哪种算法取决于许多因素:面临的问题类型和预期的输出类型等。本文介绍了为数据集探究合适的机器学习方法时要考虑的几个因素。

布加迪 ·  2020-05-26 18:35:00
画图太丑拿不出手?有人做了套机器学习专用画图模板,还有暗黑模式

论文、博客写好了,里面的图可怎么画?对于很多研究人员和开发者来说,内容的「可视化」是一个大问题。如果从头开始画,配色、空间布局都很伤脑筋,而且画丑了也拿不出手,要是有模板可以套就好了。

张倩、魔王 ·  2020-05-26 14:28:12
机器学习:物联网成功的诀窍?

通过机器学习,物联网可以完美地运行。全球各地的组织正在竞相利用物联网的能力,但是,其中许多组织都被我们讨论过的一个或多个障碍所困扰。不过,不管您遇到什么问题,都可以通过结合了机器学习技术的方法来解决。

iothome ·  2020-05-25 22:39:38
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载