专栏名称: Python开发者
人生苦短,我用 Python。伯乐在线旗下账号「Python开发者」分享 Python 相关的技术文章、工具资源、精选课程、热点资讯等。
目录
相关文章推荐
Python爱好者社区  ·  永久激活GPT4.0!有效期至2296年!我 ... ·  3 天前  
Python爱好者社区  ·  应届生炒到66.8w年薪,真心建议冲冲这个新 ... ·  5 天前  
Python爱好者社区  ·  又一大企启动大规模自愿离职计划,一千多人报名 ... ·  1 周前  
Python爱好者社区  ·  yyds!Kaggle教程 ·  6 天前  
Python爱好者社区  ·  68k,确实可以封神了! ·  1 周前  
51好读  ›  专栏  ›  Python开发者

5 个开源 Python 库,让机器学习更简单

Python开发者  · 公众号  · Python  · 2017-04-05 21:08

正文

(点击上方蓝字,快速关注我们)


来源:达尔文

my.oschina.net/editorial-story/blog/854878

如有好文章投稿,请点击 → 这里了解详情


机器学习令人兴奋,但实际操作却很困难也很复杂。它涉及到很多手动操作,如集合工作流和管道,设置数据源,以及在内部部署与云部署的资源之间切换等。


Python 是一款强大的工具语言,被广泛应用在大数据和机器学习之中。以下推荐了 5 个 Python 库,帮你疏通机器学习之路。


PyWren


PyWren 允许你将基于 Python 的科学计算工作负载作为多个 AWS Lambda 函数来运行。The New Stack 上一份对该项目的描述是,使用 AWS Lamba 作为强大的并行处理系统,处理可以切分为多个小任务的项目,从而不用占据大量的内存或存储空间。


此项目有个缺点是 lambda 函数运行不能超过 300 秒。但如果是一份只需几分钟就能完成的工作,并且要在数据集中运行上千次,那 PyWren 会是不错的选择,它能在一定程度上将用户硬件上无法运行的工作平行化至云端。


Tfdeploy



Google 的 TensorFlow 框架在发布了 1.0 版本之后进入辉煌时期,这时人们要问了:如何才能在不使用 TensorFlow 本身的情况下,使用在 TensorFlow 上训练的模型?


Tfdeploy 能给你答案。它将经过训练的 TensorFlow 模型导出为“简单的基于 NumPy 的可调用对象”,即该模型可以在 Python 中使用,并以 Tfdeploy 和 NumPy math-and-stats 库为唯一的依赖关系。大多数可以在 TensorFlow 中执行的操作也可以在 Tfdeploy 中执行,你可以通过标准的 Python metaphors 来扩展库的行为(如,重载类)。


Luigi



编写批量作业只是处理数据堆的一部分,你还需要将所有作业串起来生成类似工作流和管道的东西。


Luigi 由 Spotify 创建,用于“解决与长期运行成批处理作业有关的管道问题”。开发者可以通过 Luigi 采用多个不同且不相关的数据处理任务,如,Hive 查询,Java 中的 Hadoop 任务,Scala 中的 Spark 任务,从数据库转储 table 等,还可以创建一个端到端运行它们的工作流。


对任务的整个描述以及依存性被打造为 Python 模块,而不是作为 XML 配置文件或其他数据格式创建,因此可以集成到其他以 Python 为中心的项目中。


Kubelib


如果你使用 Kubernetes 作为机器学习作业的编排系统,那么你会祈祷 Kubernetes 产生的问题不要比解决的问题还多。Kubelib 为 Kubernetes 提供了一组 Pythonic 接口,最初是为了协助 Jenkins 脚本工作。但是它可以在没有 Jenkins 的情况下使用,它可以处理 kubectl CLI 或 Kubernetes API 暴露的一切服务。


PyTorch


PyTorch 是一个 Torch7 团队开源的 Python 优先的深度学习框架,提供两个高级功能:强大的 GPU 加速 Tensor 计算(类似 numpy),构建基于 tape 的自动升级系统上的深度神经网络。你可以重用你喜欢的 python 包,如 numpy、scipy 和 Cython ,在需要时扩展 PyTorch。


通常使用 PyTorch 是将其作为 numpy 的替代品,以使用强大的 GPU 能力,或作为一个深度学习研究平台,提供最大的灵活性和速度。


看完本文有收获?请转发分享给更多人

关注「大数据与机器学习文摘」,成为Top 1%