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

YOLO训练入门(下)学习笔记(第四集)

⏱ 00:02 - 00:30|核心类比:训练 = 管员工

  • 电脑硬件(CPU / GPU / 内存)= 员工
  • 模型训练 = 让员工干活

👉 核心思想:

不要让硬件偷懒,也不要让它过劳崩溃


⏱ 00:30 - 01:36|如何判断训练速度?

❗关键点

  • 不看 epoch(轮数)
  • 看每一轮耗时(重点是第一个进度条)

📊 进度条时间含义

  • 左边:已用时间
  • 右边:预计剩余时间

👉 示例:

  • 已用 17 秒 + 剩余 20 秒 ≈ 总 37 秒

👉 结论:

第一个进度条时间 ≈ 单轮训练耗时


⏱ 01:39 - 04:11|训练效率的本质(非常重要⭐)

训练速度 ≠ 一个数字
👉 本质是4种硬件利用率

🧩 四大核心资源

  • CPU
  • 内存(RAM)
  • GPU(CUDA利用率)
  • 显存(GPU Memory)

🔧 如何查看 CUDA?

如果任务管理器看不到:

  1. 关闭“硬件加速 GPU 计划”
  2. 重启电脑
  3. 在GPU面板选择 CUDA

✅ 高效训练的两个特征

1️⃣CUDA利用率:高且稳定
2️⃣所有资源:不达到100%


⚠️ 为什么不能100%?

  • 会报错(OOM等)
  • 系统降速保护
  • 训练反而变慢

👉 人话:

榨干=崩溃,留点余量=更稳更快


⏱ 04:23 - 05:06|CPU vs GPU训练对比

实验:

device = "cpu"

结果:

  • GPU不用了(CUDA=0)
  • CPU负载上升
  • 训练时间暴涨(37秒 → 接近5分钟)

👉 结论:

GPU训练 ≫ CPU训练(数量级差距)


⏱ 05:26 - 11:12|参数一:image size(图像尺寸)


📦 训练流程(重要理解)

  1. 图片缩放到统一尺寸(如640×640)
  2. 打包成数据块
  3. 输入模型训练

👉 核心原因:

统一尺寸 = 提高计算效率


⚡ 速度影响

image size计算量速度

👉 实测:

  • 640 → 37秒
  • 320 → 29秒
  • 更小 → 提升有限(有上限)

⚠️ 限制

  • 必须是32的倍数
  • 最小:32

🎯 对效果的影响(重点!)

❌ 太小:
  • 图片变马赛克
  • 模型学不到特征
❌ 太大:
  • 图片变模糊(放大)
  • 训练慢 + 效果不一定好

✅ 推荐策略

默认:

imgsz = 640

🔍 什么时候调整?

✔ 调大(如1280)
  • 图片大 + 目标小
✔ 调小(如512)
  • 图片本身小
  • 放大会模糊
❌ 极端情况
  • 图片小 + 目标小
    👉直接换数据集

⏱ 11:15 - 16:25|参数二:Batch(批量大小)


📦 什么是 Batch?

  • 一次喂给模型的图片数量
  • 👉 一轮训练 = 多个 batch

📊 示例

  • 1052 张图片
  • Batch=2 → 526批
  • Batch=8 → 132批

⚡ 影响规律

Batch显存占用速度
太大爆显存报错

❗关键结论

Batch越大越快(但有上限)


💥 错误示例

batch = 999

👉 直接 OOM(显存炸)


🧠 最优策略

batch = -1

👉 YOLO自动帮你找最优(AutoBatch)

⏱ 16:57 - 20:33|参数三:Cache(缓存)


🧠 问题本质

默认流程:

每个batch都要从硬盘读图片 → 很慢


🚀 cache="ram" 做了什么?

训练前:

  1. 所有图片加载进内存
  2. 提前缩放

训练时:

  • 直接用 → 跳过读取 + 预处理

⚡ 效果

  • 21秒 → 18秒(略提升)

💾 代价

  • 占用内存(例:+1GB)

🎯 适用场景(重点)

✔ 图片很大(几千像素)
✔ 训练很慢 + CUDA利用率低


