宣布 Swift for TensorFlow 已在 GitHub 上开源

2,145 阅读2分钟

今年三月,我们在 TensorFlow 开发者峰会上公开演示了 Swift for TensorFlow,现在我们很高兴宣布 Swift for TensorFlow 已在 GitHub 上开源:

https://github.com/tensorflow/swift

Swift for TensorFlow 为 TensorFlow 提供了一种新的编程模型,将 TensorFlow 计算图与 Eager Execution 的灵活性和表达能力结合在了一起,同时还注重提高整个软件架构每一层的可用性。为了实现我们的目标,经过深思熟虑,我们决定直接改进 Swift 编程语言和编译器,使得 Tensor 成为 Swift 语言里面的一等公民,以此提升用户体验。

我们的方法不同于一般的 TensorFlow 使用方法,开放了很多新的机会和渠道来解决现存问题。尽管目前项目尚处于早期开发阶段,我们还是决定将其开源,将我们的设计方案公布在开放的讨论组中,让所有爱好者都能参与进来。

设计文档

我们编写了一些文档,详细介绍了我们的理论和实现。这些文档都可以在 README 文件中找到:

https://github.com/tensorflow/swift/blob/master/README.md

第一个必读文档是“Swift for TensorFlow 设计总览”,这里介绍了项目的主要组成部分以及结合方式。

另外,我们还会详细介绍项目的几个重要领域。我们设计的基础是一个我们称之为“Graph Program Extraction”的算法,它可以让你用 Eager Execution 式的编程模型来轻松地实现代码,同时还保留 TensorFlow 计算图的高性能优势。另外,我们将高级的自动微分功能直接集成在了 Swift 语言和编译器里面。我们还深入介绍了 Python 与 Swift 的集成,让你直接通过 Swift 代码使用任意 Python API。

实现可靠的 Graph Program Extraction 算法对于编程语言的设计有很高的要求,经过分析和讨论,我们选择了 Swift 作为主语言。如想了解我们如何决定了使用 Swift 作为 TensorFlow 的编程语言,你可以在这里找到答案:

https://github.com/tensorflow/swift/blob/master/docs/WhySwiftForTensorFlow.md

行动起来吧!

鉴于项目还在早期阶段,你可以通过很多方式参与进来,为项目贡献自己的力量!我们有 macOS 和 Linux 的安装包,以及教你如何获取源代码的开发指南。在此阶段,如果你遇到困难,可以在 TensorFlow 中文社区论坛的 “TensorFlow 建议和反馈” 板块联系我们:

https://www.tensorflowers.cn/b/issues

我们很高兴能够为 TensorFlow 创造一个全新的编程体验,同时我们也希望倾听你们的意见!

  点击下方 |   |  了解更多

Be a Tensorflower