抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

这篇教程是为我们课程项目准备的,旨在帮助每一位同学,即使你完全没有编程或AI基础,也能顺利完成 YOLOv8 模型的训练。我们会提供两种方法,请根据自己的情况选择最适合你的一种。

  • 方法一:Google Colab (强烈推荐!400张图片训练约9分钟)

    • 优点:完全免费,使用谷歌提供的强大GPU,不需要配置自己电脑的环境,只需要一个谷歌账号。
    • 缺点:有免费使用时长限制,可能会中途断开
  • 方法二:本地计算机训练

    • 优点:没有时间限制,训练过程更稳定。
    • 缺点对电脑配置要求极高! 必须有 NVIDIA 显卡,并且需要非常繁琐的环境配置,新手极易失败。

建议:除非你对自己的电脑和环境配置非常有信心,否则请务必选择方法一!


准备工作:你需要的文件

在开始之前,请确保你已经准备好了以下文件:

python文件下载: 通过网盘分享的文件:
链接: https://pan.baidu.com/s/1SxSj3ETEo5cLDMIahg9iXg?pwd=wk7i 提取码: wk7i 复制这段内容后打开百度网盘手机App,操作更方便哦

  1. 学号数据压缩包 (学号.zip): 这是最重要的文件,包含了你所有的图片和标注数据。它的内部结构必须是这样的:

    2024314104.zip
    └── 2024314104/
        └── 0200520001/
            ├── 36997/
            │   ├── 36997_0_00180.jpg
            │   └── 36997_0_00180.json
            └── ... (其他操作文件夹)
    
  2. 训练脚本:

    • 对于 方法一 (Colab),你需要 训练.ipynb 这个文件。
    • 对于 方法二 (本地),你需要将下面的代码保存为一个 train.py 文件。
  3. 预训练权重 (可选但建议): yolov8n.pt 文件。我们的脚本会自动从服务器下载,但如果下载失败,你可以手动把它和其它文件放在一起。

方法一:使用 Google Colab 进行训练 (推荐)

这是最简单、最不容易出错的方法。

第1步:准备你的 Google Drive

  1. 打开你的谷歌云端硬盘 (Google Drive)。
  2. 安装colab插件,在网页中右键创建新的app


    搜索安装colab
  3. 在“我的云端硬盘”中,创建一个新的文件夹,把它命名为 小学期 (或者任何你喜欢的名字)。
  4. 将你所有的 学号.zip 文件(比如 2024314087.zip, 2024314088.zip …)和 训练.ipynb 文件,全部上传到这个 小学期 文件夹里。
  5. 应包含上传好的 学号.zip 文件和 训练.ipynb 文件。

第2步:打开并配置 Colab

  1. 在 Google Drive 中,双击你刚刚上传的 训练.ipynb 文件,它会自动用 Google Colab 打开。
  2. 【至关重要的一步】 打开后,点击菜单栏的 代码执行程序 -> 更改运行时类型
  3. 在弹出的窗口中,将“硬件加速器”从 None 改为 T4 GPU,然后点击“保存”。这一步是让你能用上免费的GPU,否则训练会非常非常慢。

第3步:修改配置并运行

  1. 现在,你会看到一个很大的代码块。你唯一需要检查和修改的地方是顶部的 DRIVE_PROJECT_PATH
  2. 确保这个路径和你第一步创建的文件夹路径完全一致。如果你的文件夹就叫 小学期,那么默认的路径就是对的,无需修改。

    # 1. 您的项目在 Google Drive 中的基础路径
    DRIVE_PROJECT_PATH = '/content/drive/MyDrive/小学期' # <--- 确认这个路径!
    
  3. 修改确认后,就可以开始运行了!点击顶部的全部运行!

第4步:耐心等待训练完成

运行代码后,下方的输出区域会开始滚动显示日志。整个过程分为几个阶段:

  • 阶段〇: 解压你的 zip 文件。
  • 阶段一: 为每个学号创建数据集,你会看到 该路径是否存在: True成功转换了 ... 个有效标注文件 的日志,这代表数据处理成功!
  • 阶段二: 合并所有数据。
  • 阶段三: 开始正式训练,你会看到类似下面这样的输出,表示训练已经开始:

    Epoch    GPU_mem   box_loss   cls_loss   dfl_loss  Instances       Size
          1/200       3.1G      1.593      4.407      1.317        343        640
    

