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

从零安装pytorch并在pycharm中使用

背景介绍

目前主流使用的工具有Facebook搞的pythorch和谷歌开发的tensorflow两种,二者在实现理念上有一定区别,pytorch和人的思维模式与变成习惯更像,而tensorflow则是先构建整体结构,然后整体运行,开发调试过程较为繁琐,但好处是复用部署较方便,本质是其二者分别使用动态、静态图的区别。

安装Anaconda

Anaconda是python的包管理工具,并且允许创造多个虚拟环境,用以分别安装不同的python版本及包,相当于是python环境的虚拟机。
官网下载地址在此

下载后按照推荐步骤安装即可
安装界面
安装选项
第二个选项是将anaconda本身的python环境等信息添加到系统变量中,不推荐是怕引发环境变量错误,所以我们需要分别手动添加安装目录anaconda,安装目录下的\ScriptsLibrary\bin目录添加到系统变量中:
添加系统变量
安装完成后,可在系统中搜索Anaconda,或Jupyter Notebook,可找到如下文件:
安装所得
以后仅使用Jupyter Notebook和Anaconda Prompt,将其发送到桌面即可,此时打开Prompt即可进入anaconda的虚拟环境,示例如图:
虚拟环境
常用命令如下:

清屏			cls
列出所有环境		conda env list
列出所有库		conda list
创建环境			conda create -n 环境名 python=版本号
删除环境			conda remove -n 环境名 --all
进入环境			conda activate 环境名
退出当前环境		conda deactivate

创建环境
创建环境时会自动安装需要的组件和库,下载即可,此时再列出环境可见如下所示:
环境生成

安装CUDA

随着神经网络等人工智能算法和大数据技术的发展,计算量越来越大,仅靠cpu的处理已经不能满足训练需要,我们使用中多通过专门负责图像处理的显卡来加速训练过程,所以在pytorch的安装中我们需要使用显卡加速功能——cuda,加速显卡和cpu并行计算功能的平台,该技术目前仅支持英伟达显卡。
首先在cmd命令中输入nvidia-smi查看显卡驱动API的CUDA版本:
显卡CUDA

cuda下载网站
该显卡CUDA版本为12.2,下载的新cuda平台不应高于该版本,故下载如下版本:
cuda下载
安装时仅选择CUDA即可:
安装cuda
安装位置

安装完成后可通过nvcc -V命令查看cuda版本:
cuda版本

安装pytorch

pytorch的本质是三个库,torchtorchvisiontorchaudiotorch最大有1G左右,另外两个只是补充的附件,所以工程中我们一般只import torch即可。

直接到其官方网站寻找下载资源,根据需要的版本生成指令,
安装指令
然后到conda prompt虚拟环境中输入该指令即可直接下载,网络情况较好可直接使用,否则可使用镜像源,或到命令中的url手动下载,再使用pip命令手动安装。

安装完成后输入conda list查看所有库,出现如下图说明安装成功
查看库
在环境中打开python,查看能否导入,示例如下则说明安装成功:
测试安装结果

报错解决——fbgemm.dll

这里我重新创建了新的名为pytorch,python版本为3.9的环境,因为之前尝试了3.12和3.11的均在导入时报错缺少fbgemm.dll" or one of its dependencies.,在目录下是有这个文件的,用dll组件查看发现依赖缺少很多文件,不是能一个个找到再添加的了,也有说法是电脑缺少C++的运行环境,但在本机中查看是装了的,卸载重装也没用,最后想到是不是可能版本不对应,分别尝试了不同的pytroch版本和CUDA版本,最后试了环境本身的python版本降到3.9才成功,可官网明明白白写着支持3.12,具体咋回事就不明白了,暂时有的用就是好的。

连接pycharm

直接上图
导入conda环境

如图可见在pycharm中可用pytorch,并可以使用cuda加速。

总结

