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

【conda配置深度学习环境】

好的!我们从头开始配置一个基于Conda的虚拟环境,覆盖深度学习(如PyTorch)和传统机器学习(如XGBoost),并适配你的显卡(假设为NVIDIA,若为AMD请告知)。以下是完整步骤:

第一步:删除旧的venv环境(可选)

如果确定不再使用之前的lidar_env环境,直接删除其文件夹即可(通常在C:\Users\dengzhen\lidar_env),无需命令行操作。

第二步:安装Miniconda(推荐)

Conda比pip更适合管理复杂依赖(如CUDA、PyTorch版本),且兼容Python多版本。
下载地址:Miniconda3 Windows 64位
安装时勾选

  • “Add Anaconda to my PATH environment variable”(方便命令行调用)。
  • 选择“Just Me”或“All Users”(建议“Just Me”)。
遇到这个界面怎么选?

请添加图片描述

以下是 Miniconda 安装界面中各选项的含义及推荐选择,帮你合理配置:

选项含义与选择建议

  1. Create shortcuts (supported packages only)
    • 含义:创建快捷方式(仅针对受支持的软件包 ),会在开始菜单为 Miniconda 相关可执行程序(如 Miniconda Prompt 等 )创建快捷方式,方便快速启动。
    • 建议:勾选,日常使用通过快捷方式启动 Miniconda 环境很便捷。
  2. Add Miniconda3 to my PATH environment variable
    • 含义:把 Miniconda 的安装路径添加到系统环境变量 PATH 中,这样在任意命令行(如系统自带的 cmd、PowerShell )里,无需切换到 Miniconda 安装目录,就能直接执行 condapython 等命令。但官方提示“不推荐”,因为可能和系统中其他 Python 环境(如已安装的全局 Python )产生冲突,导致命令调用混乱。
    • 建议:如果你想在任意命令行自由使用 Miniconda 环境的 condapython 等命令,且能自己注意环境冲突问题(比如清楚何时该用 Miniconda 的 Python ,何时用系统的 ),可以勾选;若担心冲突,追求稳妥,不勾选,后续通过开始菜单里 Miniconda 专属的命令行(Miniconda Prompt )去操作环境。
  3. Register Miniconda3 as my default Python 3.13
    • 含义:将 Miniconda 里的 Python 3.13 注册为系统默认 Python ,这样其他依赖 Python 的程序(像 VSCode、PyCharm 等 IDE )会自动把它识别为首选 Python 环境。
    • 建议:如果你希望系统里所有依赖 Python 的软件都优先使用 Miniconda 环境的 Python ,可勾选;但如果系统原本有其他 Python 环境(比如之前安装的全局 Python ,且有程序依赖它 ),为避免冲突,建议不勾选,后续在具体 IDE 里手动指定 Miniconda 环境的 Python 解释器。
  4. Clear the package cache upon completion
    • 含义:安装完成后清理包缓存,Miniconda 安装过程中会下载一些安装包,清理缓存能释放磁盘空间,且不影响已安装的软件功能。
    • 建议:勾选,能节省磁盘空间,后续若需要重新安装包,Miniconda 会再下载,不影响使用。

整体推荐选择(兼顾便捷与低冲突风险 )

  • 勾选 Create shortcuts (supported packages only)Clear the package cache upon completion
  • 若想在任意命令行灵活操作 Miniconda 环境,且能自主处理可能的冲突,勾选 Add Miniconda3 to my PATH environment variable;否则不勾选,后续用 Miniconda Prompt 操作。
  • 若系统无其他 Python 环境依赖,或想让其他程序默认用 Miniconda 的 Python ,勾选 Register Miniconda3 as my default Python 3.13;反之不勾选,后续在 IDE 里手动指定解释器。

比如,为了后续在任意命令行方便使用,且自己能把控环境冲突,可这样选:
勾选 Create shortcutsAdd Miniconda3 to my PATH(需注意冲突 )、Clear the package cache ,不勾选 Register as default Python(假设系统有其他 Python 环境或不想影响全局默认 ),然后点击 Install 开始安装 。

第三步:创建Conda虚拟环境

打开命令提示符(CMD),执行以下命令:

# 创建名为dl_env的环境,指定Python版本(推荐3.10或3.12,避免3.13的兼容性问题)
conda create -n dl_env python=3.12 -y# 激活环境
conda activate dl_env

此时命令行前缀应为(dl_env),表示已进入虚拟环境。

