tensorflow2.2安装使用过程中的错误解决

1.module 'numpy' has no attribute 'object'

网上查到的可能原因:1.有文件名为numpy,py;2.cuda版本跟tensorflow版本不匹配。

但是我不是以上这两种原因,甚至重装了cuda和cudnn也没解决。突然想到有没有可能是numpy版本的问题,重装了一个低一点的版本,解决。

2.ModuleNotFoundError: No module named 'threadpoolctl'

ModuleNotFoundError: No module named 'joblib'

使用sklearn的过程中一直报错,不是少这个包就是少那个包。

仔细看了下文件是下载方式错了,应该通过pip install scikit_learn而不是pip install slearn下载,解决。

3.Blas xGEMMBatched launch failed

原因:batch_size太大,在低版本cuda下就会报这个错。要么升版本,要么调低batch_size。

1.18后续:cuda升到11.3依然在报这个错,好像只有调低batch_size了。但昨天用cpu版本的tensorflow是没报这个错的。

4.PackagesNotFoundError: The following packages are not available from current

进入https://anaconda.org/,搜索你要下载的包,找到下载代码复制粘贴即可。

5.Could not load dynamic library ‘cudnn64_7.dll’

很神奇的一个错,我在原本的电脑上是tf2.2+cuda11.3,按网上的相关教程来看是不匹配的,但是确实可以用GPU版本,测试也是成功的。

所以我在另外一个电脑上也这样装,结果一直报错Could not load dynamic library ‘cudnn64_7.dll’,已经把‘cudnn64_7.dll’放在了对应的文件夹下,但是依然报这个错。

未解决,测试不成功,用不了GPU版本的tensorflow,直接用cpu版本跑的。

如果有大佬知道怎么解决的话,期待你的不吝赐教。

1.18后续:今天又看了一下这个错,因为我显卡的bin文件夹下本来有一个64_8,想着可不可能是版本冲突的问题,把复制过去的‘cudnn64_7.dll’删掉,把64_8的文件名改为64_7,把system32里的‘cudnn64_7.dll’也删掉,运行试了一下,成功。

你可能感兴趣的:(python,tensorflow,python,深度学习)