随着大数据工具数量的增长和计算能力的飞跃,数据科学家越来越多地发现,如果他们想从自己的模型中获得最佳性能,那就必须考虑所使用的数据管道。
数据科学工具的功能通常围绕着预测建模,机器学习和数据可视化。但这些工具还应该包括后端数据管道技术,因为这有助于加快分析的速度。
更强的计算能力
数据科学家们通常喜欢把后端技术扔给工程师来处理。当你的主要关注点是提高模型的预测精度或发现一个数据集中的未知相关性时,文件系统和资源管理工具通常情况下并不十分友好。
但随着大数据工具数量的增长和计算能力的飞跃,数据科学家越来越多地发现,如果他们想从自己的模型中获得最佳性能,那就必须考虑所使用的数据管道。
“有了更强的计算能力,我们可以进行多次回归操作,这很让人兴奋,”Brendan Herger,银行和金融服务公司Capital One的数据科学家表示。“这的确有助于快速发展,因为你有了更多的可用资源,让一切变得容易。”
位于McLean, Va.的Capital One公司支持各种各样的工具,但Herger表示,大部分的分析工作是通过Hadoop分布式文件系统和与其对应的YARN资源管理器完成的。在Hadoop平台之上,他使用H2O.ai提供的机器学习软件做了很多建模。其他数据科学家和数据分析师使用不同的前端数据科学工具,例如GraphLab,Apache Zeppelin和Tableau。据Herger所述,一个强大、灵活的后端系统可以支持大数据集的快速访问,无视前端工具的差异性。
不需要进行数据采样
Herger说,这种后台计算能力让他能够对完整的数据集进行分析,不再需要进行数据采样。他认为是否取样这个问题“几乎类似于一个宗教问题,”分析完整的数据集有几个很大的好处。首先它保留了完整的数据,包括所有可能存在的信号。当数据被划分成多个样本时,信号可能会丢失或变得并不那么明显。
“不进行采样,这样对数据科学家来说是非常有意义的”Herger 说。“计算能力的提升,让人们得以在整个数据集上运行分析,这样的分析将越来越普遍”。
对于San Francisco Macys.com 公司的高级分析主任Daqing Zhao来说,拥有强大的数据架构,为他的团队带来的主要好处就是速度。“我们希望进行快速原型开发,”本月在Boston举行的TDWI Accelerate会议上,Daqing Zhao说道。
赵的团队负责优化Macys.com网站,该网站是Macy ‘ s Inc的零售门户。优化工作范围很广,例如设计变更,进行A / B测试,构建产品推荐引擎,为每个客户提供个性化的推荐等。他的团队使用的主要大数据工具是以Hadoop和Spark系统为基础构建的,它支持一系列分析工具,既包括SAS Institute和IBM提供的商业化分析工具,也包括一些开源工具,像H2O,R和Mahout等。
数据沙盒有助于数据分析
Zhao 要求Macys.com的数据工程团队在公司数据仓库中为他的团队构建数据沙盒。这允许他团队中的数据科学家以一种实际相关性来转换或连接数据,而不需要在数据记录级别进行任何数据变更。
对于所有这些工具,Zhao表示,H2O在进行预测建模尤其有用。他第一次意识这一点是在最近的一次演示某个软件的会议上。他说,在11秒内,工具在一个有着一亿行数据的数据集上执行一次逻辑回归。重要的是,这些工具能够与公司的后端数据基础设施完美集成,这使得它更具有吸引力。
Zhao说,他现在沉迷于那些数据科学家可用的开源数据工具。除了其对于大数据强大处理能力,这些工具的背后还有着广受欢迎的大型社区支持,这使得它更容易找到相关问题的答案。集成开源工具和数据基础设施通常会存在一定的问题,因为在出现问题时,并没有专业的技术支持来帮你解决。但此类工具的日益普及逐渐削弱了这个问题产生的影响。
“因为开源软件的逐渐流行,你可以使用谷歌或在论坛里找到答案,”Zhao说。“以前你遇到开源软件的问题,可能会感到孤立无援,现在不会这样了。”
从数据管理中解放出来
当数据科学家在后端系统上运行一些任务时,他将会花费更少的时间在数据管理上。
Colin Borys遇到的情况大致如此,Colin是Riot Games Inc.公司的数据科学家,该公司就是大名鼎鼎的对战游戏LOL的开发商。在6月旧金山举行2016 Spark Summit峰会的一次演讲中,Borys表示,他的团队会监控网络流量,以试图发现是否有玩家正在遭遇网络拥堵,是否可以通过网络疏导来提高网络连通性。数据科学团队还开发了一个推荐引擎,建议玩家选择不同的服务器来均衡网络负载。
在之前,大部分工作是基于Hive上运行的临时查询,但Borysr认为这种方法并不高效,不具有较好的可伸缩性。Riot Games随后引入了Spark技术,部分原因是它想让数据科学家在Hadoop数据上执行SQL查询,对于SQL,他们已经非常熟悉。这家位于Los Angeles的公司开始使用Databricks提供的云Spark平台,这样不需要有专门的人来花时间管理集群。
在引进的Spark之前,Borys说,数据科学家会花费大量的时间在准备数据上。现在他们可以利用这些时间来完成实际的数据分析。
“我们想要解放分析师,”他说道。“使用Spark,进行数据分析容易的多,它也让分析变得更为有效。”
本文作者:小骨头
来源:51CTO