上QQ阅读APP看书,第一时间看更新
2.5 小结
TensorFlow 2.0是一个丰富的生态开发系统,由两个主要部分组成:训练和伺服。训练包括一组用于处理数据集的库(tf.data
)、一组用于构建模型的库(包括高阶库(tf.keras
和估算器)、低阶库(tf.*
))和一个预训练模型(tf.hub
)的集合,这将在第5章中进行讨论。训练可通过分布式策略在CPU、GPU和TPU上进行,并可使用适当的库来保存结果。伺服可在多种平台上进行,包括本地、云、Android(安卓)、iOS、Raspberry Pi(树莓派)、任何支持JavaScript的浏览器和Node.js。TensorFlow 2.0支持多语言绑定,包括Python、C、C#、Java、Swift、R等。图2-6总结了本章中讨论的TensorFlow 2.0的架构:
图2-6 TensorFlow 2.0架构总览
- tf.data用于高效加载模型。
- tf.keras和估算器是高阶库,TensorFlow 1.x的功能仍可通过tf.*低阶库访问。tf.keras支持即刻计算,并通过tf.function保持了低阶计算图的性能。tf.hub是一个很好的预训练模型集合,可以立即使用。
- 分布式策略允许训练在CPU、GPU和TPU上运行。
- SavedModel可以在多个平台上兼容。
在本章中,我们讨论了TensorFlow 1.x和2.x之间的主要区别,并回顾了2.x中最新可用的强大功能。本章讨论的关键主题是TensorFlow 1.x的计算图以及TensorFlow 2.x的优点,例如支持即刻执行、分布式和TPU训练。下一章将介绍回归,它是功能非常强大的工具,可用于数学建模、分类和预测。