Datawhale AI 夏令营 CV方向 Task03总结

本次笔记主要探讨上分技巧。

1.训练的案例

数据增强。

2.模型预测的相关参数

下面这一行代码表示的是目标检测任务在imagesize=512的情况下,输入图像,得到结果。到了这一步修改,也就是我们所说的调参。

result=model.predict(img,conf=0.05,imgsz=512,verbose=False)

(1)conf值

在实战中我们会发现,在CV中检测的框架会出现很多的框,这可能是因为容错的范围比较大,造成只要高于某一个置信度的内容就都会输入进去,造成检测的目标过多,从而导致随机性比较大。
而随机性大的一个很大的毛病便是检测出来的框架可能会很离谱(比如说超过边界)。也就是说,我们想让结果输出的内容更加规范,因此,适当提高一些门槛,让模型输出的随机性的内容变少一些。

(2)imgsz。

通常YOLO不经过任何图像尺寸上的变化所拥有的信息是最全的,因此直接按照题目要求将输入的图像的尺寸填入即可。

(3)iou交并比

非最大值抑制(NMS)的交并比(IoU)阈值。较低的值通过消除重叠的边界框来减少检测数量,有助于减少重复项,为此应当尽可能减少IoU的值。

 

(4)vid_stride和half

这两个都是为了加快速度,不过加快速度的方式不同。vid_stride是直接跳过一些帧进行处理,而half则是通过加快硬件资源的速度。

(5)Augmented

数据增强,可以提升模型的泛化能力,不过需要牺牲模型的推理速度。

3.模型训练的相关参数。

以下三个是对模型的基本架构以及检查机制:

imgsz: 训练时的目标图像尺寸,所有图像在此尺寸下缩放。

save_period: 保存模型检查点的频率(周期数),-1 表示禁用。

device: 用于训练的计算设备,可以是单个或多个 GPU,CPU 或苹果硅的 MPS。

正则化是一种防止过拟合的有效的形式:

weight_decay: L2 正则化项。

预学习可以先提前找到某一个合适的点,在这个合适的点之后开始梯度下降,可以达到更好的训练效果。

warmup_epochs: 学习率预热的周期数。

warmup_momentum: 预热阶段的初始动量。

warmup_bias_lr: 预热阶段偏置参数的学习率。

如果需要梯度下降

optimizer: 训练中使用的优化器,如 SGD、Adam 等,或 'auto' 以根据模型配置自动选择。

momentum作为深度学习的梯度下降中对抗鞍点的方法,优化方法则成为梯度下降所需要的实现工具,分为SGD和Adam两种优化器。

momentum: SGD 的动量因子或 Adam 优化器的 beta1。

SGD:随机梯度下降,每次只随机使用一个样本(或一小批样本)用来计算梯度,减少优化计算上所占用的内存空间。

Adam;可以调整学习率的使用动量作为参数更新的方向。是Pytorch中最为常用的优化方法。

至于模型训练的如何,则是通过以下三个参数来判断:

box: 边界框损失在损失函数中的权重。

cls: 分类损失在总损失函数中的权重。

dfl: 分布焦点损失的权重。

一般来说,模型训练就在于减少上述三者的值,通过上述值的变化可以判断是否存在梯度消失或者梯度爆炸的情况。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

追逐着明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值