安装tensorflow问题笔记

tech2023-11-09  91

1.使用清华镜像源下载tensorflow,

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ module

注意module前面有一个空格。 直接这么下载的tensorflow的版本是最新版,与我安装的python版本不兼容,故用了1.3.1这个版本:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ tensorflow==1.3.1

2.之前用whl文件下载也出现了问题,主要原因是用的whl文件版本太低(建议不要用这种方式下,还是用镜像源比较好)。

3.一直想用tensorflow-gpu,装了tensorflow-gpu,也装了cuda8.0和cudnn6.0(显卡只支持这个版本),但是运行demo的时候始终报错。 于是就放弃了gpu选择了cpu,于是直接用以下命令

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ tensorflow

下载tensorflow,下好之后却发现import不了,后来再网上查,发现tensorflow不支持python3.7,我就懵了,然后我抱着试试的态度下了tensorflow-cpu==1.13.1这个版本,结果却可以import了,想不明白,向下兼容?

4.几天后,我又试着装了gpu版本,发现还是有问题,然后又去查资料,看了这个链接: https://www.cnblogs.com/chenzhen0530/p/10939319.html.

然后我就根据它的提示,结合自己电脑的情况,将原来的cuda卸载,然后先更新驱动程序,再重新装cuda,重装的时候只选了cuda这一项(cuda里面的我全打勾了),没有选NADIA Geforce Experience和other components(上次安装时选了,后来查了一下,发现对游戏有些用,对tensorflow没啥用所以这次就没有选);另外Driver components这一项也没选,之前在这里碰到个坑:之前看了一个博客说要先删除自己的驱动程序版本然后勾选Driver components(相当于是用cuda自带的驱动程序,如果不删原来的驱动程序就会有冲突),之后我就删了,结果删出问题了,可能就是因为这一步导致我的tensorflow-gpu安装不成功,所以第二次装cuda的时候,在设备管理器中提前更新驱动程序,在安装cuda的时候发现跟新的驱动版本比cuda自带的版本高,所以完全不用勾选Driver components这一项,最后等待安装完成。 测试tensorflow-gpu,安装成功! 太难了呜呜呜…

Anaconda2019.10 +

开始(tf –gpu 1.3.0 + python3.6) +cuda8.0 +cudnn6.0(win10),不行;看了一个博客将tf –gpu 1.3.0改为1.4.0,即(tf –gpu 1.4.0 + python3.6) +cuda8.0 +cudnn6.0(win10)结果还是不行;然后把win10的cudnn改为win7的(我的电脑是win8.1),即(tf –gpu 1.4.0 + python3.6) +cuda8.0 +cudnn6.0(win7),仍然不能用重新装了cuda(未勾选cuda以外三项,包括driver),成功!(但是tensoflow里缺少很多包,导致在github上下载的demo无法运行,我在想着要不要换电脑)Tensorflow-gpu和cuda,cudnn要严格按照对应版本来,尤其是后两个,前面的一个还不是太清楚,至于python、keras、numpy的版本是否要严格对应也不是太清楚(numpy了解了只会是语法上的问题,好像不会出现版本兼容问题),最好按照对应版本来。

https://www.cnblogs.com/carle-09/p/11661261.html tensorflow、keras、python版本对应关系

该网页提供的对应关系,但我的是Tensorflow1.13.1 +keras2.3.1+python3.7+numpy1.16.0(目前yolov1能用,未涉及到keras;已经运行了yolov3,涉及到keras,所以这个组合是可以的)

自己的想法:可能版本问题并不是需要严格遵守,tensorflow说到底它就是个库,不同版本可能里面的包和模块不一样,可以自己加或者改动,至于cuda和cudnn,是不是只起到了加速器的作用,这个版本是不是需要严格遵守我不知道,但运行程序出错一般不会是它的原因。

Tensorflow里面也有keras,大部分模块都有,少量模块好像两边互相没有,两者模块有的放的位置不一样,目前看的大部分人都是直接用的keras,没见到有人用tensorflow里的keras。

Anaconda通过(python***)建立一个虚拟环境相当于在anaconda里重新下了一个python,该环境里初始下载的内容和直接下载python得到的东西一样。如果以后还需要下东西,可以到该环境下(可直接通过anaconda prompt进入)用conda/pip下载,至于怎么跟IDE(pycharm)关联在一起,只需设置一下解释器,设置完后在该python管辖范围内的包也就关联了。

Anaconda里用pip/conda,尤其是conda下载东西,它们会附带很多东西,(这里出现了一种情况,当有不同版本的.dist-info(例如numpy)出现时,用pip安装numpy或者其他东西都会发生environment-error), G:python上也是一样的情况。

最新回复(0)