八个PYTHON数据生态圈的前沿项目_第1页
八个PYTHON数据生态圈的前沿项目_第2页
八个PYTHON数据生态圈的前沿项目_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、八个 python 数据生态圈的前沿项目galvanize 最近在旧金山参加了dato 数据科学峰会,这次会议聚集了千余名来自业界和学术界的数据科学研究人员,他们交流并探讨关于数据科学、 机器学习应用和预测模型的最新进展。以下是我导师认为数据科学家将在未来数月乃至数年里使用的八个python 工具。1. sframeand sgraphdato 数据科学峰会中重磅消息之一是dato 将在bsd 协议下开源 sframe 和sgraph 。 sframe(short for scaleabledata frame) 提供可以优化内存效率的柱状数据结构和数据框式的界面。sgraph 具有相同的特性

2、但是它主要用于提高画图效率。 这两种数据结构最大的优点之一在于它们使得数据科学家可以做基于外存的数据分析,而不需要把数据导入内存中。这一消息传达出dato 公司支持python 数据生态圈发展的诚意, 这是 dato 和python 数据社区发展的一个转折点。自从dato 公司推出企业版软件后,数据社区用户通常都有类似的误解,他们认为dato 公司会利用免费版本绑定用户,用户最终还是得付费。 通过将程序库转化为开源工具, 我们看出这种小把戏并不是 dato 公司的目标。 如今这两个程序库已经变成开源工具,我们希望看到其他开发者( pandas, 说的就是你)能够充分利用sframe 和 sgr

3、aph 从而解决内存限制的问题。2. bokehbokeh 是一个不需要服务器就可以在网页浏览器中实现交互式可视化的python程序库。 bokeh 可以处理非常大的数据集甚至是大数据流(比如实时光谱图),同时它还具有运算速度快、 可嵌入和可视化新颖的特点。 它对于想要快速便捷地创建交互式图表和数据应用的人来说非常有用。bokeh 真正表现出色的地方是大数据的可视化过程。与这些数据打交道的人应该感谢bokeh 致力于提升自身的性能。目前大多数的交互式工具都需要利用javascript 来实现,但是bokeh 仅利用 python 一种语言即可实现。3. daskdask是一款基于外存的pyth

4、on 调度工具。 它通过将数据集分块处理并根据所拥有的核数分配计算量,这有助于进行大数据并行计算。dask 是利用python 语言编写的,同时也利用一些开源程序库,它主要针对单机的并行计算进程。dask主要有两种用法。普通用户将主要利用dask 提供的集合类型,它的用法类似于 numpy 和 pandas 这样的常规程序库,但它内部包含了画图功能。另一方面, dask 开发者可以直接制作图表。dask 图表利用python 字典、元组和函数来编码算法,而且它不依赖于dask 所提供的集合类型。目前 python 生态圈中的许多程序库功能相近。但是blaze,dask 和 numba 这些程序

5、库共同作用于数据处理过程的不同层面上。类似的,你可以把blaze 看成关系型数据库管理系统的查询优化器,而把 dask 看成执行查询的引擎。 关于这一点, blaze 优化了查询或者控制命令的符号表达式,而dask可以根据你的硬件情况来优化执行过程。4. ibis如果你是一个数据科学家,可能你每天都会使用python 。虽然 python 在很多方面都很优秀, 但是它也存在自身的局限。 其中最大的一个问题在于python 不能很好地适应数据集大小的变化。它对于小数据集很有效, 但是对于更大的数据而言,则需要利用抽样的方法来解决数据集的规模问题,这会影响到最终的研究结果。ibis 是 cloud

6、era 实验室的新项目,它试图为具有python 工作经验的数据科学家和工程师们提供一个适用于任何数据规模的数据分析框架。这反映出单机版的python 在功能和可用性上并没有妥协,可以在处理大数据时提供相同的交互体验和全保真度分析。ibis 允许使用100% 的端到端用户工作流, 也整合了现有的python 数据生态圈(pandas,scikit-learn,numpy 等)。ibis 目前还是预览版,未来它将加入更多的功能,比如整合高级分析工具、机器学习方法和其他高性能的计算工具。5. splash抓取网页数据时经常碰到一个问题,许多网站使用大量的javascript 代码。网页抓取工具很难

7、执行javascript 代码,所以你往往只能得到原始html 数据。由scrapy 鼻祖 scrapinghub 所创建的splash 是一种 javascript 渲染服务,它通过python 的 twisted 和 qt 来实现。这是一个带有能够并行处理多个网页的轻量级网页浏览器,它可以执行自定义javascript 代码并利用关闭图片或广告屏蔽的功能来提升渲染速度。6. petuumpetuum 是一个分布式机器学习框架,它试图为大规模机器学习问题提供一个通用算法和系统接口。 它提供了解决大规模机器学习数据集和参数太大问题的分布式编程工具。 petuum 专门为机器学习设计,这意味着它

8、可以利用数据的各种统计性质来优化性能。petuum 具有多项核心功能: b?sen 是一个为数据并行机器学习算法设计的关键值存储仓库。它利用ssp(stalesynchronousparallel )一致性模型,该模型允许在不牺牲算法正确性的情况下使用异步功能。另外一个功能是strads,它是一个为模型并行机器学习算法而设计的调度工具。它执行了关于机器学习更新操作的小粒度调度,而且优先计算的部分程序需要避免可能损害性能的不安全并行操作。7. flinkapacheflink 是可扩展的批处理和流处理的数据处理平台。flink 的核心组件是一个提供数据分布、通信和容错功能的流数据处理引擎。它和a

9、pachespark 非常相似,因为它们的主要目的之一就是替代hadoop 的 mapreduce 功能。虽然 spark 和 flink 的 api 非常相似,但是两者处理数据的方式存在不同之处。当 spark 处理流式数据时,它实际上利用单位时间内的数据片集合进行小批量处理。这可以视为流处理的近似过程。通常情况下它表现良好, 但是在对延迟要求较高的情况下会引发一些问题。另一方面,flink 是一个可以实现批量处理的流处理框架。换句话说,除了做简单的工作(批量处理)和对较难的工作(流程处理)以外, flink 既可以解决较难的工作,也可以处理简单的任务。8. pyxley基于网页的仪表板 (dashboards) 是分享数据科学发现的最直观方法之一。shiny包给使用r 语言的数据科学家提供了一个不必通过编写javascript, html 和css 就可以构建交互式网页应用程序的框架,但是在python 中却没有类似的功能。 pyxley 就相当于python 版的 shiny ,它简化了网页应用程序开发的过程并可以通过flask

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论