本文主要是介绍NotImplementedError: Cannot convert a symbolic Tensor解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
如题,装了tensorflow-gpu 2.5.0后,搭建神经网络模型,使用tf.keras.layers的一系列神经网络层都会出现以下这个报错信息:
NotImplementedError: Cannot convert a symbolic Tensor (sequential/simple_rnn/strided_slice:0) to a numpy array. This error may indicate that you’re trying to pass a Tensor to a NumPy call, which is not supported。
经过多方查证和亲身实验后我认为原因是tensorflow和numpy版本不兼容的问题,办法是将tensorflow降到2.3或2.4,同时将numpy降到1.19.x的版本,此时要求python版本为3.6-3.8。
具体操作方法(默认已经装了anaconda):
1.打开anaconda prompt,在其中输入conda create -n aaa python=3.8,其中aaa是环境名,可以自己取;
2.创建好环境后,conda activate aaa,进入刚刚创建的aaa环境;
3.conda install tensorflow-gpu=2.3.0 安装tensorflow,如果有提示,全部选择y;
4.安装好tensorflow后,conda install numpy==1.19.5,安装好后即完成。
下附:tensorflow-gpu和python的版本对应关系,感谢作者整理。
2021最新:TensorFlow各个GPU版本CUDA和cuDNN对应版本整理(最简洁)_K1052176873的博客-CSDN博客
这篇关于NotImplementedError: Cannot convert a symbolic Tensor解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!