Python学习第十七天之PyTorch保姆级安装
PyTorch安装与部署
- 一、准备工作
- 二、pytorch介绍
- 三、CPU版本pytorch安装
- 1. 创建虚拟环境
- 2. 删除虚拟环境
- 1. 通过环境名称删除
- 2. 通过环境路径删除
- 3. 配置镜像源
- 4. 安装pytorch
- 1. 首先激活环境变量
- 2. 进入pytorch官网,找到安装指令
- 5. 验证pytorch是否安装成功
- 四、GPU版本pytorch安装
- 1. 查看自己电脑的GPU
- 2. 安装pytorch
- 3. 验证是否安装成功
- 五、补充
- 1. 卸载当前的PyTorch版本
- 六、如何使用Anaconda环境
- 1.pycharm如何使用
- 2. jupyter如何使用
一、准备工作
-
1.pytorch需要python3.6及以上的python版本
-
2.我是利用Anaconda来管理我的python。可自行安装Anaconda。
二、pytorch介绍
安装 PyTorch 时,可以选择在 CPU 或 GPU 上运行,取决于你的硬件支持和需求。
- CPU版本安装:
CPU 版本适用于没有 GPU 或不需要使用 GPU 进行深度学习的情况。安装过程相对简单,因为没有依赖 GPU 驱动和 CUDA 的要求。 - GPU版本安装:
如果你的计算机上有 NVIDIA GPU,并且你希望加速深度学习计算,可以安装 GPU 版本的 PyTorch。GPU 版本依赖于 CUDA 和 cuDNN。
三、CPU版本pytorch安装
为了更好的管理不同项目的Python项目,通常建议创建一个虚拟环境。可以隔离不同项目的依赖项,避免项目之间的冲突。
1. 创建虚拟环境
安装好Anaconda后会有这些程序

输入以下指令可查看当前的虚拟环境
conda env list

利用 conda create 指令创建新的虚拟环境
conda create –n 虚拟环境名字(自己设置) python=版本
演示如下


输入y,等待安装

2. 删除虚拟环境
1. 通过环境名称删除
conda remove --name 环境名称 --all
2. 通过环境路径删除
conda remove --prefix 路径 --all
3. 配置镜像源
根据上述操作,以如下的环境列表为例(虚拟环境已经创建好):

由于安装指令都是从国外的通道下载,下载速度会非常慢。所以我们可以用国内的镜像地址下载pytorch
conda config --show
输入上述指令可以查看我们的通道地址

我的环境中有三个清华的镜像源。如果是之前没用过镜像源,这里只会显示dafaults。

| 镜像名 | 镜像地址 |
|---|---|
| 清华源镜像 | https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch |
| 阿里巴巴镜像 | http://mirrors.aliyun.com/anaconda/pkgs/main |
| 淘宝镜像源 | https://registry.npmmirror.com/ |
conda config --add channels 通道地址
输入以上命令可以添加通道地址,添加后输入以下地址也可以查看通道地址(验证是否加上通道)
conda config --get
如果想删除通道,可执行下面代码
conda config --remove channels 通道地址
4. 安装pytorch
1. 首先激活环境变量
conda activate 创建的虚拟环境
2. 进入pytorch官网,找到安装指令
- 点击Get started 进行如下配置

2. 找到安装代码
conda install pytorch torchvision torchaudio cpuonly -c pytorch //注意,这种就是直接从国外下载了
- 用镜像源安装
注:使用的镜像一定要是highest priority的镜像,否则会下载失败
conda install pytorch torchvision torchaudio cpuonly –c 镜像地址


4. 直接复制自己对应的镜像源即可

5. 出现下图所示,就是安装完成。

5. 验证pytorch是否安装成功
- 在安装pytorch的虚拟环境下输入conda list 查看是否有pytorch

在虚拟环境下运行python并导入torch

print(torch.__version__)
注:这里我们导入torch失败,报错Cannot load mkl_intel_thread.dll
错误警告
- INTEL MKL ERROR: 找不到指定的模块。 mkl_intel_thread.dll.
- Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll.
一些需要mkl_intel_thread.dll文件的python库无法加载其文件,主要原因是环境问题。
解决方法
#使用conda或者pip对其跟新
conda update numpy
conda update mkl
在此执行
import torch
print(torch.__version__)
显示PyTorch 的版本号,说明 PyTorch 已经成功安装。
四、GPU版本pytorch安装
首先和CPU版本安装一样,创建一个虚拟环境,前面提到,这里不在重复。

