这一期教大家如何在Anaconda中使用CUDA来进行加速、神经网络依赖cuDNN的下载安装,以及下载和安装Pytorch-GPU安装包的三种方式(conda、pip、轮子)。
还未下载安装 CUDA 和 Anaconda,请看往期文章,是全套系列的总结,包你不用开很多网页,然而只为了下载安装一个工具而已。。。。
Anaconda中使用
在CUDA安装完之后,如果想要学习深度学习中的神经网络的话,则额外下载安装cuDNN,可帮助我们加快神经网络的运算,cuDNN是一个常见的神经网络层加速库文件,能够很大程度把加载到显卡上的网络层数据进行优化计算,而CUDA就像一个很粗重的加速库,其主要依靠的是显卡。cuDNN需要在有CUDA的基础上进行,可以在CUDA基础上加速2倍以上。
下载安装之前,这里再简要介绍几个关键概念
NVIDIA的显卡驱动器与CUDA
NVIDIA的显卡驱动程序和CUDA完全是两个不同的概念,CUDA是NVIDIA推出的用于自家GPU的并行计算框架,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。
NVIDIA显卡驱动和CUDA工具包本身是不具有捆绑关系的,也不是一一对应的关系,CUDA本质上只是一个工具包而已,所以我可以在同一个设备上安装很多个不同版本的CUDA工具包,一般情况下,我只需要安装最新版本的显卡驱动,然后根据自己的选择选择不同CUDA工具包就可以了。
CUDA和cuDNN关系
CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
注意: cuDNN是一个SDK,是一个专门用于神经网络的加速包,它跟我们的CUDA没有一一对应的关系,即每一个版本的CUDA可能有好几个版本的cuDNN与之对应,但一般有一个最新版本的cuDNN版本与CUDA对应更好。
CuDNN支持的算法
- 卷积操作、相关操作的前向和后向过程
- pooling的前向后向过程
- softmax的前向后向过程
- 激活函数的前向后向过程,如(Relu、Sigmoid、Tanh )等
cuDNN的下载与安装
第一步: 官网下载cuDNN的安装包,地址:https://developer.nvidia.com/cudnn,这里需要你注册一个账号,按照要求注册完就可以下载安装包了,这里我的CUDA安装的是10.2版本的,我就安装与我CUDA对应的cuDNN了。
第二步: 下载好安装包后,利用解压软件解压出来
第三步: 复制粘贴 bin、include、lib三个文件到CUDA的安装目录进行覆盖替换,
cuDNN到此安装成功!
下面我介绍Pytorch-GPU的下载安装的三种方式
- Conda安装(官网命令下载速度慢,设置镜像源后可加速)
- Pip安装(设置镜像源,设置镜像源后可加速)
- 轮子安装(官网下载轮子,轮子安装)
第一步: 打开Anaconda Navigator中新建一个虚拟环境,选择Enviroments->Creat->点击,自己设置环境名(这里我设为py35)和Python版本,也可以用命令创建环境
第二步: 创建完后,点击py35旁边的绿色三角形箭头,选择Open Terminal,在命令行中打开,我们就可以使用命令的方式在该虚拟环境py35中安装Pytorch-GPU了
第一种:Conda安装
第一步: 首先我们来到Pytorch-GPU的官网,选择CUDA的安装平台以及版本、Conda或者Pip安装,在下方粘贴复制安装命令即可,但是这里下载速度极慢,很容易出现CondaHTTPError,因为默认的镜像是官方的,由于官网的镜像在境外,访问太慢或者不能访问,为了能够加快访问的速度,我们更改Conda下载安装包的镜像源
第二步: 这里我们首先设置一下Conda下载安装包的镜像源,输入以下命令:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
第三步: 添加完后,在用户目录下,如:C:\Users\11703 ,找到 .condarc 文件,使用记事本打开,删除里面的 defaults,这样能快点,或者在其前面加#号注释掉。
注意: 用conda安装包的标准语法格式为:conda install -c ,而pytorch官网中conda给的命令行是上图那样的,有-c选项,就说明已经指定了官方下载源,所以自己配置的镜像源不管用, 所以应该把-c pytorch去掉,就可以从镜像源下载文件了。
输入y,即正式下载和安装
友情提示: 如果你想再次换源安装,需要使用以下命令conda config --remove-key channels恢复默认源的命令,否则会报错,然后再次配置你想要的镜像源。
第二种:Pip安装
pip添加源安装,等待一段时间安装完成即可,安装命令:
pip install torch=1.5.0 torchvision=0.6.0 -f https://download.pytorch.org/whl/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple
第三种:轮子安装
pytorch轮子文件下载地址:https://download.pytorch.org/whl/torch_stable.html,分别下载安装torch和torchvision安装包,这里请注意自己安装的CUDA、以及torch、torchvision版本匹配,最后创建的Python环境请和下载的一致。如下图举例
下完轮子文件之后,命令窗口到相应虚拟环境以及轮子安装目录下,命令安装轮子,我的轮子文件放在了D盘,
这里注意: 安装Pytorch需要依赖包numpy、future,可以提前安装好,安装torch检测到没有numpy时,会自动帮我们下载安装依赖包numpy、future,不用担心,但是过程缓慢,建议提前安装后numpy、future。
下载安装torch完成后,我们开始安装torchvision,torchvision需要安装依赖包pillow,这里教大家提前安装的方法,使用如下命令,如果出现问题加上信任选项 trusted host,pip install-i https://pypi.tuna.tsinghua.edu.cn/simple–trusted-hostpypi.tuna.tsinghua.edu.cn pillow
安装torchvision
最后我们检测Pytorch-GPU是否安装完成
先使用命令pip list查看已安装的包列表,再输入命令python,然后 torch.cuda.is_available(),输出True,即安装成功
题外话
在此疾速成长的科技元年,编程就像是许多人通往无限可能世界的门票。而在编程语言的明星阵容中,Python就像是那位独领风 骚的超级巨星, 以其简洁易懂的语法和强大的功能,脱颖而出,成为全球最炙手可热的编程语言之一。
Python 的迅速崛起对整个行业来说都是极其有利的 ,但“人红是非多
”,导致它平添了许许多多的批评,不过依旧挡不住它火爆的发展势头。
如果你对Python感兴趣,想要学习pyhton,这里给大家分享一份Python全套学习资料,都是我自己学习时整理的,希望可以帮到你,一起加油!
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
👉CSDN大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈
1️⃣零基础入门
① 学习路线
对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
② 路线对应学习视频
还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
③练习题
每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
2️⃣国内外Python书籍、文档
① 文档和书籍资料
3️⃣Python工具包+项目源码合集
①Python工具包
学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
②Python实战案例
光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
③Python小游戏源码
如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
4️⃣Python面试题
我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
5️⃣Python兼职渠道
而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
上述所有资料 ⚡️ ,朋友们如果有需要的,可以扫描下方👇👇👇二维码免费领取🆓