趋近智
TensorFlow 是一个由 Google Brain 团队开发的强大开源软件库,主要设计用于数值计算,尤其注重机器学习和深度学习应用。如果你想构建、训练和部署机器学习模型,特别是复杂的神经网络,TensorFlow 提供了一套全面的工具和资源来支持你的工作。
其核心是,TensorFlow 基于 张量 进行操作,张量是多维数组,将向量(一维张量)和矩阵(二维张量)推广到更高维度。“TensorFlow” 这个名字本身就表明了这一点:计算涉及这些张量在操作图中流动。虽然图的思路在 TensorFlow 1.x 中非常明确,要求用户先定义整个计算图,然后在会话中执行它,但 TensorFlow 2.x 采用了更直接的方法。
TensorFlow 2.x 代表着一次重大重构,旨在与前身相比提高可用性和生产力。主要变化解决了常见痛点,并将最佳实践直接整合到库中:
默认即时执行: 这也许是最具影响力的变化。在 TensorFlow 2.x 中,操作在 Python 调用时立即执行。它们返回具体数值,而不是仅仅在需要单独执行的图中构建符号节点。这让 TensorFlow 用起来更像带有 NumPy 等库的标准 Python 编程。它极大简化了调试,并使得迭代和试验更直接。你可以打印张量值,使用标准 Python 控制流(if、while),并轻松查看中间结果。
高层 API 集成 (Keras): Keras 是一个常用且用户友好的神经网络库,现在是 TensorFlow 的官方高层 API。tf.keras 提供直接的构建模块(层、模型、优化器、损失函数),显著减少了定义和训练模型所需的样板代码。我们将在后续章节中大量使用 Keras 提供的 Sequential 和 Functional API。这种紧密集成使得常见的深度学习任务更容易上手。
简化的 API 结构: TensorFlow 2.x 精简了其 API 表面,移除了 TF 1.x 中许多冗余或令人困惑的函数(如 tf.contrib),并更合理地组织了其余功能。这使得代码更简洁、更易于维护。
使用 tf.function 优化性能: 尽管即时执行提高了可用性,但纯 Python 执行有时会比执行预编译计算图慢,尤其是对于复杂模型或在 GPU 或 TPU 等加速器上运行时。TensorFlow 2.x 提供了 tf.function 装饰器。将此装饰器应用于 Python 函数,TensorFlow 会自动将其编译为高度优化的计算图。这兼顾了两者的优点:开发和调试期间即时执行的便捷性,以及图执行在训练和部署时的性能优势。
TensorFlow 用途广泛,尤其在深度学习任务中表现出色:
有几个因素促成了 TensorFlow 的受欢迎:
本章主要介绍如何正确设置环境。安装并验证后,你将准备好在下一章学习 TensorFlow 的基本组成部分,从张量的核心思路开始。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造