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是否安装成功 四、…...
Kibana:Spotify Wrapped 第二部分:深入挖掘数据
作者:来自 Elastic Philipp Kahr 我们将比以往更深入地探究你的 Spotify 数据并探索你甚至不知道存在的联系。 在由 Iulia Feroli 撰写的本系列的第一部分中,我们讨论了如何获取 Spotify Wrapped 数据并在 Kibana 中对其进行可视化。在第 2 部分中&#…...
半导体晶圆精控:ethercat转profient网关数据提升制造精度
数据采集系统通过网关连接离子注入机,精细控制半导体晶圆制造过程中的关键参数。 在半导体制造中,晶圆制造设备的精密控制是决定产品性能的关键因素。某半导体工厂采用耐达讯Profinet转EtherCAT协议网关NY-PN-ECATM,将其数据采集系统与离子注…...
CMake小结2(PICO为例)
1 前言 之前写过一篇cmake,不过很简单:CMake小结_cmake ${sources}-CSDN博客 构建系统现在真的太多了,完全学不过来的感觉,meson,gardle,buildroot, Maven。。。我是真的有点放弃治疗了。之前…...
5. Go 方法(结构体的方法成员)
Go语言没有传统的 class ,为了让函数和结构体能够关联,Go引入了“方法”的概念。 当普通函数添加了接收者(receiver)后,就变成了方法。 一、函数和方法示例 // 普通函数 func Check(s string) string {return s }//…...
Linux查看和处理文件内容
1.文本文件 有字符集编码的文件 如:ASCII、UTF-8、Unicode、ANSI等 常见的文本文件 txt、xml、conf、properties、yml等配置文件、日志文 件、源代码 2.二进制文件 除文本文件外的文件 如:可执行程序、图片、音频、视频 3.cat 格式:…...
关于网络端口探测:TCP端口和UDP端口探测区别
网络端口探测是网络安全领域中的一项基础技术,它用于识别目标主机上开放的端口以及运行在这些端口上的服务。这项技术对于网络管理和安全评估至关重要。在网络端口探测中,最常用的两种协议是TCP(传输控制协议)和UDP(用…...
Spring IoC和DI
Spring IoC和DI 1 IOC1.1 什么是IoC?1.2 IoC 介绍1.2.1 传统程序开发1.2.2 问题分析1.2.3 IoC程序开发1.2.3 IoC 优势 1.3 DI 介绍 2. IoC & DI 使⽤IoC 详解Bean的存储1.1 Controller(控制器存储) 1.2 Service(服务存储&…...
centos9之ESXi环境下安装
一、centos9简介 CentOS Stream 9是一个基于RHEL(Red Hat Enterprise Linux)的开源操作系统。它是CentOS Stream系列的最新版本。CentOS Stream是一个中间发行版,位于RHEL和Fedora之间,旨在提供更及时的软件更新和新功能。CentOS …...
【论文学习】基于规模化Transformer模型的低比特率高质量语音编码
以下文章基于所提供的文档内容撰写,旨在对该论文“Scaling Transformers for Low-Bitrate High-Quality Speech Coding”进行较为系统和深入的分析与总结。 论文地址:https://arxiv.org/pdf/2411.19842 一、研究背景与动机 自20世纪70年代以来ÿ…...
Docker 2025/2/24
用来快速构建、运行和管理应用的工具。帮助部署。 快速入门 代码略 解释 docker run :创建并运行一个容器,-d是让容器在后台运行 --name mysql :给容器起个名字,必须唯一 -p 3306:3306 :设置端口映射 -e KEYVALUE :是设置环境变量 mysql :指定运行的…...
Rust语言基础知识详解【一】
1.在windows上安装Rust Windows 上安装 Rust 需要有 C 环境,以下为安装的两种方式: 1. x86_64-pc-windows-msvc(官方推荐) 先安装 Microsoft C Build Tools,勾选安装 C 环境即可。安装时可自行修改缓存路径与安装路…...
Kronecker分解(K-FAC):让自然梯度在深度学习中飞起来
Kronecker分解(K-FAC):让自然梯度在深度学习中飞起来 在深度学习的优化中,自然梯度下降(Natural Gradient Descent)是一个强大的工具,它利用Fisher信息矩阵(FIM)调整梯度…...
Ubutu部署WordPress
前言 什么是word press WordPress是一种使用PHP语言开发的建站系统,用户可以在支持PHP和MySQL数据库的服务器上架设WordPress。它是一个开源的内容管理系统(CMS),允许用户构建动态网站和博客。现在的WordPress已经强大到几乎可以…...
请解释 React 中的 Hooks,何时使用 Hooks 更合适?
一、Hooks 核心理解 1. 什么是 Hooks? Hooks 是 React 16.8 引入的函数式编程范式,允许在函数组件中使用状态管理和生命周期能力。就像给函数组件装上了"智能芯片",让原本只能做简单展示的组件具备了处理复杂逻辑的能力。 2. 类…...
在Linux桌面上创建Idea启动快捷方式
1、在桌面新建idea.desktop vim idea.desktop [Desktop Entry] EncodingUTF-8 NameIntelliJ IDEA CommentIntelliJ IDEA Exec/home/software/idea-2021/bin/idea.sh Icon/home/software/idea-2021/bin/idea.svg Terminalfalse TypeApplication CategoriesApplication;Developm…...
如何在netlify一键部署静态网站
1. 准备你的项目 确保你的静态网站文件(如 HTML、CSS、JavaScript、图片等)都在一个文件夹中。通常,项目结构如下: my-static-site/ ├── index.html ├── styles/ │ └── styles.css └── scripts/└── script.js…...
网页制作09-html,css,javascript初认识のhtml如何使用表单
表单主要用来收集客户端提供的相关信息。,使网页具有交互作用。在网页制作的过程中,常常需要使用表单,如进行会员注册,网上调查和搜索等 访问者可以使用如文本域列表框,复选框以及单选按钮之类的表单对象输入信息,然后…...
Linux 命令大全完整版(03)
1. 系统管理命令 screen 功能说明:多重视窗管理程序。语 法:screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s <shell>][-S <作业名称>]补充说明:screen 为多重视窗管理程序。此处…...
【新人系列】Python 入门专栏合集
✍ 个人博客:https://blog.csdn.net/Newin2020?typeblog 📝 专栏地址:https://blog.csdn.net/newin2020/category_12801353.html 📣 专栏定位:为 0 基础刚入门 Python 的小伙伴提供详细的讲解,也欢迎大佬们…...
嵌入式软件数据结构(一)链表知识点专栏 附源码 附原理
嵌入式软件数据结构(一)链表知识点专栏 附源码 附原理 前言: 首先我们要知道什么是链表? 什么是链表,链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指…...
order by布尔盲注、时间盲注
pdo防御下,order by、limit不能参数绑定,可以进行sql注入 案例:靶场的less-46 布尔盲注: import requests from lxml import htmldef get_id_one(URL, paload):res requests.get(urlURL, paramspaload)tree html.fromstring(…...
数据结构与算法-图论-最短路-拓展运用
选择最佳路线 分析: 这是一道图论中的最短路径问题,目标是在给定的公交网络中,找到从琪琪家附近的车站出发,到她朋友家附近车站(编号为 s )的最短时间。以下是对该问题的详细分析: 问题关键信息…...
数据开发的简历及面试
简历 个人信息: 邮箱别写QQ邮箱, 写126邮箱/189邮箱等 学历>>本科及以上写,大专及以下不写 专业>>非计算机专业不写 政治面貌>>党员写, 群众不用写 掌握的技能: 精通 > 熟悉 > 了解 专业工具: 大数据相关的 公司: 如果没有可以写的>>金融服…...
android s下make otapackage编译失败
[DESCRIPTION] android s上,我司推荐使用split build的方式进行编译,但是部分客户依旧会采用AOSP full build的方式进行编译。而我司在这块release的时候,并未进行验证。因此执行make otapackage的时候,会出现如下报错。 [0312/…...
【算法通关村 Day12】字符串
字符串青铜挑战 字符串转换 转换为小写字母 给你一个字符串 s ,将该字符串中的大写字母转换成相同的小写字母,返回新的字符串。leetcode791 public class ToLowerCase {/*** 将字符串中的大写字母转换为小写字母。** param s 输入字符串* return 转换…...
grafana K6压测
文章目录 install and runscript.jsoptions最佳实践 report 解析 https://grafana.com/docs/k6/latest/get-started install and run install # mac brew install k6当前目录下生成压测脚本 # create file script.js k6 new [filename] # create file ‘script.js’ in …...
SQLite 安装教程以及可视化工具介绍
目录 简述 1. Windows 系统安装 1.1 下载预编译的二进制文件 1.2 解压文件 1.3 配置环境变量 1.4 验证安装 2. GUI 可视化工具 2.1 免费工具 2.1.1 DB Browser for SQLite 2.1.2 SQLiteStudio 2.1.3 SQLite Expert 2.1.4 SQLiteGUI 2.1.5 Antares SQL 2.1.6 DbGa…...
谷云科技iPaaS×DeepSeek:构建企业智能集成的核心底座
2025年,DeepSeek大模型的爆发式普及,正引领软件行业实现 “智能跃迁”。从代码生成到系统集成,从企业级应用到消费级产品,自然语言交互能力已成为新一代软件的核心竞争力。据行业分析,超60%的软件企业已启动大模型适配…...
mac 下 java 调用 gurobi 不能加载 jar
在 mac 电脑中的 java 始终不能加载 gurobi 的 jar 包,java 的开发软件 eclipse,idea 总是显示找不到 gurobi 的 jar 包,但是 jar 包明明就在那里。 摸索了三个小时,最后发现原因竟然是: jar 包太新,替换…...
京准电钟:NTP精密时钟服务器在自动化系统中的作用
京准电钟:NTP精密时钟服务器在自动化系统中的作用 京准电钟:NTP精密时钟服务器在自动化系统中的作用 NTP精密时钟服务器在自动化系统中的作用非常重要,特别是在需要高精度时间同步的场景中。NTP能够提供毫秒级的时间同步精度,这…...
京东-零售-数据研发面经【附答案】
近期,有参加春招的同学和我交流了他的面试历程,我针对这些内容进行了细致的总结与梳理,并在此分享出来,希望能助力大家学习与借鉴。 1.八股文 1)HashMap的底层原理是什么【见V6.0面试笔记 Java基础部分第19题】 2&am…...
面试之《react hooks在源码中是怎么实现的?》
要深入理解 React Hooks 在源码中的实现,可以从以下几个关键方面来剖析: 核心数据结构 在 React 内部,使用链表来管理每个函数组件的 Hooks。每个 Hook 对应一个节点,这些节点通过 next 指针相连。以下是简化后的 Hook 节点结构…...
泛型的约束有哪几种?(C#)
目录 1 值类型约束(where T : struct) 2 引用类型约束(where T : class) 3 无参构造函数约束(where T : new ()) 4 基类约束(where T : <基类名>) 5 接口约束(…...
Harmony开发笔记(未完成)
一、感想 作为一名拥有11年经验的Android开发者,我亲历了Android从高速发展到如今面临“僧多粥少”的过程。技术的世界瞬息万变,没有一种技术能够让人依赖一辈子。去年初,我自学了鸿蒙系统,并顺利通过了鸿蒙官方的初级和高级认。…...
DevSecOps普及:安全与开发运维的深度融合
一、引言 随着软件开发模式的演进,DevOps已成为现代软件工程的主流实践。然而,在传统的DevOps流程中,安全往往被视为开发和运维之外的额外环节,导致安全漏洞在产品交付后才被发现,增加了修复成本和风险。为了解决这一…...
JavaScript 系列之:Ajax、Promise、Axios
前言 同步:会阻塞。同步代码按照编写的顺序逐行依次执行,只有当前的任务完成后,才会执行下一个任务。 异步:异步代码不会阻塞后续代码的执行。当遇到异步操作时,JavaScript 会将该操作放入任务队列中,继续…...
為什麼使用不限量動態住宅IP採集數據?
在瞭解“不限量動態住宅IP數據採集”之前,我們需要先搞清楚什麼是“動態住宅IP”。簡單來說,動態IP是一種會定期變化的IP地址,通常由互聯網服務提供商(ISP)分配給家庭用戶。與固定IP(靜態IP)不同…...
vue3-06vue2(Object.defineProperty)与vue3(基于ES6的Proxy)的响应式原理对比
1.vue2响应原理 1.1对于对象与数组 对象类型: 通过 object.defineProperty() 对属性的读取、修改进行拦截 (数据劫持) 数组类型:通过重写更新数组的一系列方法来实现拦截。 (对数组的变更方法进行了包裹) Vue2的响应式是基于Object.defineProperty实现的 1.2 基本原理Objec…...
MySQL数据库入门到大蛇尚硅谷宋红康老师笔记 高级篇 part 4
第04章_逻辑架构 1. 逻辑架构剖析 首先MySQL是典型的C/S架构,即Client/Server架构,服务器端程序使用的mysqld。 不论客户端进程和服务器进程是采用哪种方式进行通信,最后实现的效果都是:客户端进程向服务器进程发送一段文本&…...
清华大学DeepSeek文档下载,清华大学deepseek下载(完成版下载)
文章目录 前言一、清华大学DeepSeek使用手册下载二、清华大学DeepSeek使用手册思维导图 前言 这是一篇关于清华大学deepseek使用手册pdf的介绍性文章,主要介绍了DeepSeek的定义、功能、使用方法以及如何通过提示语设计优化AI性能。以下是对这些核心内容的简要概述&…...
HDFS数据多目录、异构存储、回收站
1.NameNode元数据多目录 HDFS集群中可以在hdfs-site.xml中配置“dfs.namenode.name.dir”属性来指定NameNode存储数据的目录,默认NameNode数据存储在${hadoop.tmp.dir}/dfs/name目录,“hadoop.tmp.dir”配置项在core-site.xml中。 我们也可以将NameNod…...
windows设置暂停更新时长
windows设置暂停更新时长 win11与win10修改注册表操作一致 ,系统界面不同 1.打开注册表 2.在以下路径 \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 右键新建 DWORD 32位值,名称为FlightSettingsMaxPauseDays 根据需求填写数…...
04 路由表的IP分组传输过程
目录 1、路由表的核心结构 2、IP分组传输过程和数据包转发过程 2.1、IP分组传输过程 2.2、数据包转发过程 2.3、IP分组传输过程和数据包转发的区别 3、数据包的变化 3.1、拓扑结构 3.2、传输过程详解(主机A → 主机B) 3.2.1、主机A发送数据 3.2…...
实现Python+Django+Transformers库中的BertTokenizer和BertModel来进行BERT预训练,并将其应用于商品推荐功能
一、环境安装准备 #git拉取 bert-base-chinese 文件#创建 虚拟运行环境python -m venv myicrplatenv#刷新source myicrplatenv/bin/activate#python Django 集成nacospip install nacos-sdk-python#安装 Djangopip3 install Django5.1#安装 pymysql settings.py 里面需要 # 强制…...
数据结构---定长顺序表
1.线性表的定义 存在唯一的一个被称为“第一个”的数据元素;存在唯一的一个被称为“最后一个”的数据元素;除第一个之外,集合中的每一个数据元素都只有一个前驱;除最后一个之外,集合中的每一个数据元素都只有一个后继…...
Elasticsearch 相关面试题
1. Elasticsearch基础 Elasticsearch是什么? Elasticsearch是一个分布式搜索引擎,基于Lucene实现。 Mapping是什么?ES中有哪些数据类型? Mapping:定义字段的类型和属性。 数据类型:text、keyword、integer、…...
冒泡排序(Bubble Sort)详细教程:Java实现与优化
一、什么是冒泡排序? 冒泡排序(Bubble Sort)是一种简单的排序算法,它的基本思想是通过两两比较相邻元素,将较大的元素“冒泡”到数列的末尾。每一轮遍历会将一个较大的元素放到正确的位置,直到整个数组有序…...
【git】【reset全解】Git 回到上次提交并处理提交内容的不同方式
Git 回到上次提交并处理提交内容的不同方式 在 Git 中,若要回到上次提交并对提交内容进行不同处理,可使用 git reset 命令搭配不同选项来实现。以下为你详细介绍操作步骤及各选项的作用。 1. 查看提交历史 在操作之前,可通过以下命令查看提…...
矩阵的 正定(Positive Definite)与负定(Negative Definite):从Fisher信息矩阵看“曲率”的秘密
矩阵的正定与负定:从Fisher信息矩阵看“曲率”的秘密 在数学和统计学中,矩阵的“正定性”和“负定性”是一对重要概念,尤其在优化、统计推断和机器学习中频繁出现。比如,Fisher信息矩阵(Fisher Information Matrix, F…...