pytorch安装主要分三步,
1,包管理工具Anaconda用于管理组件,创造虚拟环境;
2,安装加速平台CUDA,主要涉及显卡cuda版本和安装cuda平台版本的关系;
3,安装pytorch,要与安装CUDA对应。

其中CUDA要注意版本向下兼容,顺序分别为显卡驱动API的CUDA版本—安装cuda平台的运行API版本—pytorch版本,版本可依次递减,但后不可大于前。
而pytorch除了要与CUDA对应外,还需注意与Anaconda的python版本对应,当然一般用旧的没什么问题,可那还怎么进步呢,只追求稳定,人类现在可能还用石头火把呢。

安装环境难的就在不同组件之间的配合,版本低了高了,语言和选项等选不对造成安装出错,如果要改就很麻烦,本人在配置过程也折腾了很长时间,就因为不想按教程装老版本,又没有提前搞清楚各个组之间的对应关系,导致不必要的时间浪费在改错上,还不如从头开始了,任务真正开始之前的准备工作还是做充分。

相关文章:

从零安装pytorch并在pycharm中使用

背景介绍 目前主流使用的工具有Facebook搞的pythorch和谷歌开发的tensorflow两种,二者在实现理念上有一定区别,pytorch和人的思维模式与变成习惯更像,而tensorflow则是先构建整体结构,然后整体运行,开发调试过程较为繁…...

开源AI工具FastGPT和RagFlow对比

FastGPT和RagFlow都是基于大型语言模型(LLM)的先进AI系统,它们在多个方面有着各自的特点和优势。 以下是对两者性能的详细对比: 一、系统架构与功能 FastGPT: 数据收集:通过从互联网上收集大量的文本数…...

第N2周:NLP中的数据集构建

对于初学者,NLP中最烦人的问题之一就数据集的构建问题,处理不好就会引起shape问题(各种由于shape错乱导致的问题)。这里给出一个模版,大家可根据这个模版来构建。 torch.utils.data是PyTorch中用于数据加载和预处理的…...

AI助力浮雕创作!万物皆可浮雕?Stable Diffusion AI绘画【浮雕艺术】之文生浮雕!

前言 对于浮雕艺术,其实并不了解。但有幸能和“细辛”前辈结识,对浮雕有了简单的了解,浮雕图案的传统方式是先由画师画出图,然后由雕刻师雕刻。画师画图归为浮雕的设计阶段,画师会绘制出浮雕的设计图,‌这为…...

你觉得大模型时代该出现什么?

大模型的概念都火了两年了,之前各种媒体吹嘘大模型的出现是类似“蒸汽机时代”、“iPhone时刻”等等。那为什么我们期待的结果都没出现呢?咱们先一起回顾下历史。 1、蒸汽机时代 1.1、蒸汽机历史 许多人都在讨论大模型时代好像只是概念在火&#xff0…...

JS【详解】事件委托

事件委托的简介 事件委托(Event Delegation)是 JS 处理事件的一种技术:不直接在目标元素上设置事件监听器,而是在其父元素或祖先元素上设置监听器,然后利用事件冒泡机制来捕获和处理事件。 事件委托的好处 减少内存占用…...

谈对象系列:C++类和对象

文章目录 一、类的定义1.1类定义的格式类的两种定义方法结构体: 1.2访问限定符1.3类域 二、实例化2.1变量的声明和定义2.2类的大小计算空类的大小(面试): 三、this指针小考题 一、类的定义 1.1类定义的格式 使用class关键字&…...

设计模式20-备忘录模式

设计模式20-备忘录 动机定义与结构定义结构 C代码推导优缺点应用场景总结备忘录模式和序列化备忘录模式1. **动机**2. **实现方式**3. **应用场景**4. **优点**5. **缺点** 序列化1. **动机**2. **实现方式**3. **应用场景**4. **优点**5. **缺点** 对比总结 动机 在软件构建过…...

绘制echarts-liquidfill水球图

