【060】tensorflow2.0 与tensorflow1.0 的性能区别和迁移

本文介绍了TensorFlow 2.0相对于1.0的主要变化,包括默认的Eager执行模式,简化编程的AutoGraph,tf.keras的统一模型构建,以及模型训练的改进。在2.0版本中,Eager执行提供了更直观的调试体验,而AutoGraph能将Python代码转换为高性能图。同时,tf.keras成为构建模型的主要接口,数据加载变得更方便。最后,文章讨论了从TF 1.0到2.0的迁移策略。
摘要由CSDN通过智能技术生成

内容目录

一、TensorFlow 2.0 介绍二、tf1 和 tf2 的主要变化1、Eager执行2、AutoGraph3、tf.keras4、模型训练三、TF 1.0到2.0迁移

一、TensorFlow 2.0 介绍

  Google推出了全新的版本TensorFlow 2.0,2.0版本相比1.0版本不是简单地更新,而是一次重大升级。简单地来说,TensorFlow 2.0默认采用eager执行模式,而且重整了很多混乱的模块。毫无疑问,2.0版本将会逐渐替换1.0版本,所以很有必要趁早入手TensorFlow 2.0。

#初学者的 TensorFlow 2.0 教程
https://tensorflow.google.cn/tutorials/quickstart/beginner

二、tf1 和 tf2 的主要变化

1、Eager执行

  TensorFlow的Eager执行时一种命令式编程(imperative programming),这和原生Python是一致的,当你执行某个操作时是立即返回结果的。而TensorFlow一直是采用Graph模式,即先构建一个计算图,然后需要开启Session,喂进实际的数据才真正执行得到结果。显然,eager执行更简洁,我们可以更容易debug自己的代码,这也是为什么PyTorch更简单好用的原因。一个简单的例子如下:

x = tf.ones((2, 2), dtype=tf.dtypes.float32)
y = tf.constant([[1, 2],
                 [3, 4]], dtype=tf.dtypes.float32)
z = tf.matmul(x, y)
print(z)
# tf.Tensor(
# [[4. 6.]
#  [4. 6.]], shape=(2, 2), dtype=float32)

print(z.numpy())
# [[4. 6.]
# [4. 6.]]

tf.Tensor(
[[4. 6.]
[4. 6.]], shape=(2, 2), dtype=float32)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值