ubuntu系统下mamba-yolo模型的深度学习环境搭建

        本文将介绍如何在ubuntu系统下配置目标检测模型mamba-yolo的深度学习环境

1. 环境要求

  • Python >= 3.9 (本文使用python-3.11)

  • CUDA >= 11.6 (本文使用CUDA-11.8)

  • Pytorch >= 1.12.1 (本文使用torch-2.4.0)

  • Linux(本文使用Ubuntu-22.0.4)

    • 请先确定系统的GLIBC版本大于等于2.32(本文使用2.35), 否则会导致python无法正常import动态链接库(python >= 3.7 import动态链接库需要 GLIBC >= 2.32), 如需查看GLIBC版本可使用以下命令查看:

    ldd --version
    • gcc,具体版本要求未知,本文使用11.4.0 ,可用以下命令查看gcc版本

    gcc --version

2. CudaToolKit安装

2.1 cuda安装

        先打开英伟达CudaToolKit官网:https://developer.nvidia.com/cuda-toolkit-archive ,然后选择cuda11.8(也可以按照自己的需求来选择其他版本,但是要求大于11.6)

        之后按照自己的系统情况进行选择:

        如果当前账户有root权限的话,Installer Type就正常选第一个就好,根据下方给出的提示进行安装即可

         如果没有root权限的话,可以使用第三项runfile的方式进行安装,具体可以参考博客:linux系统非root用户安装cuda和cudnn,不同版本cuda切换_安装多版本cudnn-CSDN博客

2.2 环境变量修改

        打开bash配置文件: 使用文本编辑器打开用户的bash配置文件。对于大多数用户,这个文件通常是~/.bashrc。如果您使用的是root用户,那么配置文件可能是~/.bashrc或者/root/.bashrc。在终端中输入以下命令:

nano ~/.bashrc  # 如果想修改所有用户可以在前面加上sudo

        在打开的.bashrc文件中,使用键盘将光标移动到文件的末尾,添加以下路径在文件最后(注意,具体路径请修改为自己安装路径,代码示例为默认安装路径):

export PATH=/usr/local/cuda-11.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-11.8

        保存并关闭文件: 在nano编辑器中,按下Ctrl + O来保存文件,然后按下Enter确认文件名。接着,按下Ctrl + X退出编辑器,输入y一次,然后回车即可

        使更改生效: 为了让刚才的更改立即生效,需要重新加载.bashrc文件。在终端中执行以下命令:

source ~/.bashrc

        接下来就可以输入:

nvcc -V

        查看是否安装成功即可,正常应输出如下信息:

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:33:58_PDT_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0

3. cuDNN安装

        先打开官网:https://developer.nvidia.com/rdp/cudnn-archive ,然后选择对应版本进行下载(本案例选择v8.9.7-11.x),这里下载需要注册NVIDIA账号

        然后将下载好的压缩包传到linux服务器中,并在终端cd到对应上传目录,然后进行解压:

tar -xvf cudnn**    # **省略部分按tab自动补全

        解压完成后cd进解压文件夹,然后运行以下代码(如果没有root权限,cuda安装目录应当在自己账户目录下,此时以下命令无需sudo命令):

sudo cp -r ./lib/* /usr/local/cuda-11.8(根据你的cuda安装目录进行修改)/lib64/
sudo cp -r ./include/* /usr/local/cuda-11.8(根据你的cuda安装目录进行修改)/include/

        接下来修改权限:

sudo chmod a+r /usr/local/cuda-11.8(根据你的cuda安装目录进行修改)/include/cudnn*
sudo chmod a+r /usr/local/cuda-11.8(根据你的cuda安装目录进行修改)/lib64/libcudnn*

        最后检查是否安装成功:

cat /usr/local/cuda-11.8(根据你的cuda安装目录进行修改)/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

        正常应输出以下信息:

#define CUDNN_MAJOR 8
#define CUDNN_MINOR 9
#define CUDNN_PATCHLEVEL 7
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)/* cannot use constexpr here since this is a C-only file */

        至此,cuda安装完成

4. Anaconda安装

        这个网上教程一大堆,这里我就只简单说一下。 首先下载安装程序,方法有很多,下面提供两种方法:

  • 前往Anaconda官网(Download Anaconda Distribution | Anaconda )选择linux版本,直接下载

  • 直接使用wget下载:

wget https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh

        之后cd到你的下载目录,直接执行即可:

sh Anaconda3-2024.02-Linux-x86_64.sh

        一直按enter,直到出现选择yes或者no,输入yes,接下来按enter即可

Please answer 'yes' or 'no':'
>>> yesAnaconda3 will now be installed into this location:
/root/anaconda3- Press ENTER to confirm the location- Press CTRL-C to abort the installation- Or specify a different location below

这里直接按enter继续

You can undo this by running `conda init --reverse $SHELL`? [yes|no]
[no] >>>

        安装完成

Thank you for installing Anaconda3!

5. Conda环境创建和pytorch环境配置

