【导语】
自己到处学习了一些深度学习的皮毛,深切感受到没有GPU,真是不要和人家谈什么效率。人家一天跑好几个代码,如果你没有GPU,训练起来几天才跑一个代码。我之前在笔记本试过跑深度学习的hello world—‘MNIST’,使用的是softmax回归网络实现数字识别,这个速度还好,因为没有涉及复杂的卷积运算。后来自己又用CNN来实现数字识别,那训练速度足以让你怀疑人生,瞬时觉得人生路漫漫,CPU跑了两个小时,才迭代到第8遍。后来在上网络课程,有配置的实验室,可以使用GPU资源,我跑了下CNN识别MNIST,5分钟完事,那速度,瞬时嗨起。今天上youtube看了一个教程,就斟酌起干嘛不试一下自己三年前买的笔记本。还好是独显,英伟达840m,算力5.0,内存2GB,很菜,折腾一下,今天终于把自己笔记本上的gpu配置上了,并且玩了一下yolo模型。废话不多说,直接进入主题。对了,我是win10 64位系统。
【不想跟我一起配置的,可以去youtube看大佬的视频干货】
【正文】
(1)去下载官网CUDA Toolkit 9.0版本。
注意,不要下载最新的9.1版本,听说 It doesn’t work在这里。但是如果你想试试,Just do it。
先运行cuda_9.0.176_win10.exe文件,默认安装路径,会弹出一个检测系统界面,你只需要等待和一路next下去,直至完成,需要一些时间等待,安装完可能需要重启。
然后再运行cuda_9.0.1.176.1_windows.exe文件,也是一样一路next,若有错,则重新下载,再运行。
上述都顺利完成后,检测下是否成功:
若没有更改安装路径,你会在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0
这里看到一个文件,便是安装成功。
(2)去官网下载cuDNN v7.05,注意不要下载错版本,其他版本应该也行,只是我没有尝试而已。
然后解压这个包,打开里面bin目录,把里面的唯一一个文件cudnn64_7.dll
复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin
此文件下。
如图:
最后看一下路径有没有加到path环境,通常是自动加进去的。
去 ->我的电脑 -> 高级系统设置 -> 环境变量 -> 找到path -> 打开编辑查看
若有上图的两条环境变量,则说明下载安装完成,若没有,则检查一下自己的安装路径,然后自己手动添加进去。
然后运行安装包,默认路径,然后一直next,直至完成。
如果顺利的话,是可以在cmd终端运行的。
测试:
(1)打开终端cmd,创建环境
conda create -n test python=3.6 pip
如上图所示,就已经创建好一个环境了,其中test是你的环境名,然后后面的意思是环境配置python3.6版本,并且下载pip工具。
【注意】:这里有可能出现
CondaHTTPError: HTTP 000 CONNECTION FAILED for url
Elapsed: -
An HTTP error occurred when trying to retrieve this URL.
这里可以参考我之前的一篇文章,我在python2.7和python3.6都出现过这个问题,不知道为什么,但是照这个方法都解决了。(python3.5没试过)
(2)查看环境使用conda info --envs
,在这里可以看到刚才自己创的环境,然后使用activate test
激活环境,在路径前面有个括号,写着环境名就表示已经进入环境。
(3)安装tensorflow-gpu 1.5版本,和opencv
这里可能会遇到问题是下载速度比较慢,我已经试过很多次了,是镜像的问题。使用国内的镜像可以解决。具体可以看我的一篇文章,OK,所以我们可以使用命令:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==1.5
注意,这里装的是1.5版本,其他版本没试过。还有不能直接使用pip去下载opencv,因为pip是python的工具,而opencv不在python的库内,所以想安装opencv,就用
conda install opencv
打开python,就可以看到python版本,我们使用代码去测试一下:
import tensorflow as tf
import cv2
tf.__version__
cv2.__version__
hello = tf.constant('hello , my gpu!!!')
with tf.Session() as sess:
print(sess.run(hello))
这里若你发现ModuleNotFoundError: No module named 'tensorflow'
,那使用命令conda list
看一下自己的包,若没有自己想要的包,则重新运行安装。
可以看到tensorflow版本是1.5.0 , opencv是3.4.1 , 我的gpu是英伟达840M , 算力是5.0 , 内存是2G,可用内存是1.66G(很一般的独显) ,最后一行是输出结果。
(Got it !)
【后记】:
写博客还真是个耐心活,我跑通两遍流程都不用花多少时间,弄个博客跟大家分享,花了我整个晚上。没办法,性格有些许强迫,追求详细完美易懂。资料学习来自于国外一位大佬,最近入门yolo都是看他的github和youtube上的视频,感谢这些充满奉献精神的大佬们。
最后如果在安装的过程中有什么问题的,欢迎留言交流一起学习。走过的,如果对你有些许帮助,就留个赞吧。算是给自己码了这么多时间的些许安慰,谢谢。
【迟些有时间再写下一篇:下载yolo并给自己的视频做检测】