WSL2部署训练YOLOv11之环境配置(2025年4月19日)

一、前言

今天尝试在WSL2环境中部署训练YOLOv11,顺便把环境配置好。

二、安装CUDA

由于WSL2中并不能直接使用宿主机的显卡,所以需要安装CUDA on WSL以安装NVIDIA驱动到WSL中。注意必须是WSL2,WSL2对GPU的支持使这些应用程序能够受益于GPU加速计算,WSL1不支持。

  1. 打开cmd或pwsh更新一下WSL内核:

    wsl.exe --update
    
  2. 确保宿主机已安装最新的NVIDIA GPU驱动程序。访问NVIDIA驱动下载页面,选择适合的显卡型号和操作系统(Windows),下载并安装最新驱动。

  3. 在WSL2中安装CUDA Toolkit:

    • 启动WSL2终端(例如Ubuntu发行版)。

    • 下载适用于WSL-Ubuntu的CUDA Toolkit。参考NVIDIA官方文档,运行以下命令:

      wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
      sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
      wget https://developer.download.nvidia.com/compute/cuda/12.3.0/local_installers/cuda-repo-wsl-ubuntu-12-3-local_12.3.0-1_amd64.deb
      sudo dpkg -i cuda-repo-wsl-ubuntu-12-3-local_12.3.0-1_amd64.deb
      sudo cp /var/cuda-repo-wsl-ubuntu-12-3-local/cuda-*-keyring.gpg /usr/share/keyrings/
      sudo apt-get update
      sudo apt-get -y install cuda-toolkit-12-3
      
  4. 验证CUDA安装:

    • 安装完成后,运行以下命令检查CUDA版本:

      nvcc --version
      
    • 确保返回的版本信息与安装的CUDA版本一致(例如12.3)。

三、安装Python环境

YOLOv11依赖Python环境,推荐使用Miniconda来管理Python环境。

  1. 下载并安装Miniconda:

    wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
    bash Miniconda3-latest-Linux-x86_64.sh
    

    按照提示完成安装,初始化conda环境。

  2. 创建并激活新的conda环境:

    conda create -n yolov11 python=3.10
    conda activate yolov11
    
  3. 安装必要的Python依赖:

    pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu123
    pip install ultralytics
    

四、安装YOLOv11

  1. 克隆YOLOv11的官方仓库(以Ultralytics YOLO为例):

    git clone https://github.com/ultralytics/ultralytics.git
    cd ultralytics
    pip install -e .
    
  2. 验证YOLOv11安装:

    yolo version
    

    如果返回版本号(如11.x.x),说明安装成功。

五、配置训练环境

  1. 准备数据集:

    • 将数据集放置在指定目录(例如datasets/),确保数据集格式符合YOLOv11的要求(通常为YOLO格式:图片+标签文件)。

    • 创建data.yaml配置文件,指定训练、验证集路径和类别信息。例如:

      train: ./datasets/train/images
      val: ./datasets/val/images
      nc: 80
      names: ['class1', 'class2', ..., 'class80']
      
  2. 测试GPU可用性:

    python -c "import torch; print(torch.cuda.is_available())"
    

    如果返回True,说明GPU配置正确。

六、开始训练

  1. 运行训练命令:

    yolo train model=yolov11n.pt data=data.yaml epochs=100 imgsz=640 device=0
    
    • model:选择预训练模型(如yolov11n.pt)。
    • data:指定数据集配置文件。
    • epochs:训练轮数。
    • imgsz:输入图片尺寸。
    • device:指定GPU设备(0表示第一个GPU)。
  2. 训练完成后,模型权重将保存在runs/train/目录下。

七、常见问题

  1. CUDA版本不匹配:确保宿主机驱动、CUDA Toolkit和PyTorch的CUDA版本一致。
  2. GPU不可用:检查WSL2是否正确识别GPU,运行nvidia-smi确认。
  3. 内存不足:减少batch_size或使用更小的模型(如yolov11n)。

八、总结

通过以上步骤,我们在WSL2中成功配置了YOLOv11的训练环境。WSL2结合CUDA支持为Windows用户提供了一个高效的深度学习开发平台。后续可以根据需求调整数据集或超参数,进一步优化模型性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值