学习日记:tensorflow版本差异遇到的问题

网上很多的开源代码所用的库的版本都是tensorflow1.x的,跟tensorflow2.0里面的内容完全不匹配,以下是我在学习中遇到的一些版本差异带来的问题

1.调用库时遇到的问题

下面是一段代码:

from keras.optimizers import SGD,RMSprop,Adam

在tensorflow2.x版本上会报错,表示在keras中找不到这些函数

其实原因是tensorflow2.x版本兼容了keras,需要进行修改

from tensorflow.keras.optimizers import Adam,RMSprop,SGD

修改成这样以后就能成功运行了

2.model.compile()函数中遇到的问题

源代码是这样的:

model.compile(optimizer='Adam', loss=['categorical_crossentropy'],metrics=[f1])

显示报错,但是错误为module ‘tensorflow’ has no attribute ‘is_nan’,完全看不懂这是什么意思

在找到对应的这行代码之后,我去查阅了compile函数,发现其中的metrics参数存在问题,没有f1这个选项,在我把它改成accuracy之后就可以运行了

metrics=["accuracy"]

3.module ‘tensorflow’ has no attribute ‘placeholder’

placeholder是tensorflow1.x里面的,2.x版本不兼容,尝试了网上的办法:

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

但是仍旧报错,依然显示 module ‘tensorflow’ has no attribute ‘placeholder’

解决办法:安装tensorflow1.x版本可以不再显示这个报错

4.pip指令下载tensorflow报错

用pip指令下载tensorflow的时候,不仅速度特别慢,还经常下到一半报错

这时候可以采用清华大学的镜像地址:

pip3 install tensorflow==x.x.x -i https://pypi.tuna.tsinghua.edu.cn/simple

x.x.x表示你想要安装的版本 

本人完全是小白,上述说得不准的地方欢迎指出,之后再遇到相似的问题会继续更新的

    原文作者:tachril
    原文地址: https://blog.csdn.net/weixin_52017773/article/details/123452874
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