1. 查看自己电脑的GPU
在任务管理器中可查看GPU

如果没安装显卡驱动,先安装最新的显卡驱动,到官网自行安装即可。
查看驱动版本。win + r ,输入cmd 进入终端,输入指令:
nvidia-smi

我的 CUDA 驱动版本是 12.1,这表示驱动所支持的最大 CUDA 运行时 API 版本是 12.1。因此,如果要安装 CUDA 运行时版本,就需要确保 CUDA 驱动版本 >= CUDA 运行时版本,也就是说可以安装 12.1 及更早的版本。
2. 安装pytorch
直接进入创建的虚拟环境中输入命令,安装成功:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

3. 验证是否安装成功
指令:
import torch
print(torch.__version__)
print(torch.cuda.is_available())
可以直接进入终端python运行指令检验

出现以上界面说明安装成功
也可以直接在pycharm编辑器中验证。



使用GPU环境,最后输出cu121、True,说明安装成功
五、补充
1. 卸载当前的PyTorch版本
进入所在的虚拟环境,输入以下指令即可。
pip uninstall torch torchvision torchaudio

六、如何使用Anaconda环境
1.pycharm如何使用



2. jupyter如何使用
打开Anaconda Prompt

切换到自己想要使用的环境
conda activate 环境名
执行
conda install nb_conda
输入y

显示done下载成功
执行jupyter notebook

