打造 TensorFlow 的未来

发布人:TensorFlow & 机器学习团队

我们已开始着手规划 TensorFlow 的未来,并希望通过本文跟大家分享我们的愿景。

在 2015 年 11 月 9 日,大约 7 年前,我们开放了 TensorFlow 的源代码。自那之后,在全球数千位开源创作贡献者的帮助,以及由谷歌开发者专家、社区组织者、研究人员和教育工作者所组成的出众社区的支持下,TensorFlow 逐步确立了其地位。

如今,TensorFlow 已被数百万开发者采用,成为使用率最高的机器学习平台。TensorFlow 不仅是 GitHub 上星标数量排名第 3 的软件代码库(仅次于 Vue 和 React),还是 PyPI 上下载量最高的机器学习软件包。TensorFlow 已将机器学习引入了移动生态系统:目前约 40 亿台设备在运行 TFLite,您的设备或许就是其中之一。TensorFlow 还将机器学习引入了 Web 领域:TensorFlow.js 目前的每周下载量已达 17 万次。

如今,我们的用户群和开发者生态系统比以往任何时候都庞大,并且还在不断扩展!

我们不仅将 TensorFlow 的发展视为一项值得庆祝的成就,还将其视为进一步发展机器学习社区、创造更多价值的机会。

我们的目标是提供全球最好的机器学习平台。让 TensorFlow 成为每位开发者工具箱中新的强大软件,同时将机器学习从小众技术转变为同网络开发一样成熟的领域。

为实现这一目标,我们倾听用户需求、预测新的行业趋势、迭代我们的 API,并努力让您更轻松地进行大规模创新。就像 TensorFlow 最初推动深度学习兴起一样,我们希望为您提供一个可以挑战无限可能的平台,以便继续促进机器学习的发展。机器学习正在快速发展,TensorFlow 亦是如此。

现在,很高兴地宣布,我们已经开始着手开发下一个 TensorFlow 迭代,以实现机器学习的下一个十年发展目标。我们正在构建出色的 TensorFlow 功能,同时专注于四大支柱。

TensorFlow 的四大支柱

快速和可扩展

  • XLA 编译

    我们高度关注 XLA 编译,以 XLA 在 TPU 上的性能优势为基础,致力于加快大多数模型训练和推理工作流在 GPU 和 CPU 上的运行速度。我们还计划将 XLA 打造成为行业标准的深度学习编译器,并已将其作为 OpenXLA 计划 的一部分,开放给开源协作。

  • 分布式计算

    我们正专注于 DTensor 的研究,这是一种用于大规模模型并行的全新 API。DTensor 开启了超大模型训练和部署的未来之门,让您可以像在单个设备上进行训练一样开发模型,甚至在使用多个客户端时亦可如此。DTensor 将与 tf.distribute API 整合,让柔性模型和数据并行成为现实。

  • 性能优化

    除编译外,我们还进一步投入于算法性能优化技术,例如混合精度和降低精度计算,从而在 GPU 和 TPU 上带来可观的提速表现。

应用机器学习

  • 用于 CV 和 NLP 的新工具

我们正投入于构建应用机器学习生态系统,特别是通过 KerasCVKerasNLP 软件包为应用 CV 和 NLP 用例(包括多种先进的预训练模型)提供模块化、可组合的组件。

  • 生产级解决方案

我们正在扩展 TF Model Garden (GitHub),以覆盖广泛的机器学习任务和领域。Model Garden 可以提供端到端生产级建模解决方案。它包含许多前沿 (State of the Art, SOTA) 的模型实现,此类实现适用于计算机视觉和自然语言处理 (NLP),不仅可以重现,而且符合规范。此外,Model Garden 还提供训练代码库,以便您快速运行使用此类模型的机器学习实验,并导出为标准 TF Serving 格式。

  • 开发者资源

我们正在为热门以及新兴的应用机器学习用例添加更多代码示例、指南和文档。这样做的目的是为了逐渐降低机器学习领域的准入门槛,使其成为每位开发者得心应手的工具。

随时可供部署

  • 更易导出

我们正在简化将模型导出到移动设备(Android 或 iOS)、边缘设备(微控制器)、服务器后端或 JavaScript 的流程。用户可以将模型导出到 TFLiteTF.js 并优化其推理性能。操作起来与调用“model.export()”一样简单。

  • 面向应用的 C++ API

我们正在开发一个公共 TF2 C++ API,以作为 C++ 应用的一部分用于本地服务器端推理。

  • 部署 JAX 模型

我们正努力让您更轻松地部署使用 JAX 和 TensorFlow Serving 开发的模型,以及让您更轻松地使用 TensorFlow Lite 和 TensorFlow.js 将模型部署到移动设备和网站中。

简单化

  • NumPy API

随着机器学习领域在过去几年中的快速发展,TensorFlow 的 API 接口也在随之增加,但 API 的增加方式并非总是一致或易于理解的,因此我们正在积极致力于整合和简化这些 API。例如,我们将会针对数字采用 NumPy API 标准

  • 简化调试

框架不仅包含其 API 接口,调试体验也同样重要。我们的目标是专注于优化调试功能,从而最大限度缩减开发各种应用机器学习系统所需的时间。

TensorFlow 未来将会 100% 向后兼容

我们希望 TensorFlow 可以成为机器学习行业赖以发展的基石,并将 API 稳定性视为其中最重要的一个特性。作为在产品中依赖 TensorFlow 的工程师,以及 TensorFlow 生态系统软件包的构建者,您应该能够升级到最新 TensorFlow 版本,并即刻受益于它的新功能和性能改进,而无需担心现有代码库可能会崩溃。因此,我们承诺从 TensorFlow 2 开始到下一个版本,TensorFlow 将会完全向后兼容。您的 TensorFlow 2 代码将按原样运行,无需运行转换脚本,也无需进行手动更改。

时间线

我们计划在 2023 年第 2 季度发布全新 TensorFlow 功能的预览版,并在同年晚些时候发布正式版本。在此期间,我们将会定期发布最新进展情况。您可以关注 TensorFlow 博客 和 TensorFlow YouTube 频道,以及我们的官方微信公众号获悉进展。

原文:Building the Future of TensorFlow
中文:TensorFlow 公众号