
YOLO模型相关
文章平均质量分 86
千天夜
一个热爱算法的码农
展开
-
YOLO系列正传(五)YOLOv4论文精解(上):从CSPNet、SPP、PANet到CSPDarknet-53
至此,我们详细讲解了CSPNet、SPP、PANet的相关重点,以及YOLOv4模型网络CSPDarknet-53的模型结构内容!原创 2024-12-28 21:53:14 · 1653 阅读 · 0 评论 -
数据增强之从对抗训练(AT)到自对抗训练(SAT)
对抗训练和自对抗训练是提升模型鲁棒性的关键技术。在对抗样本生成的质量和效率之间,需要根据实际需求进行权衡。希望本文能帮助初学者理解这两种方法的核心思想与实现过程,并在实践中探索适合的改进策略!原创 2024-12-25 15:05:36 · 1487 阅读 · 0 评论 -
深入理解批量归一化(BN):原理、缺陷与跨小批量归一化(CmBN)
批量归一化(BN)是一种在神经网络的训练过程中对每一层输入进行标准化的技术。具体来说,BN对每一层的输入数据进行均值为0、方差为1的归一化处理,从而消除了数据分布的变化(即内部协变量偏移BN的核心目标是加速网络训练过程,并提高网络的稳定性。简而言之,BN就是将每层的输入数据进行标准化处理,使其具有相同的尺度,这样可以避免某些层的输出值过大或过小,从而加速训练的收敛。跨小批量归一化(CmBN)通过跨多个小批量数据计算全局均值和方差,从而避免了单个小批量的统计量可能存在的误差。原创 2024-12-24 22:17:55 · 1406 阅读 · 0 评论 -
深度学习中的残差网络、加权残差连接(WRC)与跨阶段部分连接(CSP)详解
本文介绍了残差网络(ResNet)加权残差连接(WRC)和跨阶段部分连接(CSP)这三种网络架构,它们通过不同的方式提升了深度网络的训练效率、表达能力和计算效率。ResNet通过残差连接解决了深层网络训练中的梯度消失问题,使得深层网络的训练变得更加稳定。WRC通过引入可学习的加权机制,使得残差连接可以更灵活地调整输入和输出的贡献,从而提高了网络的表达能力。CSP通过跨阶段的部分连接,减少了冗余的信息传递和计算开销,提高了网络的效率。原创 2024-12-24 15:58:20 · 1909 阅读 · 0 评论 -
YOLO模型分布式训练:步骤与操作方式
分布式训练是将模型训练的任务分配到多个计算节点上,通过并行计算加速训练过程。数据并行(Data Parallelism):将数据切分成多个小批次(mini-batches),每个计算节点处理不同的数据,并同步更新模型参数。模型并行(Model Parallelism):将模型分成多个子模型,分配到不同的计算节点上进行计算。对于YOLO模型,分布式训练通常使用数据并行方式。每个GPU节点加载数据集的一部分,计算梯度,并通过一定的同步机制共享梯度,从而更新全局模型参数。原创 2024-12-22 22:36:00 · 1251 阅读 · 0 评论 -
YOLO系列正传(四)YOLOv3论文精解(下)——损失函数推导与其他优化项
这篇文章详细解析了YOLOv3模型的损失函数,主要包括三个部分:1.lbox(边框损失):通过计算预测框和目标框的 CIOU来评估框的重叠程度,损失为 1 -IoU的均值。2. lobj(目标物体损失):根据预测框和目标框的 IoU 计算物体存在性的损失,使用 BCE来衡量物体存在性预测和目标之间的差异。3. lcls(类别损失)基于预测的类别概率和目标类别之间的 BCE 损失,优化类别分类精度。最终的总损失是三部分损失的加权和原创 2024-12-22 22:30:55 · 1695 阅读 · 0 评论 -
深入理解YOLO系列目标检测头的设定方式
版本检测头结构关键技术优势缺点YOLOv1全连接层(FC)无速度快,设计简单,适合实时检测精度低,定位不准确,小物体检测能力差YOLOv2多卷积层 + passthrough更好的精度,适应不同尺寸物体,改进了小物体检测计算复杂度增加,锚框选择依赖数据YOLOv3多卷积层 + 跨层特征融合多尺度预测,特征金字塔(FPN)多尺度检测,精度更高,尤其是小物体检测计算开销大,推理速度较慢通过YOLOv1到YOLOv3。原创 2024-12-18 20:43:41 · 1097 阅读 · 0 评论 -
YOLO系列正传(三)神经网络的反向传播(back propagation)与公式推导
那么很简单,我们只需要对此函数求导并使得导函数为零我们就能解出最小的loss所需要的参数w和b。我们只需要逐步慢慢靠近偏导数指向的方向,我们就能将模型慢慢拟合到我们期望的方向!在私信反馈中,发现有些读者针对反向传播的原理不甚了解,所以我们今天我们针对神经网络的正向与反向传播的原理进行详解。在视觉检测领域独领风骚,本系列旨在从小白出发,给大家讲解清楚视觉检测算法的前世今生,并讲清楚YOLOv11版本算法的所有模块功能!我们从此入手进行推导!这是因为我们在求解某一层的w的解析解的时候,我们有一个前提,那就是。原创 2024-12-18 14:00:15 · 1477 阅读 · 1 评论 -
深入解读FPN中的横向连接:从细节到优化
尽管整体设计看似简单——上采样、高低层特征相加、卷积处理,但在实际应用中,这些步骤蕴含了许多细节与潜在的优化空间。今天我们以一个更细微的切入点,聚焦横向连接中的核心环节,探讨实现中的小技巧与优化方向。从特征对齐到权重分配,从卷积设计到上采样选择,细节的精雕细琢决定了FPN的性能上限。横向连接中,低层特征通常具有更高的通道数,而高层特征的通道数较低。特征融合后,可能存在高频噪声或边界不连续的问题,使用3×3卷积进一步处理融合特征,可以缓解混叠效应,提高特征的表达能力。使用可学习参数对高低层特征赋予不同权重。原创 2024-12-09 23:49:15 · 1003 阅读 · 0 评论 -
YOLO系列正传(二)YOLOv3论文精解(上)——从FPN到darknet-53
综上,我们完成了YOLOv3的原理初探,从图像金字塔到FPN特征金字塔,再到YOLOv3的相关原理与网络结构,以及公式推导。我们对YOLOv3的原理有了一个较为清晰的认知。原创 2024-12-09 23:44:20 · 1649 阅读 · 0 评论 -
YOLO系列正传(一)类别损失与MSE损失函数、交叉熵损失函数
随着YOLOv11版本的发布,YOLO算法在视觉检测领域独领风骚,本系列旨在从小白出发,给大家讲解清楚视觉检测算法的前世今生,并讲清楚YOLOv11版本算法的所有模块功能!在YOLOv1中,作者对所有的数值采用的都是均方差损失函数,即MSE。然而在YOLOv3中,作者使用了交叉熵损失函数来表示分类回归损失。原创 2024-12-05 23:41:01 · 1892 阅读 · 0 评论 -
深入解析YOLO中的Anchor机制及其优化
Anchor机制是YOLO中提高目标定位精度的关键组成部分。通过合理选择和优化Anchor框,我们能够显著提升检测精度。K-means聚类提供了一种简单而有效的方法来选择Anchor框,而YOLOv5则通过自动优化机制使得Anchor框的选择更加灵活。理解并合理优化Anchor框设置,能够帮助我们提升YOLO模型在实际应用中的性能。希望这篇博客能帮助你更深入地理解YOLO中的Anchor机制,并能够在实践中应用这一技术来优化模型的目标检测效果。如果你有任何问题或优化建议,欢迎在评论区交流原创 2024-12-04 18:30:20 · 1565 阅读 · 0 评论 -
YOLO系列基础合集——小白也看得懂的论文精解
随着YOLOv11版本的发布,YOLO算法在视觉检测领域独领风骚,本系列旨在从小白出发,给大家讲解清楚视觉检测算法的前世今生,并讲清楚YOLOv11版本算法的所有模块功能!在本系列的内容中,我们主要讲解YOLO系列的基础内容。从卷积神经网络基础原理到YOLOv2的论文精解,涵盖了YOLOv1到YOLOv2的所有理论基础,这也是后续YOLO系列的基础内容。敬请期待,YOLO系列的正传!原创 2024-12-04 17:58:27 · 659 阅读 · 0 评论 -
YOLO系列基础(十)YOLOv2论文及原理详解(下)Darknet-19网络结构
batch norm 归一化层anchor boxes 锚框PassThrough直通层multi-scale 多尺度训练高分辨率分类器预训练 Darknet-19网络综上,我们针对YOLO9000进行了全面的学习和回顾!接下来就是YOLOv3了!原创 2024-12-03 11:32:38 · 1545 阅读 · 0 评论 -
YOLO系列基础(五)从神经元共适应性到模型Dropout层
在神经网络中,每个神经元通常被设计为独立的特征检测器。然而,在实际训练过程中,可能会出现两个或多个神经元开始检测相同或高度相似的特征。这种现象被称为共适应性(coadaptation)。共适应性意味着神经网络并没有充分利用其全部的计算资源,而是浪费资源来计算激活冗余的神经元。用人话说就是有神经元是完全没用的东西,因为和其他神经元高度相似。原创 2024-11-12 16:17:10 · 858 阅读 · 0 评论 -
YOLO系列基础(九)YOLOv2论文及原理详解(上)
随着YOLOv11版本的发布,YOLO算法在视觉检测领域独领风骚,本系列旨在从小白出发,给大家讲解清楚视觉检测算法的前世今生,并讲清楚YOLOv11版本算法的所有模块功能!在YOLO(You Only Look Once)系列算法的演进中,YOLOv1作为开山之作,奠定了实时目标检测的基础框架。但是YOLOv1仍然存在诸多缺陷,且同期的其他检测算法也在蒸蒸日上抢夺最强检测算法的宝座,本文从YOLOv1的缺陷出发,详解YOLOv2的原理和改进措施。原创 2024-11-22 08:30:00 · 1264 阅读 · 0 评论 -
YOLO系列基础(八)从检测框坐标值直接预测到锚框偏移量
从YOLOv1直接预测检测框坐标到Fast R-CNN引入锚框,目标检测算法在精度和泛化能力上取得了显著进步。锚框的引入不仅解决了YOLOv1在边界框预测上的局限性,也为后续的目标检测算法(如YOLOv2及以后版本)提供了重要的启示。在YOLOv2及后续版本中,锚框的概念得到了进一步的优化和应用,使得YOLO系列算法在保持实时性的同时,不断提升检测精度和泛化能力。原创 2024-11-20 13:46:04 · 1237 阅读 · 0 评论 -
YOLO系列基础(七)从数据增强到图像线性变换
过拟合(Overfitting)是机器学习中的一个常见问题,指的是模型在训练数据上表现得过于出色,以至于它开始捕捉并学习训练数据中的噪声和随机波动,而不是学习数据的潜在规律或模式。这种情况发生时,模型在训练集上的性能(如准确率、召回率等指标)通常非常高,但在未见过的数据(如测试集或实际应用中的数据)上的性能却显著下降。过拟合的模型往往过于复杂,它们包含了大量的参数和细节,这些参数和细节对于训练数据是有效的,但对于新的、类似的数据则不再有效。原创 2024-11-15 15:04:36 · 936 阅读 · 0 评论 -
YOLO系列基础(六)YOLOv1论文原理详解,清晰明了!
经过前面几个栏目的学习与掌握,我们已经具备理解和掌握YOLOv1的基本能力。今天,我们来精讲YOLOv1的原理!网络结构、算法流程、损失函数详解!原创 2024-11-13 16:27:02 · 3121 阅读 · 4 评论 -
YOLO系列基础(四)从归一化层(BN层)到CBS模块
在我们实际讲解BN层操作之前,我们需要对BatchSize进行一个说明,BatchSize就是模型在单次训练的时候同时训练的图片数量,batchsize = 2 意味着单次训练2张图片,就这么简单。BacthSize主要是为了加速模型拟合、减少模型过拟合、缓解loss跳变引入的。并非本文重点,我们下篇再详解此部分。原创 2024-11-12 10:36:45 · 1561 阅读 · 0 评论 -
YOLO系列基础(三)从ResNet残差网络到C3层
每过一层,神经网络就会对数据进行进一步的抽象,神经网络的深度越深,网络就能对数据的更深层特征进行提取和识别。但是有一个关键的现象是,每一次的抽象都不可避免的会损失数据,无论是卷积、池化都一样,这就导致了这个深层特征是存在上限的,进行过多层级的特征提取,提取的特征可能会过于抽象以至于毫无意义。此外,多增加的一个Conv层大大提高了模型的拟合速度,因为不管怎么说,好歹是做了一次特征提取的操作。博主想要表达的是,仅仅是单纯的神经网络层级过长,就足以导致模型效果的急剧下降。可惜的是,似乎并不能如此武断的下定结论。原创 2024-11-11 15:18:22 · 1370 阅读 · 1 评论 -
YOLO系列基础(二)Bottleneck瓶颈层原理详解
bottleneck层最初是在ResNet网络中初次提出,通过降低计算量使得神经网络网络深度可以进一步增加。下图为瓶颈层的结构图左侧是没有瓶颈层的残差网络,对于残差网络我们放置下一篇介绍,此处不用管这个看似很NB的名称。右侧则是称为有瓶颈层的残差网络。有啥区别呢?左侧仅仅是做了一层常规的3*3卷积核的卷积层,激活之后再次通过另外一次3*3卷积核的卷积层。右侧则是通过了一层1*1的卷积层、激活之后再通过3*3的卷积层激活之后再一次通过1*1的卷积层。我为什么要复述一遍……。原创 2024-11-08 15:08:15 · 2201 阅读 · 0 评论 -
YOLO系列基础(一)卷积神经网络原理详解与基础层级结构说明
卷积神经网络(CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一,在自然语言处理和图像领域中有广泛的应用。本文将详细讲解卷积神经网络的原理,并重点探讨卷积核及其有效性。原创 2024-11-08 14:22:52 · 2100 阅读 · 0 评论 -
YOLOv8相较于YOLOv5有哪些改进?
综上所述,YOLOv8相比YOLOv5在算法上进行了多项改进,这些改进使得YOLOv8在目标检测任务中表现出更高的性能和准确性。原创 2024-11-07 16:20:20 · 2081 阅读 · 0 评论 -
YOLO系列之多阶段训练策略(解决识别不平衡问题)
在进行识别模型训练的时候,往往后期在实际运行中发现一些类别图像识别不佳的情况,此时需要做数据的重新收集与标注。那么此时的训练策略是什么呢?因为若是把数据集整合起来统一训练,就会导致其他没有问题的类别在多次重复训练中发生过拟合现象,而且对于需要更多训练的类别也会因为loss太低而得不到好的训练效果。经常出现这个类别修好,别的类别又出现效果不佳的现象。原创 2024-10-17 13:38:16 · 677 阅读 · 0 评论 -
YOLO系列——数据采集策略对模型效果的影响分析
最近在开发实践中,需要用到YOLO强大的图片检测能力,然而总是会遇到一些待检测物体没有成功检测出来的情况。发现并非过拟合现象,本次的情况实际是本次的数据采集没有考虑光圈和光照条件、没有考虑多样化背景干扰。导致模型在不同光照条件下效果差异明显,在不同背景下出现误识别背景的情况。原创 2024-10-15 09:11:11 · 694 阅读 · 0 评论 -
cv.VideoCapture()的摄像头ID究竟是如何编码的?为什么有的是从700开始编码??彻底读懂它!
cv.VideoCapture()的摄像头ID究竟是如何编码的?为什么有的是从700开始编码??彻底读懂它!原创 2024-09-03 09:50:19 · 671 阅读 · 0 评论 -
KDtree高维空间特征向量分类树的缺陷与补救方案
最近在做高维特征向量查找比对的过程中,由于数据库内的数据过于庞大,从头遍历效率太低,故想要寻找一些快速的高维空间向量的查找方式。经过调研与学习,笔者发现有球树、KDtree等多种高维空间向量查找方式,但是都存在一个共性的问题,即:在分类边界容易出现分类错误的现象发生。故在本篇笔者提出了一种新的高维空间向量查找方式,希望可以对读者有新的启发。原创 2024-06-18 18:49:56 · 570 阅读 · 0 评论 -
闪烁与常亮的符号状态判断机制(状态机算法)
在视觉项目中,经常要判断目标的状态,例如:符号的不同频率闪烁、常亮等。然而常规的视觉算法例如YOLO,仅仅只能获取当前帧是否存在该符号,而无法对于符号状态进行判断,然而重新写一个基于时序的卷积神经网络又未免太过了,而且效果也往往低于预期。所以笔者通过借鉴操作系统的状态转换策略,想了一个符号状态的状态机转换算法。原创 2024-06-12 19:27:52 · 858 阅读 · 0 评论 -
YOLO算法检测模型训练参数大合集!!再也不用看不懂超参啦!
YOLO算法检测模型训练参数大合集!!再也不用看不懂超参啦!原创 2024-05-28 14:01:58 · 1909 阅读 · 2 评论 -
YOLO算法输出图像含义以及理解
YOLO输出图像及其示意,all you need is here !!原创 2024-05-28 13:22:53 · 2377 阅读 · 0 评论 -
机器学习,解决数据倾斜问题的实用策略!
数据倾斜问题!All you need is here!!原创 2024-05-20 16:07:41 · 853 阅读 · 0 评论 -
YOLO检测和分类pt模型的读取和使用
自从YOLOv5增加分类功能以来,YOLO成为了一个堪称全能的模型。然而,在具体实践中,不可能单单做检测或者单单做分类,往往需要一起使用或者集成到其他的代码中去。那么对于YOLOpt格式的模型如何读取和使用变成了一个极大的问题。原创 2023-09-22 19:04:43 · 4879 阅读 · 7 评论