🧠 核心思想

常用数据 → 放近一点(内存)


⏱ 21:01 - 25:24|参数四:Workers(多进程)


🧠 问题本质

  • batch打包 + 数据增强是耗时的
  • 如果跟不上GPU → GPU会“干等”

🚀 解决方案

👉 多进程打包(Workers)


⚡ 效果

  • 18秒 → 11秒(巨大提升)

💾 代价

  • 每+1 worker → 内存翻倍消耗

📊 规律

Workers内存速度
太高爆内存慢/报错

人多不一定快,合适最重要


⏱ 27:14 - 结尾|实战建议

✅ 推荐训练状态

  • 负载:70% ~ 80%
  • 不要满载
  • 训练时别干别的事

🧾 总结(重点复习版)

🎯 提升训练速度四大参数

参数作用核心策略
image size控制计算量默认640
batch控制并行量用-1自动
cache减少IO内存够就开
workers加速数据处理适量

🧠 最核心一句话

训练优化本质 = 让GPU一直高效干活,同时别让任何资源成为速度瓶颈

http://www.jsqmd.com/news/760077/

相关文章:

  • 【AI模型】模型量化技术详解
  • 大模型代码生成与代理任务评估框架及优化实践
  • 2026年5月专业靠谱的全屋定制TOP5:基于全案交付与口碑验证的权威榜单 - 商业科技观察
  • 告别手动测试:深入解读Vector CANoe LIN一致性测试模块(ISO17987/J2602标准覆盖哪些内容?)
  • 2026树枝粉碎机品牌评分出炉!博尚9.8分领跑,全能配置+高性价比,市政/物业首选品牌 - 会飞的懒猪
  • 大模型输入的“灵魂”步骤:Embedding如何让0、1、2变得有“意义”?
  • 2026年5月全屋定制品牌权威盘点:精工智造如何定义家的品质 - 商业科技观察
  • 前端学习打卡 Day1:从0到1认识前端与HTML基础结构
  • 大语言模型逻辑验证框架:原理、实现与应用
  • 2026年5月全屋整装十大公认品牌——选对品牌,装好一个家 - 商业科技观察
  • 超表面技术在水下定位系统中的应用与优化
  • 前端已死?2026年,转型AI Agent工程师才是你的“续命”良方!
  • 基于Flutter的OpenClaw桌面控制台开发:架构设计与跨平台实践
  • 4J36低膨胀合金有哪些?符合国标的4J36低膨胀合金厂商推荐 - 品牌2026
  • CANoe诊断测试避坑指南:ISO 15765-2网络层时间参数(N_Ar, N_As, N_Br...)详解与实战监控
  • 2026年5月厨柜定制选购白皮书:从物理参数到精工交付的品质解码 - 商业科技观察
  • 利用Taotoken多模型能力为嵌入式系统设计文档寻找最优的生成模型
  • 告别Docker依赖!用tileserver-gl-light在Windows/Mac上5分钟搭建本地地图服务
  • 不只是建模:手把手教你用TCAD为GaN功率器件做‘虚拟实验’(DOE与参数校准篇)
  • GitHub汉化插件:3分钟告别英文界面,让中文开发者更高效
  • 别再手动配IP了!用Cloud-Init在OpenStack上5分钟搞定CentOS 7云主机初始化(附完整配置流程)
  • 用快马ai快速构建你的第一个android天气应用原型
  • 2026年5月橱柜定制品牌十大排名:金牌家居领跑高端厨房定制 - 商业科技观察
  • 【连续11届稳定EI检索、快至3个月】第十二届先进制造技术与应用材料国际学术会议(ICAMMT 2026)
  • 高效散热调校:Fan Control终极风扇控制软件深度解析
  • 2026园林树枝粉碎机厂家品牌排名 - 会飞的懒猪
  • 利用Taotoken CLI工具一键完成团队开发环境统一配置
  • AI赋能数字攻击面评估:MCP服务器实现自动化安全审计
  • VIEWE 4英寸圆形HDMI触摸屏开发与应用指南
  • 【成功实践版】workbuddy_把多张图片转成完整Markdown笔记