环境创建成功后 :在这里插入图片描述
在这里插入图片描述
验证安装conda
在这里插入图片描述
验证显卡驱动
运行 nvidia-smi(Windows 需在 Miniconda Prompt 或 PowerShell 中执行)
在这里插入图片描述
确定了CUDA版本!12.7
所以在虚拟环境中执行conda install -c nvidia cuda-toolkit=12.7 -y 安装cuda工具包!
在这里插入图片描述

第四步:安装深度学习框架(以PyTorch为例)

检测显卡类型
  • NVIDIA显卡:安装带CUDA的PyTorch(性能优先)。
  • AMD显卡:安装CPU版本或尝试ROCm(需额外配置,此处以NVIDIA为例)。
NVIDIA用户命令
# 查看PyTorch官方安装命令:https://pytorch.org/get-started/locally/
# 示例(2025年假设CUDA最新为12.3,根据实际情况调整)
conda install pytorch torchvision torchaudio pytorch-cuda=12.3 -c pytorch -c nvidia -y

前面查看了CUDA版本是12.7 所以虚拟环境中执行
conda install pytorch torchvision torchaudio pytorch-cuda=12.7 -c pytorch -c nvidia -y

在这里插入图片描述

验证安装
# 进入Python交互模式
python
import torch
print(torch.cuda.is_available())  # 输出True表示CUDA可用

这里出现了大问题:在这里插入图片描述
这是由于 Conda 源中找不到 pytorch-cuda=12.7 包导致的安装失败。这种情况通常发生在 PyTorch 官方尚未同步最新 CUDA 版本支持时。以下是解决方案:

先退出python
exit() 或者ctrl+z
在这里插入图片描述
尝试用pip安装!
在这里插入图片描述


出现了一堆冲突问题在这里插入图片描述
把环境删了 重头开始吧!
没了在这里插入图片描述
重头开始 安装低一点版本的
在这里插入图片描述
可以从头开始创建一个全新的深度学习环境,确保所有组件版本匹配你的显卡(RTX 4060,驱动支持 CUDA 12.7)和系统配置。以下是分步骤的详细操作指南:
一、创建新的 Conda 环境(Python 3.12 + CUDA 12.1)

  1. 创建环境(指定 Python 版本)
    bash
    conda create -n dl_env python=3.12 -y

说明:
dl_env 为环境名称(可自定义)。
python=3.12 确保与 PyTorch 稳定兼容(PyTorch 2.1.0+ 支持 3.8-3.12)。
在这里插入图片描述
激活
在这里插入图片描述
好像安装成功了?

在这里插入图片描述
验证一下:
在这里插入图片描述
好的 终于 然后就是下载pycharm在这里插入图片描述

相关文章:

【conda配置深度学习环境】

好的!我们从头开始配置一个基于Conda的虚拟环境,覆盖深度学习(如PyTorch)和传统机器学习(如XGBoost),并适配你的显卡(假设为NVIDIA,若为AMD请告知)。以下是完…...

力扣4.寻找两个正序数组的中位数

