Andrew.Ng课程Tensorflow不匹配问题
踩坑经历
吴恩达课程Tensorflow使用1.0版本,如果使用conda install tensorflow默认安装2.0版本,语法不一样。
不过并不是不能使用。在2.0版本下也可以调用1.0。具体做法如下:
python 命令:
tf.compat.v1.disable_eager_execution()
#该条语句加载导包区后,主程序开始之前
init = tf.compat.v1.global_variables_initializer()
#对报错语句加".compat.v1",即兼容version 1 命令
但是,强烈建议不要如此使用。
如果tensorflow搭建网络代码量较少(通常来说不太可能),还可以苟延残喘。通常来说如此操作很麻烦,而且有的语句是tensorflow1.0程序在2.0当中的确没有。比如:
tf.contrib.layers.xavier_initializer
该条语句无法使用.compat.v1进行处理。
总结而言,正确做法是:
conda create -n tensorflow python=XXX
#建立一个新的虚拟环境。XXX为使用python版本,如3.7
conda install tensorflow==1.0.0
如果你使用Ananconda,请预先配置清华源镜像。不然会毁掉你的好心情。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
注意,这里是在你的windows cmd当中写入,不是conda命令行。检测配置
conda info
如果其中网址显示包含清华路径即成功。
折腾一上午,望有所帮助