相关文章:
Python学习第十七天之PyTorch保姆级安装
PyTorch安装与部署 一、准备工作二、pytorch介绍三、CPU版本pytorch安装1. 创建虚拟环境2. 删除虚拟环境1. 通过环境名称删除2. 通过环境路径删除 3. 配置镜像源4. 安装pytorch1. 首先激活环境变量2. 进入pytorch官网,找到安装指令 5. 验证pytorch是否安装成功 四、…...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4—download-the-linux-kernel-update-package...
什么是 Java 中的线程安全?
回答 Java 中的线程安全(Thread Safety)指的是在多线程环境下,当多个线程同时访问和操作共享资源(如对象、变量、数据结构等)时,能够保证程序的正确性,不会出现数据不一致、竞争条件࿰…...
计算机视觉(opencv-python)入门之图像的读取,显示,与保存
在计算机视觉领域,Python的cv2库是一个不可或缺的工具,它提供了丰富的图像处理功能。作为OpenCV的Python接口,cv2使得图像处理的实现变得简单而高效。 示例图片 目录 opencv获取方式 图像基本知识 颜色空间 RGB HSV CV2常用图像处理方…...
QT:Graphics View的坐标系介绍
在 Qt 的 Graphics View 框架中,存在三种不同的坐标系,分别是 物品坐标系(Item Coordinates)、场景坐标系(Scene Coordinates) 和 视图坐标系(View Coordinates)。这三种坐标系在图形…...
530 Login fail. A secure connection is requiered(such as ssl)-java发送QQ邮箱(简单配置)
由于cs的csdN许多文章关于这方面的都是vip文章,而本文是免费的,希望广大网友觉得有帮助的可以多点赞和关注! QQ邮箱授权码到这里去开启 授权码是16位的字母,填入下面的mail.setting里面的pass里面 # 邮件服务器的SMTP地址 host…...
vs2015下使用openmp
一 OPENMP 简介 OpenMP(Open Multi-Processing)是一个基于共享内存的并行编程API,通过编译器指令实现多线程并行开发。其核心特性包括: 1)通过简单的#pragma指令实现并行化 2)支持增量并行(逐步优化代码) 3)跨平台(Windows/Linux/macOS) 4)支持C/C++/Fortra …...
Docker 搭建 Gitlab 服务器 (完整详细版)
参考 Docker 搭建 Gitlab 服务器 (完整详细版)_docker gitlab-CSDN博客 Docker 安装 (完整详细版)_docker安装-CSDN博客 Docker 日常命令大全(完整详细版)_docker命令-CSDN博客 1、Gitlab镜像 # 查找Gitlab镜像 docker search gitlab # 拉取Gitlab镜像 docker pull gitlab/g…...
【万字长文】开源之播对话白鲸开源CEO郭炜--乐观主义的开源精神走得更远
本文为白鲸开源科技CEO郭炜1小时深度访谈全记录 来源于:开源之播」Episode15:对话郭炜–乐观主义的开源精神走得更远 大家好,我是郭炜,开源圈的“郭大侠”。作为 Apache 基金会的成员,我曾参与并孵化了多个开源项目,如…...
机试刷题_674. 最长连续递增序列【python】
674. 最长连续递增序列 class Solution:def findLengthOfLCIS(self, nums: List[int]) -> int:if not nums:return 0if len(nums)1:return 1left 0right len(nums)-1tmp []tmp.append(nums[0])res 0while left<right:if nums[left]<nums[left1]:tmp.append(nums[l…...
ipe网络安全
🍅 点击文末小卡片 ,免费获取网络安全全套资料,资料在手,涨薪更快 什么是IDS? IDS是英文"Intrusion Detection Systems"的缩写,中文意思是"入侵检测系统"。 大家还记得「网络安全」安…...
QT:QPen、QBrush、与图形抗锯齿的关联
QPen QPen 是 Qt 框架中用于定义绘图时使用的画笔属性的类。在使用 QPainter 进行 2D 绘图时,QPen 可以控制线条的外观,比如线条的颜色、宽度、样式(如实线、虚线等)、端点样式(如方形端点、圆形端点等)和…...
android keystore源码分析
架构 Android Keystore API 和底层 Keymaster HAL 提供了一套基本的但足以满足需求的加密基元,以便使用访问受控且由硬件支持的密钥实现相关协议。 Keymaster HAL 是由原始设备制造商 (OEM) 提供的动态加载库,密钥库服务使用它来提供由硬件支持的加密服…...
【12】智能合约开发入门
12-1 在线合约开发 Cloud IDE简介 基本框架 Cloud IDE是BaaS合约平台提供的在线合约开发工具 IDE是一个去中心化应用(Dapp),通过JavaScript SDK直接与区块链平台通信,进行合约部署和调用 核心功能 合约工程管理 合约编辑与编…...
web安全——分析应用程序
文章目录 一、确定用户输入入口点二、确定服务端技术三、解析受攻击面 一、确定用户输入入口点 在检查枚举应用程序功能时生成的HTTP请求的过程中,用户输入入口点包括: URL文件路径 通常,在查询字符?之前的URL部分并不视为用户输入入口&am…...
Wpf 之Generic.xaml
在 WPF 中,Generic.xaml 是一个特殊的资源文件,它会被自动加载,不需要显式添加。这是 WPF 的命名约定。当 WPF 初始化自定义控件时,它会专门查找这个名字的文件。 这个名字是硬编码在 WPF 框架中的,不能改变。 Generi…...
VidSketch:具有扩散控制的手绘草图驱动视频生成
浙大提出的VidSketch是第一个能够仅通过任意数量的手绘草图和简单的文本提示来生成高质量视频动画的应用程序。该方法训练是在单个 RTX4090 GPU 上进行的,针对每个动作类别使用一个小型、高质量的数据集。VidSketch方法使所有用户都能使用简洁的文本提示和直观的手绘…...
解锁C# XML编程:从新手到实战高手的蜕变之路
一、引言:XML 在 C# 中的关键地位 在 C# 开发的广袤领域中,XML(可扩展标记语言,eXtensible Markup Language)宛如一颗璀璨的明星,占据着举足轻重的地位。它以其独特的结构化和自描述特性,成为了…...
kafka-leader -1问题解决
一. 问题: 在 Kafka 中,leader -1 通常表示分区的领导者副本尚未被选举出来,或者在获取领导者信息时出现了问题。以下是可能导致出现 kafka leader -1 的一些常见原因及相关分析: 1. 副本同步问题: 在 Kafka 集群中&…...
超大规模分类(四):Partial FC
人脸识别任务里,通常利用全连接层,来做人脸的分类。会面临三个实际问题: 真实的人脸识别数据噪声严重真实的人脸识别数据存在严重的长尾分布问题,一些类别样本多,多数类别样本少人脸类别越来越多,全连接层…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...
