版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jinxiaonian11/article/details/102079035
文章目录
- 1. 概要
- 2. 更新说明
- 2.1 v2.0正式版
- 2.1.1 keras作为高级API
- 2.1.2 编程方式发生变化
- 2.1.3引入分布式策略
- 2.1.4 API命名改变
- 2.1.5 tf.data
- 2.1.6 模型保存
- 2.1.7 优化器
- 2.1.8 移除tf.contrib
- 2.1 v2.0正式版
1. 概要
本教程来自TensorFlow官方示例,以及结合自己使用经验。
TensorFlow被定义为一个端到端的开源机器学习平台。在官网中提供了教程和指南两种文档,教程是通过示例告诉大家如何使用TensorFlow,而指南则是阐述了TensorFlow的概念和组件。
v2.0更改比较大,不支持v1.0中的很多属性和方法。 主要优势:
- 使用eager模式和keras,模型的构建和训练更加方便,入门门槛变低。
- 模型更加稳健,可跨平台部署
- 统一API,去掉重复和无用的API
2. 更新说明
主要说明TensorFlow v2.0和v1.x的区别
2.1 v2.0正式版
2.1.1 keras作为高级API
在v2.0中,将keras作为高级API,用于构建和训练模型。例如可以使用keras中的Squential(序列式),函数式(functional),子类式(subclassimg)来构建模型,相比v1更加方便。
2.1.2 编程方式发生变化
在v1.x中使用符号式编程并配合图的概念,模型构建与训练的范式是:先构建静态图,之后再session中运行。2.0中不在使用tf.Session(),而是采用和python一样的命令式,降低了入门门槛。
2.1.3引入分布式策略
v1.x中分布式训练需要自己写逻辑,对于很多人来说是很难的,从2.0开始官方支持分布式训练。
2.1.4 API命名改变
很多api命名改变,使用需要注意。
2.1.5 tf.data
这个在v1.4之后就有,很方便。
2.1.6 模型保存
统一用savemodel。
2.1.7 优化器
统一tf.train.Optimizers和tf.keras.Optimizers。在tf2.0中将统一使用tf.keras.Optimizers。另外,将使用GradientTape来取代compute_gradient计算梯度。
2.1.8 移除tf.contrib
tf.contrib被移除,有价值的内容被加入到核心代码,其他则全部丢弃。