当前位置: 首页 > news >正文

Pytorch环境配置的方法

Pytorch虚拟环境配置全流程
以安装pytorch1.9.1为例

1. 创建虚拟环境
安装Anaconda3,打开 PowerShell 创建虚拟环境并进入:

conda create -n torch1.9.1 python==3.8
conda activate torch1.9.1

conda create -n torch1.9.1 python==3.8
conda activate torch1.9.1


这里给虚拟环境命名为torch1.9.1,以后如果遇到同样需要pytorch1.9.1的项目,直接使用该环境。

2. 准备对应Pytorch版本的CUDA
这里默认大家都是用GPU的,那么安装pytorch时需要考虑CUDA的版本匹配问题。

到Pytorch官网页面使用Ctrl+F查询“1.9.1”

看到1.9.1匹配的CUDA版本有10.2和11.3,根据需求选择其一即可。

CUDA的安装地址CUDA下载地址在这里,具体安装方法不再赘述。

请注意,电脑上可能安装了好几个不同版本的CUDA,但是使用时要在系统环境变量→PATH里把需要的CUDA版本上移,最上面的CUDA才会生效。

可以在PowerShell里进行查询:

nvcc -V  # 当前CUDA版本
nvidia-smi  # 系统最高支持的CUDA版本

3.切换清华源

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 --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/


4. 在虚拟环境中配置Pytorch
复制CUDA10.2底下的这一行命令,粘贴到刚刚创建的虚拟环境中


conda install pytorch==1.9.1 torchvision==0.10.1 torchaudio==0.9.1 cudatoolkit=10.2 


检查:

python  # 进入python
import torch  # 导入pytorch,没有任何报错则为成功
print (torch.__version__)  # v1.9.1
print(torch.cuda.is_available())  # True
exit()  # 退出pytorch

5.如果在上一步出现 torch.cuda.is_available() 是 False的情况,可以翻找当前的 PowerShell,看是不是安装了cpu版本的pytorch,如果是,那么接下来的操作用来重新安装GPU版的pytorch

        5.1 进入链接:Index of /anaconda/cloud/pytorch/win-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

找到对应python3.8版本的gpu版压缩包

右键下载,下载后保存在torch1.9.1所在的文件夹下,或者其他无中文的位置

        5.2 在 powershell中安装

然后就可以重复第四步,验证 torch.cuda.is_available() 是否为 True 了


6. 将虚拟环境导入Pycharm
File → Settings → Project → Python Interpreter → Add Local Interpreter

Conda Environment → Use existing environment → 下拉选择torch1.9.1

到此为止项目所需要的pytorch安装成功

http://www.lryc.cn/news/372511.html

相关文章:

  • 数字化制造案例分享以及数字化制造能力评估(34页PPT)
  • 搜维尔科技:特斯拉称工厂内有两台人形机器人开始自主工作
  • SIGMOD 2024 | 时空数据(Spatial-Temporal)和时间序列(Time Series)论文总结
  • 学习分享-分布式 NoSQL 数据库管理系统Cassandra以及它和redis的区别
  • Android 汉字转拼音(两行就够了)
  • JVM
  • MySQL锁机制和事务管理:如何处理并发和隔离性
  • 特别名词Test Paper7
  • 2的n次方表格
  • EVS9329-ES驱动器EVS9329ES可议价
  • JSON、yam|fIProperties
  • 关于投标中的合理均价基准差径靶心法(KIMI回答)
  • 好久没写文章
  • 卡塔尔.巴林:海外媒体投放-宣发.发稿效果显著提高
  • 【成品设计】基于STM32的单相瞬时值反馈逆变器
  • 浏览器实时播放摄像头数据并通过 Yolo 进行图像识别
  • redis清空list
  • 汽车油耗NEDC与WLTP有什么区别?以及MATLAB/Simulink的汽车行驶工况仿真
  • 【Python】已解决报错:AttributeError: module ‘json‘ has no attribute ‘loads‘解决办法
  • (5)按钮输入
  • 嵌入式开发、C++后台开发、C++音视频开发怎么选择?
  • 高考志愿填报,大学读什么专业比较好?
  • 33 _ 跨站脚本攻击(XSS):为什么Cookie中有HttpOnly属性?
  • C++入门小结
  • Java 开发实例:Spring Boot+AOP+注解+Redis防重复提交(防抖)
  • 使用difflib实现文件差异比较用html显示
  • 【文末附gpt升级秘笈】AI热潮降温与AGI场景普及的局限性
  • Vue待学习
  • TOP150-LC88
  • 使用Python和TCN进行时间序列预测:一个完整的实战示例