文章目录 题目介绍题解 题目介绍 题解 题解链接:题解 核心思路:通过二分查找的确定分割点使左右两部分元素数量相等。 class Solution {public double findMedianSortedArrays(int[] nums1, int[] nums2) {int n1 nums1.length;int n2 nums2.length…...

【相机基础知识与物体检测】更新中

参考: 黑马机器人 | 相机标定&物体检测https://robot.czxy.com/docs/camera/ 01-相机基础 相机基础概述 相机是机器视觉的基础,相机直接产生了相机数据。所有视觉算法都是作用在相机数据上的。相机数据的好坏,或者对相机数据的理解方式…...

【前端】性能优化和分类

本页知识点参考:https://zhuanlan.zhihu.com/p/514222781 1. 加载性能优化 1.1 网站性能优化 content方法: 1)减少HTTP请求:合并文件,CSS精灵,inline Image 2)减少DNS查询:DNS缓存&…...

PPO和GRPO算法

verl 是现在非常火的 rl 框架,而且已经支持了多个 rl 算法(ppo、grpo 等等)。 过去对 rl 的理解很粗浅(只知道有好多个角色,有的更新权重,有的不更新),也曾硬着头皮看了一些论文和知…...

ceph 对象存储用户限额满导致无法上传文件

查看日志 kl logs -f rook-ceph-rgw-my-store-a-5cc4c4d5b5-26n6j|grep -i error|head -1Defaulted container "rgw" out of: rgw, log-collector, chown-container-data-dir (init) debug 2025-05-30T19:44:11.573+0000 7fa7b7a6d700...

rk3588 上运行smolvlm-realtime-webcam,将视频转为文字描述

smolvlm-realtime-webcam 是一个开源项目,结合了轻量级多模态模型 SmolVLM 和本地推理引擎 llama.cpp,能够在本地实时处理摄像头视频流,生成自然语言描述, 开源项目地址 https://github.com/ngxson/smolvlm-realtime-webcamhttps…...

某航参数逆向及设备指纹分析

文章目录 1. 写在前面2. 接口分析3. 加密分析4. 算法还原5. 设备指纹风控分析与绕过【🏠作者主页】:吴秋霖 【💼作者介绍】:擅长爬虫与JS加密逆向分析!Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致力于Python与爬虫领域研究…...

SQL思路解析:窗口滑动的应用

目录 🎯 问题目标 第一步:从数据中我们能直接得到什么? 第二步:我们想要的“7天窗口”长什么样? 第三步:SQL 怎么表达“某一天的前六天”? 🔍JOIN 比窗口函数更灵活 第四步&am…...

Rust 学习笔记:Box<T>

Rust 学习笔记&#xff1a;Box Rust 学习笔记&#xff1a;Box<T\>Box\<T> 简介使用 Box\<T\> 在堆上存储数据启用带有 box 的递归类型关于 cons 列表的介绍计算非递归类型的大小使用 Box\<T\> 获取大小已知的递归类型 Rust 学习笔记&#xff1a;Box<…...

C# 从 ConcurrentDictionary 中取出并移除第一个元素

C# 从 ConcurrentDictionary 中取出并移除第一个元素 要从 ConcurrentDictionary<byte, int> 中取出并移除第一个元素&#xff0c;需要结合 遍历 和 原子移除操作。由于 ConcurrentDictionary 是无序集合&#xff0c;"第一个元素" 通常是指最早添加的元素&…...

操作系统学习(十三)——Linux

一、Linux Linux 是一种类 Unix 的自由开源操作系统内核&#xff0c;由芬兰人 Linus Torvalds 于 1991 年首次发布。如今它广泛应用于服务器、桌面、嵌入式设备、移动设备&#xff08;如 Android&#xff09;等领域。 设计思想&#xff1a; 原则描述模块化与可移植性Linux 内…...

NLP学习路线图(二十二): 循环神经网络(RNN)

在自然语言处理&#xff08;NLP&#xff09;的广阔天地中&#xff0c;序列数据是绝对的核心——无论是流淌的文本、连续的语音还是跳跃的时间序列&#xff0c;都蕴含着前后紧密关联的信息。传统神经网络如同面对一幅打散的拼图&#xff0c;无法理解词语间的顺序关系&#xff0c…...

每日一C(1)C语言的内存分布

目录 代码区 常量区 全局/静态区 初始化数据段&#xff08;.data&#xff09; 未初始化数据段&#xff08;.bss&#xff09; 堆区 栈区 总结 今天我们学习的是C语言的内存分布&#xff0c;以及这些分区所存储的内容和其特点。今天的思维导图如下。 C语言作为一款直接处…...

Photoshop使用钢笔绘制图形

1、绘制脸部路径 选择钢笔工具&#xff0c;再选择“路径”。 基于两个点绘制一个弯曲的曲线 使用Alt键移动单个点&#xff0c;该点决定了后续的曲线方向 继续绘制第3个点 最后一个点首尾是同一个点&#xff0c;使用钢笔保证是闭合回路。 以同样的方式绘制2个眼睛外框。 使用椭…...

应用层协议:HTTP

目录 HTTP&#xff1a;超文本传输协议 1.1 HTTP报文 1.1.1 请求报文 1.1.2 响应报文 1.2 HTTP请求过程和原理 1.2.1 请求过程 1、域名&#xff08;DNS&#xff09;解析 2、建立TCP连接&#xff08;三次握手&#xff09; 3、发送HTTP请求 4、服务器处理请求 5、返回H…...

复习——C++

1、scanf和scanf_s区别 2、取地址&#xff0c;输出 char ba; char* p&b; cout<<*p; cout<<p; p(char*)"abc"; cout<<*p; cout<<p; cout<<(void*)p; 取地址&#xff0c;把b的地址给p 输出*p&#xff0c;是输出p的空间内的值…...

SPI通信协议(软件SPI读取W25Q64)

SPI通信协议 文章目录 SPI通信协议1.SPI通信2.SPI硬件和软件规定2.1SPI硬件电路2.2移位示意图2.3SPI基本时序单元2.3.1起始和终止条件2.3.2交换一个字节&#xff08;模式1&#xff09; 2.4SPI波形分析&#xff08;辅助理解&#xff09;2.4.1发送指令2.4.2指定地址写2.4.3指定地…...

PostgreSQL-基于PgSQL17和11版本导出所有的超表建表语句

最新版本更新 https://code.jiangjiesheng.cn/article/368?fromcsdn 推荐 《高并发 & 微服务 & 性能调优实战案例100讲 源码下载》 1. 基于pgsql 17.4 研究 查询psql版本&#xff1a;SELECT version(); 查看已知1条建表语句和db中数据关系 SELECT create_hypert…...

JavaWeb:前后端分离开发-部门管理

今日内容 前后端分离开发 准备工作 页面布局 整体布局-头部布局 Container 布局容器 左侧布局 资料\04. 基础文件\layout/index.vue <script setup lang"ts"></script><template><div class"common-layout"><el-containe…...

ArcGIS计算多个栅格数据的平均栅格

3种方法计算多个栅格数据的平均栅格 1->使用“ 栅格计算器”工具 原理就是把多幅影像数据相加&#xff0c;然后除以个数&#xff0c;就能得到平均栅格。 2-> 使用“像元统计数据”工具&#xff0c;如果是ArcGIS pro&#xff0c;则是“像元统计”工具。使用这个工具可以…...

字节开源FlowGram:AI时代可视化工作流新利器

字节终于开源“扣子”同款引擎了&#xff01;FlowGram&#xff1a;AI 时代的可视化工作流利器 字节FlowGram创新性地融合图神经网络与多模态交互技术&#xff0c;构建了支持动态拓扑重构的可视化流程引擎。该系统通过引入 f ( G ) ( V ′ &#xff0c; E ′ ) f(\mathcal{G})…...

如何选择合适的分库分表策略

选择合适的分库分表策略需要综合考虑业务特点、数据规模、访问模式、技术成本等多方面因素。以下是系统性的选择思路和关键决策点&#xff1a; 一、核心决策因素 业务需求分析 数据规模&#xff1a;当前数据量&#xff08;如亿级&#xff09;、增长速度&#xff08;如每日新增百…...

(LeetCode 每日一题)3403. 从盒子中找出字典序最大的字符串 I (贪心+枚举)

题目&#xff1a;3403. 从盒子中找出字典序最大的字符串 I 题目&#xff1a;贪心枚举字符串&#xff0c;时间复杂度0(n)。 最优解的长度一定是在[1,n-numFriends]之间。 字符串在前缀都相同的情况下&#xff0c;长度越长越大。 C版本&#xff1a; class Solution { public:st…...

GPIO的内部结构与功能解析

一、GPIO总体结构 总体构成 1.APB2(外设总线) APB2总线是微控制器内部连接CPU与外设&#xff08;如GPIO&#xff09;的总线&#xff0c;负责CPU对GPIO寄存器的读写访问&#xff0c;支持低速外设通信 2.寄存器 控制GPIO的配置&#xff08;输入/输出模式、上拉/下拉等&#x…...

Python训练打卡Day42

Grad-CAM与Hook函数 知识点回顾 回调函数lambda函数hook函数的模块钩子和张量钩子Grad-CAM的示例 在深度学习中&#xff0c;我们经常需要查看或修改模型中间层的输出或梯度。然而&#xff0c;标准的前向传播和反向传播过程通常是一个黑盒&#xff0c;我们很难直接访问中间层的信…...

深度学习中的负采样

深度学习中的负采样 负采样&#xff08;Negative Sampling&#xff09; 是一种在训练大型分类或概率模型&#xff08;尤其是在输出类别很多时&#xff09;中&#xff0c;用来加速训练、降低计算量的方法。 它常用于&#xff1a; 词向量训练&#xff08;如 Word2Vec&#xff…...

php7+mysql5.6单用户中医处方管理系统V1.0

php7mysql5.6中医处方管理系统说明文档 一、系统简介 ----------- 本系统是一款专为中医诊所设计的处方管理系统&#xff0c;基于PHPMySQL开发&#xff0c;不依赖第三方框架&#xff0c;采用原生HTML5CSS3AJAX技术&#xff0c;适配手机和电脑访问。 系统支持药品管理、处方开…...

Java 大视界 — Java 大数据在智能安防视频监控中的异常事件快速响应与处理机制

/*Java 大数据在智能安防视频监控中的异常事件快速响应与处理机制&#xff08;简化示例&#xff09;*/// 1. Event.java - 异常事件模型 package com.security.model;public class Event {private String id;private String type; // 如: "入侵", "火警"pr…...

智慧物流园区整体解决方案

该智慧物流园区整体解决方案借助云计算、物联网、ICT 等技术,从咨询规划阶段介入,整合供应链上下游资源,实现物流自动化、信息化与智能化。方案涵盖智慧仓储管理(如自动化立体仓储系统、温湿度监控)、智慧物流(运输管理系统 TMS、GPS 监控)、智慧车辆管理(定位、调度、…...