5.1 环境创建        

先新建一个conda虚拟环境:

conda create --name mamba python=3.11
或者
conda create -n mamba python=3.11

        激活环境:

conda activate mamba

        然后安装pytorch(这是使用conda下载,如需pip下载【conda下载最后得到的包文件名为pytorch,pip是torch】或者安装其他版本,具体命令可以前往Pytorch官网 PyTorch ):

conda install pytorch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0  pytorch-cuda=11.8 -c pytorch -c nvidia

5.1 pytorch构建工具配置修改

        先查看mamba-env环境路径

conda env list

        然后进入具体环境路径后,打开📁 lib/📁 python3.11/📁 site-package📁 torch(conda下载为pytorch,pip下载为torch)/📁 utils/cpp_extension.py

        在CUDA_GCC_VERSIONS和MINIMUM_CLANG_VERSION中添加11.8的版本信息

CUDA_GCC_VERSIONS: VersionMap = {'11.0': (MINIMUM_GCC_VERSION, (10, 0)),'11.1': (MINIMUM_GCC_VERSION, (11, 0)),'11.2': (MINIMUM_GCC_VERSION, (11, 0)),'11.3': (MINIMUM_GCC_VERSION, (11, 0)),'11.4': ((6, 0, 0), (12, 0)),'11.5': ((6, 0, 0), (12, 0)),'11.6': ((6, 0, 0), (12, 0)),'11.7': ((6, 0, 0), (12, 0)),'11.8': ((6, 0, 0), (12, 0)),  # 添加这一行
}MINIMUM_CLANG_VERSION = (3, 3, 0)
CUDA_CLANG_VERSIONS: VersionMap = {'11.1': (MINIMUM_CLANG_VERSION, (11, 0)),'11.2': (MINIMUM_CLANG_VERSION, (12, 0)),'11.3': (MINIMUM_CLANG_VERSION, (12, 0)),'11.4': (MINIMUM_CLANG_VERSION, (13, 0)),'11.5': (MINIMUM_CLANG_VERSION, (13, 0)),'11.6': (MINIMUM_CLANG_VERSION, (14, 0)),'11.7': (MINIMUM_CLANG_VERSION, (14, 0)),'11.8': (MINIMUM_CLANG_VERSION, (14, 0)),  # 添加这一行
}

        安装packaging包(setup需要):

conda install packaging

 

6.Mamba-YOLO安装

       下载mamba-yolo源码到自己指定的路径,解压缩进入文件夹,在激活的mamba环境中依次输入下面的命令:

pip install seaborn thop timm einops
cd selective_scan
pip install . 
cd ..
pip install -v -e .

        至此,环境配置完成,设置源码中的mamba-yolo.py等脚本,运行mamba-yolo.py即可开始训练

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1548082.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【4.6】图搜索算法-DFS和BFS解合并二叉树

一、题目 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是 如果两个节点重叠,那么将他们的 值相加作为节点合并后的新值,否则不为 NUL L…

计算机视觉实战项目4(图像分类+目标检测+目标跟踪+姿态识别+车道线识别+车牌识别+无人机检测+A*路径规划+单目测距与测速+行人车辆计数等)

往期热门项目回顾: 计算机视觉项目大集合 改进的yolo目标检测-测距测速 路径规划算法 图像去雨去雾目标检测测距项目 交通标志识别项目 yolo系列-重磅yolov9界面-最新的yolo 姿态识别-3d姿态识别 深度学习小白学习路线 AI健身教练-引体向上-俯卧撑计数…

Vmware VC登录报错:Vmware报错 HTTP状态 500 - 内部服务器错误

问题现象: 登录Vmware VC系统报错:Vmware报错 HTTP状态 500 - 内部服务器错误、 然后登录管理服务(访问端口:5480)重启一下异常服务,结果提示证书过期。 初步判断VC SSL证书到期 判定方法: 1…

从源码到上线:轻松搭建您的地方门户分类信息平台 带完整的安装代码包以及搭建部署教程

系统概述 地方门户分类信息平台逐渐成为居民获取本地资讯、生活服务、商家信息、二手交易等多元化信息的重要渠道。然而,传统的信息平台搭建往往需要较高的技术门槛和较长的开发周期,这对于许多中小企业和个人开发者而言无疑是一大挑战。因此&#xff0…

ab压测工具进行流量测试

可以使用httpd服务携带的httpd-tools工具中的ab小的压测工具进行流量测试,服务端IP为192.168.6.1,并安装httpd服务,测试端安装httpd-tools工具。 1、服务端上安装httpd服务 [rootlocalhost ~]# yum install httpd -y [rootlocalhost ~]# s…

CKKS同态加密通用函数近似方法和openFHE实现

摘要 同态加密可以直接在密文上进行运算,尤其是CKKS,可以直接在实数的密文上进行运算。服务器可以利用强大的计算能力,在不泄露用户隐私的情况下,为用户提供便捷的外包运算服务。然而,CKKS只能进行算术运算&#xff0…

