Spark的危机与机遇:未来必然是AI框架倒推数据处理框架

作者 | 祝威廉,主要关注大数据/机器学习方向,

现丁香园资深数据架构

来源 | 经授权转载自简书

AI 前线导读:上周,在 Spark+AI Summit 大会上,Spark 和 Mesos 的核心作者兼 Databrick 首席技术专家 Matei Zaharia 宣布推出开源机器学习平台 MLflow,这是一个能够覆盖机器学习全流程(从数据准备到模型训练到最终部署)的新平台,旨在为数据科学家构建、测试和部署机器学习模型的复杂过程做一些简化工作。Matei 表示,研究工作主要围绕着“如何为开发者提供类似谷歌 TFX、Facebook FBLearner Flow 等平台类似的好处,但是要以开放的方式——不仅在开源的意义上开放,而且是可以使用任何工具和算法的意义上开放"的想法展开。AI 前线对这个平台进行了详细报道,详见 《Spark 团队开源新作:全流程机器学习平台 MLflow》

对于这个全新的机器学习平台,大家存在各种各样的疑问,包括 MLflow 的定位是什么?它与 TensorFlow 之间是什么样的关系?今天我们带来了祝威廉老师对于 MLflow 的一些看法,供大家参考。

更多优质内容请关注微信公众号“AI 前线”,(ID:ai-front)
MLFlow

上周发了一篇文章《Spark 团队新作 MLFlow 解决了什么问题》(https://www.jianshu.com/p/2ed60a1dc764 )描述了我对 MLFlow 的一些看法,现在想来,Spark 团队是非常聪明的,AI 同学都有自己的社、自己的生态,Spark 则是在工程研发群体具有很大的影响力,而在 AI 领域并没有太大号召力。所以它其实是没办法通过一个颠覆性的东西去让 AI 同学转移过来的,而 MLFlow 并没有改变 AI 同学的原有习惯和流程,它提供了一些辅助工具和标准,解决了一些痛点,慢慢渗透,从而实现慢慢转型,当然,最后也完全可能也掀不起什么波澜。

Spark 光鲜背后的挑战

第一个便是 AI 浪潮崛起,对 Spark 即是危机也是机遇。DataBrick 现在一直宣称自己是一家 AI 公司,不过你可能会好奇,为什么 Spark 背后的 DataBrick 公司不好好固守数据处理方面的优势,而不断尝试转型 AI 呢?刨去整个资本市场和技术浪潮不谈,其实最大的问题是 未来必然是 AI 框架倒推数据处理框架。AI 框架很可能衍生出适合自己的数据处理框架,比如 TensorFlow,对 tf.data 进行了很大的增强,方便做数据处理。如果 Spark 不主动出击,未来会很被动。

第二个就是流式了,随着流式时代的来临,而在此之前 Spark 在流式领域一直不紧不慢,加固在批处理方面的优势的同时也丧失了流领域的先机,很多公司(尤其是云公司,比如阿里云、华为等)都转向 Flink。我在 16 年的时候,就不断强调流式计算的重要性,比如这篇文章《数据天生就是流式的》(https://www.jianshu.com/p/9574e359ce35 ),为此还专门建立了一个专题。这也使得 Spark 在传统数据处理领域不断遭受新的挑战。

步履日渐沉重

Spark 还提出了一个 Hydrogen 设计,从而使得 Spark 能够更好地结合深度学习框架。从某种角度而言是顺应形势,但其实是在转型 AI 的情况下不得已而为之。

依然是王者

Spark 依然是我用过最好用的工具,依然有最好的生态。基于它之上,做很多事情会变得很轻松。

后话

其实我觉得和 AI 进行适配,不一定是朝着整合 AI 框架的方向发展。前面我们提到 未来必然是 AI 框架倒推数据处理框架,只要让 Spark 能够更好的为 AI 做数据预处理,成为事实标准,并且适配主流 AI 框架,那么 Spark 必然会有一个新的护城河。最简单的例子,Spark 2.3 已经支持图片处理了,但是其实还是蛮多问题的,是可以做得更好的。另外能不能支持张量?总之最好的策略其实是压缩 AI 框架的边界,保证 Spark 在数据处理方面的绝对垄断地位。我在实际使用中发现,很多数据预处理,Spark 目前做起来是不方便的,非得用 AI 算法库的函数。

当然,还有就是加速流的发展,并且加大这方面的宣传和投入,确定在数据处理第二阶段依然能够保持领先优势。

原文链接:

https://www.jianshu.com/p/2dc96dfc89c8