window10 anaconda cuda cudnn tensorflow-gpu踩的坑

说一说我在anaconda安装tensorflow-gpu踩的坑   再运行tensorflow_objection API官网测试程序的坑==问题总结

我先安装anaconda3(自带python3.5),再安装CUDA8.0,(PS:这里注意下,CUDA默认安装自带NVIDIA驱动,如果安装前电脑就有NVIDIA驱动,记得卸载,不然安装CUDA会黑屏,再开机还是要卸载原来的NVIDIA驱动(NVIDIA GeForce Experience))。再安装Cudnn6.0,具体步骤也是搜的网上的,很多教程。

 

重点:(装tensorflow-gpu)

装tensorflow时按照网上的教程               **conda环境后输入:

pip install --ignore-installed --upgrade tensorflow-gpu           安装tensorflow-gpu

默认安装最新版本的tensorflow-gpu,我安装时默认为tensorflow2.0了,这个默认安装的版本把我害惨了,安装以后各种不行,tensorflow找不到各种变量,举例子,tensorflow has no attribute"python",  tensorflow has no attribute"app" 等。。。。。。

烦恼了好久,最后终于发现问题,(要安装与cuda指定版本的tensorflow命令,例如:pip install tensorflow-gpu==1.4.0)

版本不对应

提供提个版本对应表大家看看,按照表上显示,我的CUDA只能装1.3.0或1.4.0的tensorflow.......

window10 anaconda cuda cudnn tensorflow-gpu踩的坑

还有,就是tensorflow-gpu**虚拟环境后,先运行conda install anaconda,再创建tensorflow-gpu,否则提示出错,按这个顺序还是会有错(ERROR: Failed building wheel for html5lib,我忽略掉,没什么)。Ps:如果出错提示要setuptool等工具的话,要自行安装,我用pip install xxx,缺少其他包一样安装。终于成功调用tensorflow的各种变量。【小总结:从后往前看,这个顺序是因为版本太旧,也可能是我碰巧吧,后面安装cuda9的时候我就先创建tensorflow-gpu再conda install anaconda,装的好好的。】

终于装好了,测试通过了,下面进一步,tensorflow object_detection API安装使用(参考的:https://zhuanlan.zhihu.com/p/31365997)。

运行到python object_detection/builders/model_builder_test.py时出错,提示:

window10 anaconda cuda cudnn tensorflow-gpu踩的坑

Anaconda(python3.5)+cuda8+cudnn6+tensorflow-gpu==1.4.0,出现红线处错误,谷歌之后都说要升级到tensorflow1.8.0,好吧,决定升级为cuda9.0+cudnn7.0.5+tensorflow1.8.0,未完待续。。。

装好后运行object_detectio_tutorial.ipynb,提示:tensorflow1.12.0是需要的,我也是耐心好,再来,重新安装tensorflow-gpu==1.12.0,心想这下不会报错了吧,结果总是差强人意。

出错遇到缩进问题,在anaconda jupyter上重新调缩进,再运行,jupyter notebook出错提示说cudnn7.2.1才行,我转战nvida官网注册下载cudnn,发现了cuda9.0没有cudnn7.2.1,只能下载cudnn7.3.0,按照高版本兼容低版本的说法,应该行,试试。

现在在下载,等下载完试验下,我怎么辣么难·········

ps:下载在下载刚好有空,我讲讲怎么看jupyter notebook运行代码的进程,我是在创建的python3.5环境里创建了tensorflow-gpu,所以在环境里写jupyter notebook,打开了object_detection_tutorial.ipynb,看下图,看这两个地方,等一会jupyter notebook没反应不要着急,看看你的nanconda prompt信息提示,如果没有下图黑色图片里的部分,jupyter notebook也没报错,就等等,直到错误提示出来或者成功运行。(我运行了很多次.,用的ssd_mobilenet_v1_coco_2018_01_28.tar.gz。。。)

window10 anaconda cuda cudnn tensorflow-gpu踩的坑

下载好了cudnn7.3.0,删除了原来的cudnn的三个文件,把新的放了进去,终于,终于,终于成功了。。。。。。喜大普奔,接下来就是弄懂这些相关文件,训练自己的数据集,加油,相信自己,你可以的!

window10 anaconda cuda cudnn tensorflow-gpu踩的坑

看到这个结果就开心啦!!!!!!!!!!!!!!!!!!!!!!!!!!

 

总结:最后的最后,我说一句,现在是2019.10.19,无论是tensorflow-gpu,cuda,还是cudnn,都不要用太旧的版本,技术日益更新tensorflow2.0都出来了。无论是多久以后看到我的博客,我都希望安装前看看版本,看看一些博客啥,约两年多前大家用cuda8,像现在常用cuda9,以后会到10。不要用太旧的tensorflow-gpu,cuda,还是cudnn,如果用到官网的例程,会有各种问题,如tensorflow没有各种变量(contrib,python等),没有各种工具,还有什么没有xxx.Model(旧版出现这个错,要改为xxx.models.Model),要求最低哪个版本运行,问题太多,太难了。。。。。。,还是升级吧,不然不要用官网的例子。

还有一些问题没有罗列,不过应该都可以解决,吃晚饭去啦。