文章目录 一、效果图二、步骤1.安装插件2.引入2.主要代码2.素材图片 总结 一、效果图 二、步骤 1.安装插件 npm install echarts npm install echarts-liquidfillecharts5的版本与echarts-liquidfill3兼容,echarts4的版本与echarts-liquidfill2兼容,安装的时候需要…...

应急响应:D盾的简单使用.

什么是应急响应. 一个组织为了 应对 各种网络安全 意外事件 的发生 所做的准备 以及在 事件发生后 所采取的措施 。说白了就是别人攻击你了,你怎么把这个攻击还原,看看别人是怎么攻击的,然后你如何去处理,这就是应急响应。 D盾功…...

c语言第14天笔记

通过指针引用数组 数组元素的指针 数组指针:数组中的第一个元素的地址,也就是数组的首地址。 指针数组:用来存放数组元素地址的数组,称之为指针数组。 注意:虽然我们定义了一个指针变量接收了数组地址,但…...

服装行业QMS中的来料检验:常见问题解析与解决策略

在服装行业的来料检验过程中,常会遇到一系列问题,这些问题可能影响到原材料的质量,进而影响最终产品的品质。以下将详细介绍来料检验的常见问题及相应的解决方法: 一、常见问题 外观瑕疵 问题描述:原材料表面存在污渍…...

健身动作AI识别,仰卧起坐计数(含UI界面)

用Python和Mediapipe打造,让你的运动效果一目了然! 【技术揭秘】 利用Mediapipe的人体姿态估计,实时捕捉关键点,精确识别动作。 每一帧的关键点坐标和角度都被详细记录,为动作分析提供数据支持。 支持自定义动作训练&a…...

GitHub开源金融系统:Actual

Actual:电子金融,本地优先,自由开源- 精选真开源,释放新价值。 概览 Actual的创新之处在于其对个人财务管理的全面考虑,它不仅仅是一个简单的记账工具,而是一个综合性的理财解决方案。它的本地优先设计意味…...

【学习笔记】Day 7

