新手上路:Anaconda虚拟环境创建和配置以使用PyTorch和DGL
文章目录
- 前言
- 步骤 1: 安装 Anaconda
- 步骤 2: 创建新的 Anaconda 环境
- 步骤 3: 安装最新版本的 PyTorch
- 步骤 4: 安装特定版本的 PyTorch
- 步骤 5: 安装最新版本的 DGL
- 步骤 6: 安装特定版本的 DGL
- 步骤 7: Pycharm中使用虚拟环境解释器
- 第一种情况:创建新项目
- 第二种情况:已有项目或文件
- 步骤 8: 验证安装
- 结论
前言
在数据科学和机器学习领域,Anaconda 是一个非常流行的平台,它提供了一个管理包和环境的强大工具。
在本文中,我们将逐步创建一个新的 Anaconda 环境,并在其中安装最新版本的 PyTorch 和 DGL,以及如何安装特定版本的这些库。
步骤 1: 安装 Anaconda
首先,确保你的系统上安装了 Anaconda。你可以看一下之前发布的文章(windows CPU)安装
步骤 2: 创建新的 Anaconda 环境
创建一个新的环境可以帮助你为不同的项目隔离依赖,避免版本冲突。我们将创建一个名为 newdglgcn
的环境,并指定 Python 版本为 3.8。
-
打开 Anaconda Prompt。 开始->所有应用->Anaconda3(64-bit)
-
输入以下命令创建新环境:
conda create -n newdglgcn python=3.8
注意:一方面,安装版本尽量不要太新,安装现在稳定的版本即可。
感兴趣可以看这里
下图中红框表示,现在比较稳定的版本
另一方面,许多需要复现的论文可能版本在3.8或3.9。所以我选择安装3.8版本的python。
- 激活新环境:
conda activate newdglgcn
步骤 3: 安装最新版本的 PyTorch
在新环境中,我们将安装最新版本的 PyTorch。
注意下面安装包,都必须先激活环境后,在环境中使用命令。
最明显的标志是,左端出现(你的环境名)
标志。
- 使用
conda
安装最新版本的 PyTorch:
这个命令可以在 pytorch 官网找到
选择你需要的配置,然后生成安装命令。粘贴到 Prompt 中。
conda install pytorch torchvision torchaudio cpuonly -c pytorch
- 验证 PyTorch 是否正确安装:
import torch print(torch.__version__)
步骤 4: 安装特定版本的 PyTorch
如果你需要安装特定版本的 PyTorch,可以使用 PyTorch 的官方安装命令生成器。访问 PyTorch 官方网站。找到对应的命令
例如,如果你想安装 PyTorch 2.2.2 版本(Windows CPU)
你可以使用以下命令:
conda install pytorch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2 cpuonly -c pytorch
······
或者使用 pip:
pip install torch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2 --index-url https://download.pytorch.org/whl/cpu
步骤 5: 安装最新版本的 DGL
接下来,我们将安装最新版本的 DGL。
这个命令在DGL官网可以找到
- 使用
pip
安装最新版本的 DGL:
选择你需要的配置,然后生成安装命令。粘贴到 Prompt 中。
conda install -c dglteam dgl
pip install dgl #或者直接这个应该也可以
步骤 6: 安装特定版本的 DGL
如果你需要安装特定版本的 DGL,
第一步,查看你可以安装的dgl版本
conda search dgl -c dglteam
选择想安装的版本。例如,如果你想安装 DGL 1.1.2 版本,你可以使用以下命令:
conda install -c dglteam dgl=1.1.2
在这里,如果你安装后运行步骤七
报错,可能是版本不兼容。 推荐 这篇博客 ,可照此法,反复试探。
经试探,python3.8 可以安装的最高版本分别为 pytorch2.2.2 和dgl1.1.2 ( 对应步骤四和六 )
步骤 7: Pycharm中使用虚拟环境解释器
第一种情况:创建新项目
注意:Conda 可执行文件 安装路径\anaconda3\Scripts\conda.exe
第二种情况:已有项目或文件
- 打开刚才写好的文件或者任意一个文件
点击 文件->设置
- 项目:项目名:项目名称->Python解释器
添加解释器->本地解释器
注意:Conda 可执行文件 安装路径\anaconda3\Scripts\conda.exe
步骤 8: 验证安装
现在,我们可以验证 PyTorch 和 DGL 是否正确安装并运行一个简单的测试。
-
运行以下 Python 代码:
import torch torch.cuda.is_available() print(torch.__version__)import dgl print('DGL version:', dgl.__version__)# 创建一个简单的图 def simple_graph():import dglimport torch# 定义节点和边nodes = torch.tensor([0, 1, 2, 3])edges_src = torch.tensor([0, 1, 2])edges_dst = torch.tensor([1, 2, 3])# 创建图 g = dgl.graph((edges_src, edges_dst)) g.ndata['h'] = torch.randn((g.num_nodes(), 10)) return g g = simple_graph() print(g)
-
运行结果如图:
结论
博主现在使用的是 python3.8 , pytorch2.2.2 和dgl1.1.2 ( 对应步骤四和六)
最高版本的pytorch2.4.1和最高版本的dgl 2.2.x不兼容,会报错哦~
通过以上步骤,你可以在新的 Anaconda 环境中成功安装并配置 PyTorch 和 DGL。这些工具将为你在图神经网络领域的研究和开发提供强大的支持。
相关文章:
新手上路:Anaconda虚拟环境创建和配置以使用PyTorch和DGL
文章目录 前言步骤 1: 安装 Anaconda步骤 2: 创建新的 Anaconda 环境步骤 3: 安装最新版本的 PyTorch步骤 4: 安装特定版本的 PyTorch步骤 5: 安装最新版本的 DGL步骤 6: 安装特定版本的 DGL步骤 7: Pycharm中使用虚拟环境解释器第一种情况:创建新项目第二种情况&am…...
什么是PCB的Mark点?如何进行设计Mark点?
一、什么是Mark点? PCB的Mark点,也被称为基准点或光学定位点,是在印刷电路板(Printed Circuit Board, PCB)上设置的一种特殊标记。 图1.1 PCB的Mark点 Mark点的主要作用是为表面贴装技术(Surface Mount…...
Spark SQL中的from_json函数详解
Spark SQL中的from_json函数详解 在Spark SQL中,from_json是一个用于解析JSON数据的函数,主要用于将JSON格式的字符串解析为结构化的数据(即StructType或其他Spark SQL数据类型)。这个函数在处理半结构化数据(如JSON日…...
Vue 引入及简单示例
Vue 渐进式JavaScript 框架 学习笔记 - Vue 引入及简单示例 目录 与jquery区别 Vue引入 两种方式引入 下载到本地 代码结构 简单示例 Style中引入vue.js 对vue语法进行解析 对三目运算符支持 设置变量(状态) 总结 与jquery区别 不需要手动操…...
JDK长期支持版本(LTS)
https://blogs.oracle.com/java/post/the-arrival-of-java-23 jdk长期支持版本(LTS):JDK 8、11、17、21:...
审计文件标识作为水印打印在pdf页面边角
目录 说明 说明 将审计文件的所需要贴的编码直接作为水印贴在页面四个角落,节省辨别时间 我曾经写过一个给pdf页面四个角落加上文件名水印的python脚本,现在需要加一个图形界面进一步加强其实用性。首先通过路径浏览指定文件路径,先检测该路…...
图片专栏——概念
欢迎来到图片世界,大家一起学习交流! 1. 像素(Pixel) 定义:像素是图像的最小单位,是“图像元素”的缩写。你可以把像素想象成拼图中的一个最小块,无数个像素组合在一起就形成了完整的图像。作用ÿ…...
江天科技主要产品销售单价下滑,应收账款、存货周转率大幅下降
《港湾商业观察》廖紫雯 日前,苏州江天包装科技股份有限公司(以下简称:江天科技)冲击北交所,保荐机构为国投证券。 江天科技主要从事标签印刷产品的研发、生产与销售,公司主要产品包括薄膜类和纸张类的不…...
HTB:Remote[WriteUP]
目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 将靶机TCP开放端口号提取并保存 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 使用ftp尝试匿名…...
【开源免费】基于SpringBoot+Vue.JS密接者跟踪系统(JAVA毕业设计)
本文项目编号 T 145 ,文末自助获取源码 \color{red}{T145,文末自助获取源码} T145,文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…...
机器学习10-解读CNN代码Pytorch版
机器学习10-解读CNN代码Pytorch版 我个人是Java程序员,关于Python代码的使用过程中的相关代码事项,在此进行记录 文章目录 机器学习10-解读CNN代码Pytorch版1-核心逻辑脉络2-参考网址3-解读CNN代码Pytorch版本1-MNIST数据集读取2-CNN网络的定义1-无注释版…...
Python 电脑定时关机工具
Python 电脑定时关机工具 相关资源文件已经打包成EXE文件,可双击直接运行程序,且文章末尾已附上相关源码,以供大家学习交流,博主主页还有更多Python相关程序案例,秉着开源精神的想法,望大家喜欢,…...
机器学习09-Pytorch功能拆解
机器学习09-Pytorch功能拆解 我个人是Java程序员,关于Python代码的使用过程中的相关代码事项,在此进行记录 文章目录 机器学习09-Pytorch功能拆解1-核心逻辑脉络2-个人备注3-Pytorch软件包拆解1-Python有参和无参构造构造方法的基本语法示例解释注意事项…...
Qt之QDjango-db的简单使用
QDjango是一款由C编写、依托于Qt库的Web开发框架,其设计理念受到了广受欢迎的Python框架Django的影响。这个项目旨在提供一个高效、灵活且易于使用的工具集,帮助开发者构建高质量的Web应用。其项目地址: https://gitcode.com/gh_mirrors/qd/qdjango&…...
滑动窗口最大值(力扣239)
刚拿到这道题,我们第一反应就是遍历每一个滑动窗口,然后在滑动窗口中遍历找到该窗口的最大值,但是这样的时间复杂度为O(k*n).有没有更简单的方法呢?答案是使用队列。更准确的说是双向队列。下面我将详细讲解一下如何使用双向队列解决这道问题…...
HTTP / 2
序言 在之前的文章中我们介绍过了 HTTP/1.1 协议,现在再来认识一下迭代版本 2。了解比起 1.1 版本,后面的版本改进在哪里,特点在哪里?话不多说,开始吧⭐️! 一、 HTTP / 1.1 存在的问题 很多时候新的版本的…...
Python 脚本-显示给定文件的文件信息
目录 Python 代码实现 Python 代码解释 1.导入必要的模块: 2.函数 get_file_info: 3.函数 print_file_info: 4.主函数 main: 5.程序入口: 使用方法 Python 代码实现 import os import stat import sys import…...
C# 通用缓存类开发:开启高效编程之门
引言 嘿,各位 C# 开发者们!在当今快节奏的软件开发领域,提升应用程序的性能就如同给跑车装上涡轮增压,能让你的项目在激烈的竞争中脱颖而出。而构建一个高效的 C# 通用缓存类,无疑是实现这一目标的强大武器。 想象一…...
Mac安装Homebrew
目录 安装修改homeBrew源常用命令安装卸载软件升级软件相关清理相关 安装 官网 https://brew.sh/不推荐官网安装方式(很慢很慢或者安装失败联网失败) 检测是否安装homebrewbrew -v执行安装命令 苹果电脑 常规安装脚本 (推荐 完全体 几分钟就…...
MySQL面试题2025 每日20道【其四】
1、你们生产环境的 MySQL 中使用了什么事务隔离级别?为什么? 中等 在生产环境中,MySQL数据库的事务隔离级别通常由开发团队或数据库管理员根据应用的需求来设定。MySQL支持四种标准的事务隔离级别: 读未提交(Read Unc…...
maven 微服务项目多 包版本问题
mvn dependency:tree查看jar包直接的关系 找到重复的包!!!! 可以查看包版本问题 [INFO] | - org.jpedal:OpenViewerFX:jar:6.6.14:compile [INFO] | | - org.eclipse.birt.runtime.3_7_1:org.mozilla.javascript:jar:1.7.2:compile [INFO] | | - bouncycastle:bcprov-j…...
skipcrossnets模型详解及代码复现
模型背景 在SkipcrossNets模型提出之前,多模态融合在自动驾驶领域已取得显著进展。然而,传统的两流网络仅在特定层进行融合,需要大量人工尝试来设置,并且随着网络深度增加,模态特征差异增大,容易影响性能。 为解决这些问题,研究人员开发了SkipcrossNets模型,旨在提供…...
【0397】Postgres内核 checkpoint process ⑦ 获取 delaying checkpoint VXIDs(delayChkpt)
1. Top-level transactions 顶级事务(Top-level transactions)通过由 PGPROC 字段 backendId 和 lxid 组成的 VirtualTransactionIDs 来标识。对于已准备的事务,LocalTransactionId 是一个普通的 XID。这些在短期内保证唯一,但在数据库重启或 XID 滚转后会被重新使用;因此…...
Go语言-学习一
简介:Go语言经过多年的快速发展,已经被光广泛应用到各个领域,成为当前最热的计算机语言之一。Go自带许多高级特性及常用工具,使Go一出世就以高并发和高性能为程序员所追捧。 go语言特点 1、静态类型、编译型、开源 2、脚本化&…...
学习记录-统计记录场景下的Redis写请求合并优化实践
学习记录-使用Redis合并写请求来优化性能 1.业务背景 学习进度的统计功能:为了更精确的记录用户上一次播放的进度,采用的方案是:前端每隔15秒就发起一次请求,将播放记录写入数据库。但问题是,提交播放记录的业务太复杂了&#x…...
Java中json的一点理解
一、Java中json字符串与json对象 1、json本质 json是一种数据交换格式。 常说的json格式的字符串 > 发送和接收时都只是一个字符串,它遵循json这种格式。 2、前后端交互传输的json是什么? 前后端交互传输的json都是json字符串 比如:…...
用于牙科的多任务视频增强
Multi-task Video Enhancement for Dental Interventions 2022 miccai Abstract 微型照相机牢牢地固定在牙科手机上,这样牙医就可以持续地监测保守牙科手术的进展情况。但视频辅助牙科干预中的视频增强减轻了低光、噪音、模糊和相机握手等降低视觉舒适度的问题。…...
二、vue智能Ai对话(高仿通义千问)流式进阶版
1、安装依赖、启动 // 安装依赖 npm install // 启动服务 node server.js 2、浏览器运行html 3、流式进阶版视频地址:流式进阶版视频 4、各位如有需要,请下载源码包。...
Python新春烟花
目录 系列文章 写在前面 技术需求 完整代码 下载代码 代码分析 1. 程序初始化与显示设置 2. 烟花类 (Firework) 3. 粒子类 (Particle) 4. 痕迹类 (Trail) 5. 烟花更新与显示 6. 主函数 (fire) 7. 游戏循环 8. 总结 注意事项 写在后面 系列文章 序号直达链接爱…...
《自动驾驶与机器人中的SLAM技术》ch4:基于预积分和图优化的 GINS
前言:预积分图优化的结构 1 预积分的图优化顶点 这里使用 《自动驾驶与机器人中的SLAM技术》ch4:预积分学 中提到的散装的形式来实现预积分的顶点部分,所以每个状态被分为位姿()、速度、陀螺零偏、加计零偏四种顶点&am…...
「2024·我的成长之路」:年终反思与展望
文章目录 1. 前言2.创作历程2.1 摆烂期2.2 转变期3. 上升期 2. 个人收获3.经验分享4. 展望未来 1. 前言 2025年1月16日,2024年博客之星入围公布,很荣幸获得了这次入围的机会。2024年对我个人是里程碑的一年,是意义非凡的一年,是充…...
P8738 [蓝桥杯 2020 国 C] 天干地支
两种方法 #include<bits/stdc.h> using namespace std;int main(){int year;cin>>year;string tg[10] {"geng", "xin", "ren", "gui","jia", "yi", "bing", "ding", "wu&…...
Linux网络 TCP socket
TCP简介 TCP(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它位于OSI模型的第四层,主要为应用层提供数据传输服务。TCP通过三次握手建立连接,确保数据在发送和接收过程中的准确性和顺序…...
IntelliJ IDEA 2023.3 中配置 Spring Boot 项目的热加载
IntelliJ IDEA 2023.3 中配置 Spring Boot 项目的热加载 在 IntelliJ IDEA 2023.3 中配置 Spring Boot 项目的热加载,可以让你在不重启应用的情况下看到代码修改的效果。以下是详细的配置步骤: 添加 spring-boot-devtools 依赖 在 pom.xml 文件中添加 …...
【网络协议】【http】【https】RSA+AES-TLS1.2
【网络协议】【http】【https】RSAAES-TLS1.2 https并不是一个协议 而是在传输层之间添加了SSL/TLS协议 TLS 协议用于应用层协议(如 HTTP)和传输层(如 TCP)之间,增加了一层安全性来解决 HTTP 存在的问题,H…...
Java中如何安全地停止线程?
大家好,我是锋哥。今天分享关于【Java中如何安全地停止线程?】面试题。希望对大家有帮助; Java中如何安全地停止线程? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在Java中,安全地停止线程是一项重要的任务,尤其…...
01.04、回文排序
01.04、[简单] 回文排序 1、题目描述 给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。回文串不一定是字典当中的单词。 2、解题思路 回文串的特点: 一个回文串在…...
[深度学习]多层神经网络
多层神经网络 文章目录 多层神经网络单个神经元人类大脑神经与神经元神经元与矩阵神经元的串联激活函数激活函数位置神经网络的三种表现形式神经网络的参数(可训练的) 深度学习的训练过程全连接网络过拟合和欠拟合 单个神经元 一个神经元实际表示的数据公…...
JavaScript语言的正则表达式
JavaScript语言的正则表达式详解 正则表达式(Regular Expression,简称Regex或RegExp)是一种强大的文本处理工具,可以在字符串中执行模式匹配和替换操作。在JavaScript中,正则表达式是处理字符串时不可或缺的部分&…...
yolo系列模型为什么坚持使用CNN网络?
在深度学习领域,目标检测是一项至关重要的任务,而YOLO(You Only Look Once)系列模型无疑是这一领域的佼佼者。YOLO以其高效、准确的特点,在实时目标检测任务中占据了重要地位。然而,随着Transformer模型在自…...
Kotlin语言的数据结构
Kotlin语言的数据结构导论 Kotlin是一种现代化的编程语言,具有简洁、安全和高效的特点。Kotlin不仅支持面向对象编程,还融入了函数式编程的概念,使得开发者能够以更优雅的方式处理数据。在构建复杂应用时,数据结构的选择及其实现…...
光纤接口、GTX高速收发器基础知识学习、光口眼图测试--FPGA学习笔记28
----素材来源原子哥 一、光纤接口简介 光纤接口是用来连接光纤线缆的物理接口,简称为光口。其原理是利用了光从光密介质进入光疏介质从而发生了全反射。通常有 FC、 SC、 ST、 LC、 D4、 DIN、 MU、 MT 等等各种形式接口。 (1) SC 型光纤接…...
【k8s】k8s部署Argo CD
1、创建 Argo CD 命名空间: 先创建一个专用的命名空间 argocd 用于部署 Argo CD。 kubectl create namespace argocd 2、安装 Argo CD: 使用 kubectl 从 Argo CD 官方 GitHub 仓库安装它。运行以下命令来安装所有的 Argo CD 组件: kubectl a…...
PHP礼品兑换系统小程序
🎁 礼品兑换系统:革新企业礼品管理,专属神器来袭! 💻 一款专为追求高效与个性化的现代企业量身打造的礼品兑换系统,它基于强大的ThinkPHP框架与前沿的Uniapp技术栈深度融合,不仅完美适配礼品卡…...
【SSH端口转发:实现安全的远程端口映射】
SSH端口转发:实现安全的远程端口映射 在网络应用开发和运维过程中,我们经常需要进行端口转发来实现各种网络访问需求。今天我要分享一个使用SSH进行端口转发的实用脚本,并详细讲解其工作原理。 脚本内容 免密 ssh-copy-id -p 20080 rootxx…...
2024年第十五届蓝桥杯青少组国赛(c++)真题—快速分解质因数
快速分解质因数 完整题目和在线测评可点击下方链接前往: 快速分解质因数_C_少儿编程题库学习中心-嗨信奥https://www.hixinao.com/tiku/cpp/show-3781.htmlhttps://www.hixinao.com/tiku/cpp/show-3781.html 若如其他赛事真题可自行前往题库中心查找,题…...
为什么你的 Qt 应用程序会出现 xcb 插件错误
有朋友咨询为什么他们的 Qt 应用程序在统信 UOS ARM 版本下运行,提示如下错误: qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in "" This application failed to start because no Qt platform plugin could be i…...
ANSYS HFSS 中的相控天线阵列仿真方法
概述 相控天线阵列系统广泛使用,从国防雷达应用到商业 5G 应用。设计这些天线阵列涉及复杂的数学运算,需要全波仿真。Ansys HFSS 全场 3D 电磁仿真软件可以在合理的时间内以较低的计算成本仿真复杂的相控阵天线系统,同时考虑复杂激励、环境&…...
【记录】Jenkins版本及JDK关系介绍的官网地址
Redhat Jenkins Packages...
66,【6】buuctf web [HarekazeCTF2019]Avatar Uploader 1
进入靶场 习惯性输入admin 还想用桌面上的123.png 发现不行 看看给的源码 <?php // 关闭错误报告,可能会隐藏一些错误信息,在开发阶段可考虑开启(例如 error_reporting(E_ALL)) error_reporting(0); // 引入配置文件&#x…...