TensorFlowOnSpark 为 Apache Hadoop 和 Apache Spark 集群带来了可扩展的深度学习。
通过将 TensorFlow 深度学习框架的显着功能与 Apache Spark 和 Apache Hadoop 相结合,TensorFlowOnSpark 可在 GPU 和 CPU 服务器集群上实现分布式深度学习。
它支持在 Spark 集群上进行分布式 TensorFlow 训练和推理,目标是最大限度地减少在共享网格上运行现有 TensorFlow 程序所需的代码更改量。其与 Spark 兼容的 API 通过以下步骤帮助管理 TensorFlow 集群:
TFNode.DataFeed
类将 Spark RDD 数据发送到 TensorFlow 节点。请注意,我们利用 Hadoop 输入/输出格式来访问 HDFS 上的 TFRecord。TensorFlowOnSpark 由雅虎开发,用于在雅虎私有云中的 Hadoop 集群上进行大规模分布式深度学习。
与其他深度学习解决方案相比,TensorFlowOnSpark 提供了一些重要的优势(请参阅我们的博客)。
TensorFlowOnSpark 作为 pip 包提供,可以通过以下方式安装在单台计算机上:
# for tensorflow>=2.0.0
pip install tensorflowonspark
# for tensorflow<2.0.0
pip install tensorflowonspark==1.4.4
对于分布式集群,请参阅我们的 wiki 网站以获取特定环境的详细文档,例如单节点 Spark Standalone、YARN 集群和 AWS EC2 的入门指南。注意:由于此问题,当前不支持 Windows 操作系统。
要将 TensorFlowOnSpark 与现有 TensorFlow 应用程序结合使用,您可以按照我们的转换指南来描述所需的更改。此外,我们的 wiki 网站还提供了一些演示文稿的链接,这些演示文稿提供了该平台的概述。
注意:由于 TensorFlow 2.x 破坏了与 TensorFlow 1.x 的 API 兼容性,因此示例已相应更新。如果您使用的是 TensorFlow 1.x,则需要查看v1.4.4
标签以获取兼容的示例和说明。
API文档是从代码自动生成的。
请加入 TensorFlowOnSpark 用户组进行讨论和提问。如果您有疑问,请在发帖前查看我们的常见问题解答。
随时欢迎您的贡献。欲了解更多信息,请参阅我们的参与指南。
该软件的使用和分发条款包含在 Apache 2.0 许可证中。有关条款,请参阅许可证文件。