一、进度概述 1、DL-FWI基础入门培训笔记 2、inversionnet_train 试运行——未成功 二、详情 1、InversionNet: 深度学习实现的反演 InversionNet构建了一个具有编码器-解码器结构的卷积神经网络,以模拟地震数据与地下速度结构的对应关系。 (一…...

网络中特殊的 IP 地址

特殊网络 IP 127.0.0.1 127.0.0.1 是本机回送地址,发送到 127.0.0.1 的数据或者从 127.0.0.1 返回的数据只会在本机进行传输, 而不进行外部网络传输。 主要有以下两个作用: 测试本机网络 当我们可以 ping 通 127.0.0.1 的时候, 则说明本机的网卡以及 tc…...

ASP 表单处理入门指南

ASP 表单处理入门指南 简介 ASP(Active Server Pages)是一种由微软开发的服务器端脚本环境,用于动态生成交互性网页。它允许开发者结合HTML、VBScript或JScript脚本语言来创建和运行动态网页或Web应用程序。本文将重点介绍如何使用ASP来处理表单数据,包括表单的创建、数据…...

极米RS10Plus性价比高吗?7款4-6K价位投影仪测评哪款最好

通常家庭想买个投影仪都会选择4-6K这个价位段的投影仪,3K以下的投影配置太低,6K以上的价格略高,4-6K价位段的中高端投影仪正好满足大部分家庭的使用需求。正好极米投影在8月份上新了一款Plus版本的长焦投影:极米RS10Plus&#xff…...

RocketMQ怎么对文件进行读写的?

RocketMQ 对文件的读写主要依赖于其底层的存储机制,核心组件是 CommitLog 和 ConsumeQueue,并且通过 MappedFile 类来进行高效的文件操作。以下是 RocketMQ 文件读写的详细介绍: 1. CommitLog CommitLog 是 RocketMQ 的核心存储文件&#x…...

智慧宠物护理:智能听诊器引领健康监测新潮流

在宠物健康科技的浪潮中,智能听诊器的诞生标志着宠物健康管理迈向了智能化的新纪元。广州坎普利智能信息科技有限公司的创新产品,正为宠物主人和他们的毛茸茸伙伴带来前所未有的关怀体验。 创新特点 这款智能听诊器,以其前沿科技和人性化设…...

成都宠博会的发展历程

1.背景与起源创办背景:随着国内宠物经济的蓬勃发展,成都以其浓厚的宠物文化和“宠物友好城市”的定位,为宠博会的诞生提供了沃土。展会旨在满足中西部地区日益增长的行业交流与消费需求。首届信息:根据文档提及的“从2012年到2025…...

Slim模板终极部署指南:从开发到生产的完整流程

Slim模板终极部署指南:从开发到生产的完整流程 【免费下载链接】slim Slim is a template language whose goal is to reduce the syntax to the essential parts without becoming cryptic. 项目地址: https://gitcode.com/gh_mirrors/sli/slim Slim模板语言…...

2026 年4月深圳高精度 TOF 传感器,这些推荐值得关注!

随着科技的飞速发展,高精度TOF(Time of Flight)传感器在众多领域的应用越来越广泛。从智能家居到自动驾驶,从工业自动化到医疗成像,TOF传感器的市场需求呈现出爆发式增长。今天,我们就来聊聊2026年值得关注…...

千问3.5-2B部署教程:GPU利用率监控脚本(nvidia-smi + prometheus exporter)

千问3.5-2B部署教程:GPU利用率监控脚本(nvidia-smi prometheus exporter) 1. 引言 在部署和使用千问3.5-2B这类视觉语言模型时,GPU资源的高效利用至关重要。本教程将手把手教你如何搭建一个轻量级的GPU监控系统,实时…...

OpenClaw自动化测试:千问3.5-27B驱动UI全流程验证

OpenClaw自动化测试:千问3.5-27B驱动UI全流程验证 1. 为什么选择OpenClaw做自动化测试? 去年接手一个前端重构项目时,我遇到了一个典型困境:每次代码改动后,都需要手动执行47个关键页面的功能测试。这套测试流程完整…...

新手学吉他必看,这5个常见误区,避开了少走3个月弯路

经常会看到很多新手学吉他,学着学着就卡壳学不下去了,不是嫌按弦手疼,就是曲子弹不下去。特别是一些自学的朋友,网上随便东找些课,西看些视频,学下来进步很慢,3个月之后就改打“退堂鼓”了。其实…...

OpenClaw 的模型架构中,是否使用了非自回归生成(NAR)模块?

关于OpenClaw模型架构中是否使用了非自回归生成模块,这其实是一个挺有意思的问题。在讨论具体细节之前,或许可以先聊聊非自回归生成本身在技术演进中的位置。 非自回归生成,也就是NAR,和常见的自回归生成方式不太一样。自回归生成…...

植物基肉类替代品市场的增长与投资机会

植物基肉类替代品市场的增长与投资机会 关键词:植物基肉类替代品、市场增长、投资机会、消费趋势、行业发展 摘要:本文聚焦于植物基肉类替代品市场,深入分析其市场增长的驱动因素、现状及未来趋势,同时探讨了该领域蕴含的投资机会。通过对核心概念的阐释、相关算法原理的介…...

现在有开源的最好的矢量动画模型是什么,什么配置的电脑可以部署

目录 一、主流开源矢量动画模型对比 二、电脑配置方案(按预算分级) 1. 旗舰级(稳跑 OmniLottie 高性能) 2. 主流级(稳跑 AnimateDiff 兼顾通用) 3. 入门级(轻量应用) 三、关…...

别急着重装!Stable Diffusion WebUI安装失败后,如何利用现有文件快速恢复(Mac/Windows通用)

别急着重装!Stable Diffusion WebUI安装失败后,如何利用现有文件快速恢复(Mac/Windows通用) 当你兴致勃勃地准备体验Stable Diffusion WebUI的强大功能时,突然在安装过程中遇到错误提示,那种挫败感可想而知…...