最近尝试caffe环境的配置,同样需要CUDA和cuDNN,所以我再次回顾这篇文章,我真是生气啊,感觉自己写得不清不楚的,路径啥的我都没记录。
目录
- 1. PyTorch是什么
- 2. 找到pytorch
- 3. pytorch环境的搭建
- 3.1 Anaconda安装
- 3.2 CUDA和cuDNN安装
- 3.3 配置torch环境(conda创建环境)
- 3.4 安装编程环境
- 3.5 其他
- 4. 所有版本信息
背景:打算用python来实现yolov3,yolov3的实现方式可以有pytorch、openCV、Darknet、keras等,目前pytorch较为流行。
补充:在后来的学习中需要使用anaconda创建一个python的运行环境,在3.3和3.4节中就有说明。
1. PyTorch是什么
这是一个基于Python的科学计算包,其旨在服务两类场合:
- 替代numpy发挥GPU潜能
- 一个提供了高度灵活性和效率的深度学习实验性平台
参考链接:PyTorch深度学习:60分钟入门(Translation)
2. 找到pytorch
在这里推荐一个网站:Awesome Python,它几乎包含了ptyhon需要的所有库,同时也包含库的一个简略说明。在该页面搜索"pytorch",即可跳转pytorchGitHub说明页。
此外还有pytorch的官方网址。
3. pytorch环境的搭建
操作系统:Win10
3.1 Anaconda安装
Anaconda是什么?为什么装?怎么装?
- 是什么
Tensors and Dynamic neural networks in Python with strong GPU acceleration.
- 是一个集成的Python包以及环境,包含依赖项等,可以用来管理包,安装、运行应用。
针对不能版本的Python,Anaconda可以帮助管理多个环境,可以提供一个更加快速和简单的方式来运行机器学习的相关代码。 - 为什么装
Pytorch在Github上的官方推荐。
If you are installing from source, you will need Python 3.6.2 or later and a C++14 compiler. Also, we highly recommend installing an Anaconda environment. You will get a high-quality BLAS library (MKL) and you get controlled dependency versions regardless of your Linux distro.
- 怎么装
找到Anaconda的官方网址或是找到相关的博文,一些博主会把下载器放在百度网盘里,按照博主推荐的安装教程进行安装。
我在安装的过程中,由于Anaconda是外网,出现登不上的情况,因此我直接从Bubbliiiing博主提供的百度网盘(提取码提取码: 8ggr)中,下载了旧版的Anaconda3,下载后打开Anaconda3会自动提示更新。
安装教程可以参考:
此外还可以在网上找到同时安装Anaconda2和Anaconda3的。Anaconda2对应的是python2,Anaconda3对应的是python3版本。
查看Anaconda版本信息
在命令提示符,输入:conda -V
安装成功将提示版本号信息。
Conda是什么
Conda是一个开源的 ,跨平台的,包管理器和环境管理系统。它是为Python程序创建的,但它可以为任何语言(例如R语言)进行包管理和安装。Conda包和环境管理器包含在Anaconda,Miniconda,和Anaconda存储库的所有版本中。
安装教程
1.深度学习环境配置2——windows下的torch=1.2.0环境配置(Bubbliiiing) 2.有幸遇见-b站最全最简洁易学的深度学习环境配置教程(有幸被看的上上)
3.2 CUDA和cuDNN安装
- 是什么
CUDA(Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。 开发人员可以使用C语言来为CUDA™架构编写程序,所编写出的程序可以在支持CUDA™的处理器上以超高性能运行。CUDA3.0已经开始支持C++和FORTRAN。
- 一个运算平台,促使GPU加速。
关于cuDNN,在其官网上写着
The NVIDIA CUDA® Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. cuDNN provides highly tuned implementations for standard routines such as forward and backward convolution, pooling, normalization, and activation layers.
- 深度神经网络库 (cuDNN) 是一个 GPU 加速的深度神经网络基元库。 cuDNN 可大幅度优化标准例程(例如前向和后向卷积、池化、归一化和激活层)的实施。
需要CUDA和cuDNN同时促使GPU加速。 - 为什么装
官方推荐
If you want to compile with CUDA support, install
NVIDIA CUDA 10.2 or above
NVIDIA cuDNN v7 or above
Compiler compatible with CUDA Note: You could refer to the cuDNN Support Matrix for cuDNN versions with the various supported CUDA, CUDA driver and NVIDIA hardwares
- 怎么装(详细安装步骤看下方“安装教程”链接)
1.先下载CUDA。CUDA需要几个G的硬盘空间,如果C盘紧张需要先对C盘进行磁盘清理。
打开官网选择相应的版本:
生成应用程序,双击打开,直接运行:
选择安装位置上我在D盘建了文件夹,其目录为:
CUDA Development和CUDA Documentation路径选择CUDA1,Samples路径选择CUDA2。
安装后在C盘这个位置可以找到根目录:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
- 再下载cuDNN。cuDNN的下载挺麻烦的,需要你提前在cuDNN官网进行注册,注意cuDNN与CUDA要相互匹配,官网有相应的引导提示,安装过程可以参考有幸遇见-b站最全最简洁易学的深度学习环境配置教程Anaconda+Pycharm,安装后解压得到该文件:
将该文件夹中选中的三个文件夹复制到D:\CUDA_manager\CUDA10.2\CUDA1下(即刚才CUDA的安装下:
查看CUDA版本信息
在命令提示符,输入
nvcc --version
安装成功将提示版本号信息。
查看cuDNN版本信息
打开安装CUDA的文件夹,在include/cudnn_version.h
就提示了版本信息:
安装教程
1.深度学习环境配置2——windows下的torch=1.2.0环境配置(Bubbliiiing) 2.有幸遇见-b站最全最简洁易学的深度学习环境配置教程(有幸被看的上上) 参考链接:详解Anaconda + 如何在Anaconda上更换python版本
3.3 配置torch环境(conda创建环境)
利用anaconda搭建一个python的环境,在命令提示符依次输入一下代码:activate
//进入base环境conda create -n py37 python=3.7
//环境命名为py37,其中python版本指定为了3.7(-n是name的缩写)conda activate py37
//激活py37环境(在上一步结束后,会有该条命令的提示)
python # 在该环境下查看python版本
exit()# 退出python
其他以后可能用到的命令conda env list
//查看所有环境
需要进入py37这个环境下安装pytorch。
进入pytorch官网,点击“install",由于我的CUDA版本正好有,所以选一下就有推荐的安装方式。
在py37环境下,输入以下代码:
pip3 install torch==1.10.0+cu102 torchvision==0.11.1+cu102 torchaudio===0.10.0+cu102 -f https://download.pytorch.org/whl/cu102/torch_stable.html
其中torchversion是计算机视觉中的辅助模块,如需删除pytorch,则输入下方代码:
pip uninstall torch torchvision torchaudio
查看torch版本信息
在终端py37环境下输入
# py37
python
import torch
print(torch.__version__)
print(torch.cuda.is_available()) # 检查GPU版本是否安装成功,一般GPU版本快于CPU
运行结果:
1.10.0+cu102
True
如果没有错误提示则表示成功安装,并显示版本信息。
其它依赖库的安装
当缺少某个库时:
# py37
pip install 库名
有些代码的实现不仅仅需要一个库,同时需要matplotlib、numpy等,当需要文件较多的时候,Bubbliiiing介绍了一种方法,创建一个文本文件,在环境下安装。该博主在b站也有相应的安装配置视频。
在文本文件中输入想要加入的库,保存,在命令提示符py37环境下输入相应的代码:
# py37
pip install -r 创建文本文件的位置
当全部安装完成后重启电脑
3.4 安装编程环境
编程环境因人而异,有幸被看的上上使用的是pycharm,Bubbliiiing使用的是VSCode,两款软件我都进行了尝试,分别介绍这两个软件的配置。
- VSCode
打开Anaconda,注意要把环境切换为自己创建的环境名字,我这里创建的是py37
需要在这个环境下运行VSCode。
打开VSCode后,左下角环境也要对应。 - Pycharm
打开pycharm后,点击右下角“添加解释器”
这里需要选择的是Conda Environment,因为之前是利用conda创建的环境;
接下来选择Existing environement;
最后解释器是环境文件夹下python.exe可执行文件,Conda executable不进行修改。
3.5 其他
- 环境修改
上文我用anaconda创建了一个叫做“py37”的环境,而这个环境是我测试用的,我想创建一个名字更加直观环境基于yolo模型的目标检测,如“yolo_pytorch"。
我想到的方法有:1) 重命名“py37”;2)对“py37”这个进行拷贝,拷贝出来的环境更名,删除原来的环境;3)从头开始创建一个新环境。
通过查找发现,conda并没有重命名的指令,因此选用第二条思路,通过拷贝原环境,再将旧环境删除的方式。
打开命令提示符:
conda info -e #查看当前有哪些环境
conda create -n 新名 --clone 旧名 # 克隆新的环境
conda remove -n 旧名 --all # 删除旧环境
conda info -e # 查看是否转换成功
4. 所有版本信息
名称 | 版本信息 |
Anaconda | 4.10.3 |
CUDA | 10.2 |
cuDNN | 8.3.0 |
pytorch | 1.10.0+cu102 |
vscode | 1.62.1 |
注意 | |
CUDA、cuDNN和pytorch三种的版本信息是要相互匹配的,检查CUDA与torch是否匹配的方法见博文Pytorch错误:Torch not compiled with CUDA enabled | |
卸载第三方库的方法见博文Anaconda安装、查看、卸载第三方库 |