PyTorch环境配置

本文档用于记录PyTorch环境配置过程中的要点。

安装Miniconda

  • 下载Miniconda安装包:Miniconda3-latest-Linux-x86_64.sh
  • 修改安装包的文件权限属性,使得Miniconda安装包能够执行:chmod u+x Miniconda3-latest-Linux-x86_64.sh
  • 安装Miniconda: sh ./Miniconda3-latest-Linux-x86_64.sh

安装PyTorch

  • 通过Miniconda创建一个新的环境:conda create --name torch Python
  • 激活环境:conda activate torch
  • 查看CUDA版本:nvcc --version
  • 根据CUDA版本安装相应的PyTorch库:conda install pytorch torchvision cudatoolkit=10.2 -c pytorch
  • 验证PyTorch是否安装成功:
    import torch
    x = torch.rand(5, 3)
    print(x) torch.cuda.is_available()

配置远程开发工具

本节用于记录配置VSCode远程编程与调试的插件Remote - SSH的过程。

  • 通过ssh-keygen命令在本地生成用于ssh公钥认证的公钥和私钥文件:ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
  • 通过ssh-copy-id命令把公钥追加到远程机器的authorized_keys文件末尾: ssh-copy-id hello-kitty@192.168.***.***
  • 安装插件Remote - SSH
  • 配置插件:
    # C:\Users\****\.ssh\config
    Host ****@192.168.***.***
    HostName 192.168.***.***
    User ****

    这里需要注意配置项Host需要按照"用户@IP地址"的格式进行设定,否则远程连接时会出现“过程试图写入的管道不存在”的异常状况

基于CUDA的张量

  • 查看可用的GPU的数量:torch.cuda.device_count()
  • 定义CUDA device object,存在三种略有不同的方式:
    # 第一种方式
    device = torch.device('cuda:1') # 第二种方式,参数"1"表示显卡的下标(第二块显卡)
    torch.cuda.set_device(1)
    device = torch.device('cuda') # 第三种方式
    device = torch.device('cuda', 1)
  • 定义张量:x = torch.randn(5, 3, device=device)

导入警告问题

用VSCode编写Python代码,在导入语句import torch下方会出现黄色波浪线,提示未解决的导入“unresolved import 'torc'”。异常情况是由Microsoft Python Analysis Engine引发的,通过设置Jedi作为IntelliSense引擎,可以解决这一问题:

  • Ctrl + Shift + P,打开VSCode命令面板
  • 输入“Configure Language Specific Settings”,选择语言“Python”
  • 在打开的配置文件(settings.json)中找到配置项“python.jediEnabled”
  • 设定配置项"python.jediEnabled": true,,保存并重新加载VSCode

参考资料

  1. VScode Remote远程开发与调试
  2. Linux和Windows查看CUDA和cuDNN版本
  3. Linux chmod命令
  4. Start Locally | PyTorch
  5. vscode unresolved import warning

