- 深度学习实战:基于TensorFlow 2和Keras(原书第2版)
- (意)安东尼奥·古利 (印)阿米塔·卡普尔 (美)苏吉特·帕尔
- 815字
- 2021-08-24 10:46:29
2.3 TensorFlow 2.x生态系统
如今,TensorFlow 2.x是一个丰富的学习生态系统,除了核心学习引擎外,这里还有大量可免费使用的工具。尤其是:
- TensorFlow.js(
https://www.tensorflow.org/js
)是API的集合,可直接在浏览器或Node.js中训练和运行推断(inference)。 - TensorFlow Lite(
https://www.tensorflow.org/lite
)是用于嵌入式和移动设备的TensorFlow的轻量级版本。当前,Java和C ++支持Android和iOS。 - TensorFlow Hub(
https://www.tensorflow.org/hub
)是一个完整的库,支持最常见的机器学习架构。截至2019年4月,Hub仅部分支持tf.Keras
API,但此问题(https://github.com/tensorflow/tensorflow/issues/25362
)即将解决。我们将在第5章中看到一个Hub示例。 - TensorFlow Extended(TFX)(
https://github.com/tensorflow/tfx
)是一个完整的端到端学习平台,其中包括转换工具(TfTransform)、分析工具(TensorFlow Model Analysis)和推断期间学习模型的高效伺服(TensorFlow Serving)。TFX管道可用Apache Airflow和Kubeflow Pipelines进行编排。 - TensorBoard是用于检查、调试和优化模型及指标的可视化环境。
- Sonnet是一个类似于Keras的库,由DeepMind开发,用于训练其模型。
- TensorBoard Federated是一个在去中心化数据上使用机器学习和其他计算工作的框架。
- TensorBoard Probability是一个将概率模型与深度学习相结合的框架。
- TensorBoard Playground是一个不错的UI,用于可视化、调试和检查神经网络。常用于教育教学。
- 加速线性代数(Accelerated Linear Algebra,XLA)是线性代数的特定领域编译器,可优化TensorFlow计算。
- MLPerf是一个ML基准套件,用于测量ML软件框架、ML硬件加速器和ML云平台的性能。
- Colab是免费的Jupyter Notebook环境,无须设置,完全在云上运行。用户可以通过浏览器免费编写和执行代码,保存和共享分析,以及访问强大的计算资源。
- TensorFlow Datasets是TensorFlow中包含的官方数据集。此外,还有可通过Google Research和Google支持的数据集搜索(
https://toolbox.google.com/datasetsearch
)免费获得的数据集。
资源、库和工具的清单很长,每个工具都需要单独的一章(在某些情况下,需要用一整本书来介绍!)。在本书中,我们使用Colab、TensorBoard、Hub和Lite,并给读者留下线上查看其他资源的任务。研究人员还可以使用TensorFlow Research Cloud(TFRC)计划,该计划使你可以申请访问包含1000多个Cloud TPU的集群。
模型、数据集、工具、库和扩展插件可在https://www.tensorflow.org/resou-rces/tools
找到。
语言绑定
Python是TensorFlow的首选语言。但是,存在与许多其他语言的绑定,包括JavaScript、C++、Java、Go和Swift。该社区还维护与其他语言的绑定,包括C#、Haskell、Julia、Ruby、Rust和Scala。通常,C语言的API用于构建对其他语言的绑定。