news 2026/7/22 8:57:18

YOLO系列学习三(训练):

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
YOLO系列学习三(训练):

!!!如何让训练跑的更快:

一.训练效率:即下面四种硬件资源的利用率

二.两个高效率训练的典型特征:

-cuda的利用率又高又稳

-所有资源利用率都不到100%

三.影响GPU训练效率的4个选项:

1.imgsz选项--->缩放

注:imgsz必须是32的倍数

例如:imgsz=640,就是将图片缩放到一个640×640的正方形里,图片的宽高比例不变

到目前为止的训练的完整流程:

重点:

-imgsz越小,训练越快,但是也是有上限的,并且还与训练效果有关

-Imgsz设置成多少比较合适:一般保持默认的640就行

-比较建议调整的情况有两种:

1.图片尺寸很大,目标一丁点---->imgsz调高一点

2.图片尺寸普遍比640小---->保持原本(接近)的32倍的imgsz

2.batch选项---->批次

一个批次里图片的数量:批量(batch size)

代码里将"batch=2",一次投喂两张图片

硬件条件会限制batch的上限

batch=2 时间:大概42s

batch=8 时间:大概22s

(1)batch对显存占用和训练效率的影响:

-batch太小,显存占用低,训练效率低

-随着batch越调越高,显存占用会变高,训练效率也会变高,但是效率的提升是有限的

-尤其是显存占用快满的时候,效率反而会变差

-batch再高的话,甚至会开始报错

(2)接近最快的batch一般是在一个区间里,我们只需要将batch调整到这个区间就行

方法:将"batch=-1",YOLO就会自动帮你找一个相对合适的batch,调到能差不多接近最快就行

3.cache选项---->缓存

默认cache=False,即不适用缓存

对应cache="ram",即使用内存作为缓存

缓存的核心思想:如果一个东西你经常用,就放到近一点的地方

所有训练集图片都以文件的形式存储下硬盘里,每次训练时,都需要将图片从硬盘加载到内存里,再进行后续操作

cache="ram",提前加载,提前缩放(大概率可以提高训练的效率)

缺点:所有缩放后的图片都会放到 内存里,所以内存要足够大,才能容纳这些图片

4.workers选项---->打包

细节:

-每一轮的每个批次都是随机打包的

-在把每批次的图片拼到一个数据块之前,通常会先随机修改一下

数据增强(修改)----随机放大或缩小一些,接着随机旋转一点角度,再调一调颜色,再从中间裁剪一下

一个批次完整的打包流程:

解决办法:多开几个进程打包:

"worker=1",时间:大概12s

worker每加一,内存就要多消耗一倍

5.邪修路线:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/22 3:16:17

Mermaid Live Editor 终极指南:实时图表编辑的完整解决方案

Mermaid Live Editor 终极指南:实时图表编辑的完整解决方案 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-e…

作者头像 李华
网站建设 2026/7/22 7:23:29

Drawnix白板工具:用代码思维重塑图形设计工作流

Drawnix白板工具:用代码思维重塑图形设计工作流 【免费下载链接】drawnix 开源白板工具(SaaS),一体化白板,包含思维导图、流程图、自由画等。All in one open-source whiteboard tool with mind, flowchart, freehand …

作者头像 李华
网站建设 2026/7/22 8:32:32

Monaco Editor代码提示响应优化实战指南

Monaco Editor代码提示响应优化实战指南 【免费下载链接】monaco-editor A browser based code editor 项目地址: https://gitcode.com/gh_mirrors/mo/monaco-editor 作为一名前端开发者,你是否曾在编码过程中遇到过这样的困扰:按下.键后&#xf…

作者头像 李华
网站建设 2026/7/22 6:08:00

下一代前端开发:用Next.js与大模型AI,零代码解锁你的智能助手

项目概述 Vercel AI-Chatbot 是一个基于 Next.js 16 构建的、功能丰富的全栈现代化 Web 应用。其核心特点是深度集成 AI 功能,并具备实时协作、数据管理和代码编辑等复杂能力。 演示视频 下面是一个 Vercel AI-Chatbot 项目的演示视频,展示了应用的主…

作者头像 李华
网站建设 2026/7/21 13:30:47

跨越浏览器壁垒:Skyvern如何实现自动化脚本的通用兼容性

跨越浏览器壁垒:Skyvern如何实现自动化脚本的通用兼容性 【免费下载链接】skyvern 项目地址: https://gitcode.com/GitHub_Trending/sk/skyvern 在企业级自动化实践中,我们常常面临这样的困境:精心设计的自动化流程在Chrome浏览器上运…

作者头像 李华