PyTorch环境配置的更多相关文章

  1. PyTorch环境配置及安装

    环境配置 温馨提示:为了更好的教程体验,提供视频.阅读地址 Youtube: https://www.youtube.com/playlist?list=PLgAyVnrNJ96CqYdjZ8v9Yj ...

  2. 计算机视觉2-> 深度学习 | anaconda+cuda+pytorch环境配置

    00 想说的 深度学习的环境我配置了两个阶段,暑假的时候在一个主攻视觉的实验室干活,闲暇时候就顺手想给自己的Ubuntu1804配置一个深度学习的环境.这会儿配到了anaconda+pytorch+c ...

  3. PyTorch深度学习入门笔记(一)PyTorch环境配置及安装

    @ 目录 一.工具安装 1.1 Anaconda 安装 1.2 Pytorch安装 二.编辑器安装 2.1 Pycharm安装 2.2 Jupyter安装 OS: ubuntu 20.04(虚拟机) ...

  4. pytorch 环境配置

    一.下载Anaconda 二.添加清华镜像 # 添加清华镜像 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anac ...

  5. lightweight openpose 入门实操笔记(pytorch环境)

    最近有个小项目要搞姿态识别,简单调研了一下2D的识别: 基本上是下面几种 (单人)single person 直接关键点回归 heatmap,感觉其实就是把一个点的标签弄成一个高斯分布 (多人)mul ...

  6. 超算云(GPU服务器)环境配置

    最近在用并行超算云GPU服务器(中国国家网格12区)搭建毕设的环境,这里记录一下. 首先,超算云服务器的登录可以采用网页版.也可以采用客户端(超算云地址:https://cloud.paratera. ...

  7. 【深度学习】PyTorch CUDA环境配置及安装

    Pytorch版本介绍 torch:1.6 CUDA:10.2 cuDNN:8.1.0 安装 NVIDIA 显卡驱动程序 一般 电脑出厂/装完系统 会自动安装显卡驱动 如果有 可直接进行下一步 下载链 ...

  8. 手把手教会你远程Linux虚拟机连接以及配置pytorch环境。

    出一期用于连接远程Ubuntu系统并配置pytorch环境的教学.2021-07-07 13:35:57- 现在的矿难导致显卡大幅度的涨价对很多要做深度学习领域的小伙伴们非常的不友好,配置设备固然要掏 ...

  9. Pytorch及Yolov5环境配置及踩坑

    Pytorch及Yolov5环境配置及踩坑 1.何为Yolov5 yolo是计算机视觉方面用来进行目标检测的一个十分出名的开源框架,我搜不到官方的对此概括性的定义,但实际上也没什么必要,更重要的是会使 ...

随机推荐

  1. linux命令管道工作原理与使用方法

    一.管道定义 管道是一种两个进程间进行单向通信的机制.因为管道传递数据的单向性,管道又称为半双工管道.管道的这一特点决定了器使用的局限性.管道是Linux支持的最初Unix IPC形式之一,具有以下特 ...

  2. 开源电调blheli / blheli_s分析

    一. 启动阶段分析 启动阶段需完成24次换相,超过24次之后进入初始运行阶段,该阶段持续12次换相周期(每个周期6次换相),完成后进入正常运转阶段 二. 换相时间分析 总体思想是根据电机运行状态计算前 ...

  3. dfs:x+y=z

    #include <iostream.h> int a[100]; static int stat=0; void dfs(int n) { if(n==3) { if(a[0]+a[1] ...

  4. java动态代理--代理接口无实现类

    转载:https://blog.csdn.net/weixin_45674354/article/details/103246715 1.接口定义: package cn.proxy; public ...

  5. python 常用内置函数简介

    1.作用域相关内置函数globals()--获取全局变量的字典locals()--获取执行本方法所在命名空间内的局部变量的字典 2.和调用相关callable(o),o是参数,看这个变量是不是可调用. ...

  6. MySQL 里记录货币用什么字段类型好?

    NUMERIC 和 DECIMAL 类型被 MySQL 实现为同样的类型,这在 SQL92 标准允 许.他们被用于保存值,该值的准确精度是极其重要的值,例如与金钱有关的数 据.当声明一个类是这些类型之 ...

  7. Zookeeper Watcher 机制 -- 数据变更通知 ?

    Zookeeper 允许客户端向服务端的某个 Znode 注册一个 Watcher 监听,当服务 端的一些指定事件触发了这个 Watcher,服务端会向指定客户端发送一个事件通 知来实现分布式的通知功 ...

  8. 解释AOP模块?

    AOP模块用于发给我们的Spring应用做面向切面的开发, 很多支持由AOP联盟提供,这样就确保了Spring和其他AOP框架的共通性.这个模块将元数据编程引入Spring.

  9. BGD(批量梯度下降)--学习笔记

    函数凸凹性: 用到的范数知识: 详细解释:每一个元素的平方再开方.补充损失函数: Huber Loss知识点 loss函数可以通过loss参数进行设置.SGDRegressor支持以下的loss函数: ...

  10. C++中初始化列表的使用(总结)

    原文链接 https://www.cnblogs.com/dishengAndziyu/p/10906081.html 参考链接:https://www.cnblogs.com/laiqun/p/57 ...