Word:表格公式计算

一、求和公式 以下演示是在windows操作系统环境,office软件进行操作的 SUM(LEFT) 全部步骤图如下: 步骤一 光标置于单元格,依次单击【表格工具-布局】→【数据】→【公式】 步骤二 在【公式】一栏中,默认的是“SUM(LEFT)”求和…

Linux——k8s、deployment、pod

声明式配置文件:要求集群中的某一个资源,处于指定的状态。集群中都有哪些可以管理的资源?控制器: 用来控制pod数量、运行参数deployment 管理灵活,而pod的创建、删除、运行、更新等均无需直接操作pod,只需…

重磅信息!灰豚数字人发布首个为直播而生的AI语音大模型

AI社消息,近日灰豚数字人发布首个为直播而生的AI语音大模型。该声音大模型在我国获得多个之最。 灰豚语音大模型 与市面上所有声音机械化语音大模型不同的是,灰豚语音大模型的声音媲美真人。该大模型有语种、有内容、有韵律、有音色、有情绪、观众听众无…

windows通过文件系统访问ftp传输中文乱码

windows通过文件系统访问ftp传输中文乱码 问题原因:windows默认的编码格式使ftp发送文档时不支持中文,导致发送出去的文档是乱码文件,此问题是客户端问题,非服务端解析问题。 1、问题 windows通过文件系统访问ftp服务器&#x…

华为 HCIP-Datacom H12-821 题库 (28)

🐣博客最下方微信公众号回复题库,领取题库和教学资源 🐤诚挚欢迎IT交流有兴趣的公众号回复交流群 🦘公众号会持续更新网络小知识😼 1.使用 NAT 技术,只可以对数据报文中的网络层信息(IP 地址&#xff09…

2024百度云智大会:众数信科携寻知AI亮相,荣获“大模型先锋伙伴”奖

9月25日,百度云智大会在北京中关村国际创新中心顺利举行。百度智能云携手众多伙伴围绕算力、模型、应用三个话题,共同探讨如何在新一轮技术变革中更好抢抓机遇、激发产业活力、实现智能跃升。 众数信科作为百度智能云的重要合作伙伴受邀出席本次大会&…

入选ECCV 2024!覆盖5.4w+图像,MIT提出医学图像分割通用模型ScribblePrompt,性能优于SAM

外行看热闹,内行看门道,这句话在医学影像领域可谓是绝对真理。不仅如此,即便身为内行人,要想在复杂的 X 光片、CT 光片或 MRI 等医学影像上准确看出些「门道」来,也并非易事。而医学图像分割则是通过将复杂的医学图像中…

学习记录:js算法(四十七):相同的树

文章目录 相同的树我的思路网上思路队列序列化方法 总结 相同的树 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 图一: 图二&…

基于SSM的“在线汽车交易系统”的设计与实现(源码+数据库+文档+开题报告)

基于SSM的“在线汽车交易系统”的设计与实现(源码数据库文档开题报告) 开发语言:Java 数据库:MySQL 技术:SSM 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统总体设计图 首页 新闻信息 用户注册 后台登录界面…

Llama 3.2:轻量级设计与多模态能力

前沿科技速递🚀 9月26日Meta 推出了 Llama 3.2,这是一个前沿的多模态大语言模型系列。该系列包括轻量级文本模型(1B 和 3B)以及视觉模型(11B 和 90B),专为在边缘和移动设备上的高效应用而设计。…

学习之什么是生成器

什么是生成器(Generator) 1、是一种数据类型能源源不断地生成数据 2、"惰性"特点:一次生成一个值,而不是生成一个序列 3、生成器一定是迭代器比迭代器更简洁使用生成器表达式创建生成器 from typing import Generator, Iterator,…

OCR识别系统 YOLOv8 +Paddle 方案落地

YOLOv8 PaddleOCR 技术方案落地 Yolov8相关文档Step 1 证件模型的训练Step 2 Yolov8进行图片推理Step 3 PaddleOCR进行识别Step 4 整合Yolov8 PaddleOCR 进行OCR Yolov8相关文档 《yolov8 官方网站》 《Yolov8 保姆级别安装》 Ultralytics YOLOv8 是一款尖端的、最先进的 (S…

深入探索与实战:高效利用苏宁商品详情API实现精准数据抓取与解析技术

在电商平台的开发中,获取商品详情是构建用户购物体验的重要一环。苏宁作为国内领先的电商平台,提供了丰富的商品信息和API接口供开发者使用。本文将介绍如何通过苏宁的商品详情接口获取特定商品的详细信息,并给出Python代码示例。 点击获取ke…

DreamBench++:由清华大学和西安交通大学等联合创建:一种人机交互的个性化图像生成基准测试

2024-07-10,由清华大学和西安交通大学等机构联合创建的DreamBench,这个任务目的是通过使用先进的多模态GPT模型来自动化评估,实现与人类评估一致的结果,从而提高个性化图像生成的可靠性和准确性。 一、引言: 个性化图…