目录
Pytorch的几个主要特性:
二、Miniconda安装
1.Miniconda介绍
2.Miniconda安装教程
3.Miniconda环境操作
三、CUDA安装
1.CUDA toolkit和cudnn的作用
2.查看显卡支持的CUDA版本
3.下载CUDA toolkit
4.下载cudnn
四、Pytorch安装
1.查找对应版本号
2.下载离线Pytorch
3.在conda环境中安装Pytorch
五、在Pycharm中使用配置好的环境
六、简单的应用
七、环境迁移
方法一:直接复制文件
方法二:使用pack库打包环境中的包
方法三:使用环境的requirements.exe文件
八、问题汇总
1.torch的cpu和gpu版本选择?
2.在miniconda prompt中输入cd 路径没有反应?
3.C:UsersUsername(你的用户名称)路径下不存在.condarc文件?
4.下载CUDA时提示需要安装Visual Studio?
一、Pytorch介绍
PyTorch 是一种用于构建深度学习模型的功能完备框架,以出色的灵活性和易用性著称。是一种通常用于图像识别和语言处理等应用程序的机器学习。使用 Python 编写,因此对于大多数机器学习开发者而言,学习和使用起来相对简单。无论是学术研究、工业应用还是教育,PyTorch 都是一个值得学习和使用的工具。
1.PyTorch 使用动态计算图,这意味着图的结构可以在运行时动态改变。这使得调试和实验变得更加容易,因为你可以实时看到计算图的变化。
2.PyTorch完全支持GPU,并且使用反向模式自动微分技术,通过 torch.autograd 模块实现。这使得实现和训练神经网络变得更加简单,因为你不需要手动计算梯度。
3.PyTorc生态系统还包括许多工具和库,如 torchvision(用于计算机视觉)、torchaudio(用于音频处理)和torchtext(用于自然语言处理)。这些库提供了预训练模型和数据加载工具,加速了开发过程。
Miniconda是一个更小的Anaconda发行版(Anaconda是一个包含大量预装数据科学和机器学习库的Python发行版),它只包含conda包管理器和Python以及其必要的库。Miniconda的目的是提供一个更轻量级的选项来安装和运行conda环境,同时保持Anaconda的核心功能。Miniconda可以安装在任何操作系统上,并且可以用于创建轻量级的Python环境,适合那些需要定制环境,不需要Anaconda完整发行版中所有组件的用户。使用Miniconda,用户可以轻松地安装、更新和管理Python包,以及创建隔离的Python环境。
搜索Miniconda,进入Miniconda官网:
Miniconda — Anaconda documentation
下载对应操作系统的Miniconda:
下面以Windows系统为例,安装步骤如下:
1、下载对应的Miniconda版本
2、运行安装程序
!!!选择安装路径(安装到D盘或E盘)
!!!勾选添加到环境变量
运行Miniconda:
1、按win键,打开全部
2、打开Miniconda下的Anaconda prompt
4、换源
1.查看C:UsersTkKrsm(你的用户名称)路径下是否存在.condarc文件,如果没有在Anaconda prompt的终端下输入:
conda config --set show_channel_urls yes
会在用户名路径中生成.condarc文件,内容如下:
将文件内容替换为:
图中更换为清华镜像源,可以搜索其他镜像源更换
3.环境操作与anaconda相同
CUDA Toolkit和cuDNN是NVIDIA提供的两个重要软件组件,它们在GPU计算和深度学习中扮演着关键角色。
- CUDA Toolkit:
CUDA Toolkit是一个用于开发GPU加速应用程序的综合工具包。它允许开发者使用C、C++、Fortran等语言编写代码,并通过CUDA编译器将其编译为GPU可执行代码。
- cuDNN:
cuDNN是NVIDIA为深度学习优化的库,在CUDA之上运行,专门为深度学习设计,提供了高效实现的深度神经网络常用操作,如卷积层、池化层、激活函数等。
兼容性:需要与特定版本的CUDA Toolkit配合使用,确保深度学习框架(如TensorFlow、PyTorch)能够有效利用GPU加速。
- 总结:
CUDA Toolkit是开发GPU加速应用的基础,提供了底层的编程接口和工具。
cuDNN是构建在CUDA之上的优化库,专注于深度学习的计算需求。
安装深度学习框架时,通常需要先安装兼容的CUDA Toolkit,然后再安装cuDNN,以实现GPU加速功能。
通过结合使用CUDA Toolkit和cuDNN,开发者可以显著提升深度学习模型的训练和推理效率。
方法一:终端查看
同时点击win+r,输入cmd点击“确定”,进入终端窗口,输入
nvidia-smi
查看CUDA版本:
点击NVIDIA Control Panel
依次点击系统信息,组件。
查看版本
!!!此处显示的CUDA版本并不意味着你使用显卡本身“最高支持”的CUDA版本,仅仅是你当前安装的驱动所支持的 CUDA版本。如果你发觉该版本似乎太低,你可以在下载适用于你显卡的最新版本的驱动程序。
进入CUDA官网,找到CUDA Toolkit Archive 页面:
CUDA Toolkit Archive | NVIDIA Developer
下载历史版本
可以选择下载与自己CUDA版本一样或者更低的tooolkit版本,但是注意后面下载cudnn版本的时候要和自己下载的toolkit版本对应。
!!!
如果需要编译CUDA代码或开发CUDA应用程序:可能需要安装Visual Studio或Visual Studio Build Tools
我们只是使用PyTorch进行GPU训练,并且是通过pip安装预编译的PyTorch包,不需要下载和安装Visual Studio
选择自己的操作系统:
比如这里选择的是windows操作系统,win11版本的。
下载安装包后运行安装
安装过程:
运行安装程序,选择安装路径(D盘或E盘)
检查系统兼容性,要注意安装的cuda版本要低于电脑的cuda版本
这里选择自定义安装
组件选择CUDA,点击“+”号展开CUDA里的详细组件
!!!这里要把Visual Studio Integration给取消掉
选择安装位置
安装完成
检验是否安装成功
打开cmd,输入
nvcc -V
出现了你安装的CUDA的版本信息,说明安装成功了
查询一下本机的gpu设备,测试一下带宽
定位安装目录的demo_suite文件夹(安装文件路径/NVIDIA GPU Computing ToolkitCUDAv12.1extrasdemo_suite)
点击win+R,输入cmd打开终端
Cd 到该目录下:
Cd C:Program FilesNVIDIA GPU Computing ToolkitCUDAv12.1extrasdemo_suite
输入文件名运行文件(包括后缀.exe)
deviceQuery.exe
bandwidthTest.exe
出现Result = PASS说明安装成功了
在NVIDIA官方网站下载安装包,地址为:
https://developer.nvidia.com/rdp/cudnn-archive
如果你没有NVIDIA开发者账号的话,就按照提示注册一个就好(qq邮箱就行),再登录即可下载了。
需要下载与CUDA版本相同的cudnn版本
Cuda下载的12.X版本的就下载12.X
Cuda下载的11.X版本的就下载11.X
cuDNN版本不需要选择最新的,选择前几个版本的就行
。
点击windosw版本的开始下载
下载下来是个压缩包(名称与这个类似cudnn-windows-x86_64-8.4.0.27_cuda11.6-archive.zip)
直接解压缩,解压完是如下的文件夹
将bin、include、lib三个文件夹里的文件复制到cuda toolkit文件夹下的同名文件里。
cuDNN安装完成
查看电脑支持的最高CUDA版本,与三、1的查看方法相同:
即在cmd终端输入nvidia-smi
或者打开NVIDIA Control Panel
打开Pytorch的离线下载资源网站:
https://download.pytorch.org/whl/torch_stable.html
会看到如下界面
首先确定你要安装的torch版本和torch vision版本
搜索pytorch,打开pytorch官网:
下拉找到历史版本的pytorch
Previous versions of Pytorch
找一个支持你电脑CUDA版本的pytorch版本,不需要下载最新的pytorch版本
找到该界面,确定CUDA 12.1的pytorch版本为2.3.1,torchvision版本为0.18.1,
打开Anaconda prompt,输入activate name(你的环境名称)激活环境
输入python --version查看当前环境下的python版本
比如我这里的python版本是3.10版本
如果还没有创建虚拟环境,可以在(base)环境下输入
conda create -n env_name(虚拟环境名称) python=3.10(python版本)-y
来创建一个虚拟环境
比如这里就创建了一个名为pytorch_cp310,python版本为3.10的环境。
在(base)环境下输入conda env list可以查看已经创建的环境名称
回到刚才的离线下载网站,找到对应的torch版本
例子对应的是
cu121,torch2.3.1,cp310的windows版本
再找到对应的torchvision版本
例子对应的是cu121,torchvision0.18.1,cp310的windows版本
点击就会开始下载
下载完成后会有这样的两个文件
可以把这两个文件单独在D盘或E盘建一个文件夹保存,方便后面在conda环境下安装。
1打开Anaconda prompt输入activate name(创建环境的名称)激活环境
2输入cd E: equirements orch(你的保存下载的两个文件的路径)进入到该路径。
!!!如果输入cd 路径没有反应,可以先输入D:或者E:
进入到根路径下再输入上面的命令进入保存路径。
install 后面是你下载的torch文件的名称,开始下载torch。
4同样的方法下载torchvision,在命令窗口输入pip install torchvision-0.18.1+cu121-cp310-cp310-win_amd64.whl
-i Simple Index
install 后面是你下载的torchvison文件的名称,开始下载torchvision。
5下载完成后,验证是否安装成功,激活安装pytorch的环境,在该环境下输入
conda list
5检验是否能够使用,同样激活安装pytorch的环境,在该环境下输入
python
import torch
torch.cuda.is_available()
显示True表示可用
1.打开pycharm,点击右下角的环境配置-添加新的解释器-添加本地解释器
2.选择Conda环境
一般是在Minicondascripts路径下
5.点击使用现有环境,选择自己配置好的环境
6.点击确定,即可在右下角切换自己配置的环境
使用torch库构建和训练神经网络
- torch:包含了PyTorch的核心功能,如张量操作、自动微分、优化器等。
- torch.nn:包含了构建神经网络所需的模块和函数,如线性层、激活函数、损失函数等。
将Minicondaenvs下创建的环境文件夹压缩后直接在新设备的Minicondaenvs下解压缩,
conda config --append envs_dirs D:yandandan2021envs(dir后替换为自己解压后的路径)
来添加环境
!!!缺点:有些库(labelme、labelimg等库)的代码中包含绝对路径,使用时会报错,
需要使用
python -m labelme(报错的库名称)
先指定好python的解释器使用自己设备的,而不是原来复制的python解释器
或者输入
python -m pip install --upgrade --force-reinstall packname(重新安装的库的名字)
来重新安装该库
(1)先安装conda pack
pip install conda-pack
(2)查看要打包的conda环境
conda info -e
(3)压缩conda环境
conda pack -n your_conda_env(你要压缩的环境名称)
会自动压缩为your_conda_name.tar.gz,路径在当前路径下,可以先cd到你想要保存的路径下。
(4)将压缩包拷贝到目标环境
目标环境需要和源环境是相同平台和操作系统
(5)在目标环境Miniconda/envs/下创建文件夹并解压
(6)查看并使用conda环境
conda info -e
activate your_conda_env
!!!缺点:与方法一缺点相同,有些库(labelme、labelimg等库)的代码中包含绝对路径,使用时会报错,需要重新安装该库。
(1)在miniconda prompt中激活要导出的环境
activate your_conda_name(你的环境名称)
(2)将环境中的库导出为requirements.txt文件
pip freeze > E:/requirements/requirements.txt(保存的路径及名称)
(3)查看requirements.txt文件,并修改部分库
比如之前离线下载的torch库,需要在文件中删除,自己提前离线下载好
激活环境后先cd到requirements.txt文件所在的路径下
输入
pip install -r requirements.txt -i Simple Index
安装requirements中的库
(5)检查库是否安装完成
输入 conda list
!!!缺点:如果环境中的库太多,安装requirements时会因为依赖包的版本不匹配而报错,导致安装失败。
需要自己在requirements中修改对应的依赖包版本。
(可以把库 = 版本号中的等号改为<=或>=)
还有像torch这种离线安装的库,需要提前安装好。
CPU 版本:如果你没有 NVIDIA GPU 或不需要 GPU 加速,选择 CPU 版本。
GPU 版本:如果你有 NVIDIA GPU 并且需要加速计算,选择 GPU 版本。
CPU 版本的 PyTorch 适用于没有 GPU 或不需要 GPU 加速的场景。它可以在任何机器上运行,但通常比 GPU 版本慢。
需要先输入D: 或 E: 进入到磁盘的根目录下再输出cd 路径进入到指定的路径
先检查路径有没有错误。如果没有错误,可以在miniconda prompt 中输入
conda config --set show_channel_urls yes
会生成.condarc文件
我们只使用PyTorch进行GPU训练,并且是通过pip下载的,不需要安装Visual Studio。提示安装,可能是因为在安装CUDA时勾选了Visual Studio,在安装时取消勾选就行。