常见问题与对策:

  • Q: 训练中途断开了怎么办?

    • A: 这是 Colab 免费版的正常现象。不用担心!我们的训练结果每轮都会保存在你的谷歌云盘 小学期/Combined_Project_Final/training_results/exp/ 目录下。下次重新连接后,只需要修改代码中的一行,即可从断掉的地方继续训练!

    找到 train_combined_model 函数,在 model.train(...) 中加入 resume=True

    # ... 其他代码 ...
    model.train(
        resume=True,  # 只需要加上这一行!
        data=yaml_path, 
        epochs=200, 
        # ... 其他参数 ...
    )
    # ... 其他代码 ...
    

    然后重新运行整个代码块,它就会自动加载上次的进度继续了。

  • Q: 提示 “Google 云端硬盘配额已超出” 怎么办?

    • A: 这说明你在短时间内读写云盘文件太多了。解决方法是等待几个小时再试,通常配额会自动恢复。

方法二:在自己电脑上进行本地训练

【警告】: 此方法非常复杂,仅适合有经验的用户和拥有强大NVIDIA显卡的同学!,也可以不使用显卡,但是速度极慢!

第1步:环境准备 (最难的一步)

  1. 安装 Python: 确保你的电脑安装了 Python 3.8 或更高版本。
  2. 安装 NVIDIA 驱动: 去 NVIDIA 官网下载并安装最新的显卡驱动。
  3. 安装 CUDA: 这是让程序能使用你的GPU的核心。去 NVIDIA CUDA Toolkit 官网下载并安装与你驱动匹配的版本(例如 11.8 或 12.1)。
  4. 安装 cuDNN: 这是 CUDA 的加速库。去 NVIDIA cuDNN 官网下载,解压后将其中的文件复制到 CUDA 的安装目录中。

提示: 上述每一步都可能出错,请严格按照 NVIDIA 官方文档操作。

第2步:项目设置

  1. 在你的电脑上创建一个文件夹,例如 C:\MyProject
  2. 把你所有的 学号.zip 文件和 yolov8n.pt (如果已下载) 放到这个文件夹里。
  3. 将下面的完整 Python 代码保存为 train.py,也放到这个文件夹里。

第3步:安装 Python 依赖库

  1. 打开命令行工具(Windows 用户使用 CMDPowerShell,macOS/Linux 用户使用 Terminal)。
  2. (强烈推荐)创建虚拟环境,这可以避免和你电脑上其他Python项目冲突:

    # 进入你的项目文件夹
    cd C:\MyProject 
    
    # 创建虚拟环境 (文件夹名叫 venv)
    python -m venv venv
    
    # 激活虚拟环境
    # Windows:
    .\venv\Scripts\activate
    # macOS/Linux:
    source venv/bin/activate
    

    激活后,你会看到命令行前面多了 (venv) 的字样。

  3. 安装 PyTorch 和其他库注意: 必须安装与你 CUDA 版本对应的 PyTorch!

    • 访问 PyTorch官网 获取适合你 CUDA 版本的安装命令。
    • 例如,如果你的 CUDA 是 11.8,命令可能是:
    pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
    
    • 然后安装 ultralyticsrequests:
    pip install ultralytics requests
    

第4步:运行训练

一切准备就绪后,在你的命令行(确保虚拟环境已激活)中运行:

python train.py

然后就可以看到和 Colab 中类似的训练日志了。训练结果会保存在 C:\MyProject\Combined_Project_Final\ 文件夹中。

结语

无论你选择哪种方法,最重要的都是耐心和细心。AI模型训练是一个耗时的过程,遇到问题很正常。

  • 对于Colab用户,最大的挑战是网络和免费时长,善用“断点续训”功能是关键。
  • 对于本地用户,最大的挑战是环境配置,请务必严格按照官方文档操作。

希望这篇指南能帮助大家顺利完成训练任务!祝大家成功!

评论