tensorflow2.0运用keras搭建框架经验总结

tensorflow2发布后,可谓是改头换面,最要命的是很多tensorflow1代码都运行不了了。
比如
tensorflow2.0运用keras搭建框架经验总结_第1张图片
再比如
tensorflow2.0运用keras搭建框架经验总结_第2张图片
一个解决办法是,使用tf.compat.v1.,但是也太麻烦了。

博主学习tensorflow的顺序可能有些奇怪。我最先是学习的keras,那时候tensorflow和keras还是两家,哪知道2.0版本这俩就联姻了。现在keras已经相当于tensorflow2的一个包了,如果想要使用,必须用

from tensorflow import keras

tensorflow2.0运用keras搭建框架经验总结_第3张图片

打算学tensorflow是因为keras虽然简单,但是太傻瓜了,对于一些稍微复杂的模型,特别是想要自定义optimizer,就难以实现。在这个更新换代的时候学tensorflow真的是太难了。

tensorflow2.0运用keras搭建框架经验总结_第4张图片

摸索了很长一段时间,总结了以下经验分享给大家。

  1. 如果是使用基本的层搭建模型,还是建议使用keras,几行代码便能完成。官网也有很详细的说明文档,再推荐一本书,《python深度学习》。(有一点需要注意的是,那本书出在联姻之前,所以还是直接import 的keras)。把这本书看明白,keras是基本没问题了。
  2. 经典训练方式还是可以用keras,很方便。但是现在一般我们会自定义一些optimizer方式,所以使用tensorflow灵活一些。2.0版本没有了tf.Session,而是换成了 tf.GradientTape。主要思路就是,自定义去计算哪些梯度,得到梯度后,再去定义如何对梯度进行更新处理。这里推荐一本新出的讲解tensorflow2.0的书:《TensorFlow+2.0深度学习算法实战教材。这本书前面对tensorflow基本用法进行了详细的介绍。搭建模型基本是用的keras,但是对tf.GradientTape也有比较详细的讲解。看了这本书,可以对keras如何与tensorflow2.0结合使用,以及一些基本函数的属性有个细致的了解。

你可能感兴趣的:(tensorflow,tensorflow,python,机器学习,深度学习,人工智能)