人工智能|YOLOv1的损失函数和非极大值抑制

简介: YOLOv1将图像划分为7×7网格,每格预测2个边界框(共98个),含中心点、宽高、置信度及20类概率。损失函数由坐标(加权5)、置信度(含/不含物体分权重)和分类三部分构成,均采用带平衡系数的均方误差,并以IoU为核心匹配与评估依据。(239字)

 损失函数

YOLOv1把图片分成了7*7=49个网格,每个网格可以预测两组中心点和边界框的信息。也就是

49*2,一共98个中心点和边界框。那么哪一个中心点和边界框才是最好的,最准的呐?

image.gif

YOLO 模型检测效果优劣的核心评价指标为交并比(IoU),其计算方式如下:在数据预处理阶

段,我们已经标注得到目标物体准确的位置与尺寸信息,该标准边界框称为真实框(Ground

Truth,GT),是模型训练的监督标签。模型推理时会输出一个预测边界框,通过计算预测框与真

实框的交集面积 / 并集面积,即可得到 IoU 值,以此衡量预测框的精准程度。

image.gif

预测阶段,网络在每个网格输出的信息包含:

两组边界框中心点偏移、宽高偏移量;以及对应两个框的置信度。YOLOv1 置信度定义为:网格包

含目标物体的概率 × 预测框与真实框的 IoU;其中网格存在物体概率为 1,不存在物体则为 0。除

此之外,每个网格还输出 20 个类别预测概率值。

image.gif

YOLOv1 在训练过程中,会将网络预测得到的两个边界框与标注绿色真实框(GT)进行匹配对

比,自动舍弃 IoU 交并比较小的预测框,仅保留匹配度更高的边界框参与后续损失函数计算。

image.gif

接下来介绍 YOLOv1 损失函数:

式中S2代表划分的7×7 共 49 个网格,参数B=2代表每个网格预测2 个边界框。

obj表示网格包含目标物体时取值为 1,不包含物体时取值为 0;noobj与之相反,网

格存在物体时取 0,不存在物体时取 1。

损失函数在计算时同时兼顾含物体网格与不含物体网格。

权重系数 5 用于放大中心点与边界框坐标的损失权重。由于 49 个网格中真正包含物体的网格占比

极少,设置该权重可以增强含物体网格的损失贡献,引导模型重点关注目标位置。

损失函数前两项为位置损失,采用均方误差计算预测框中心点、宽高与真实框的偏差,计算方式为

真实值与预测值作差后平方。后续依次为置信度损失与类别分类损失。

image.gif


非极大值抑制

YOLOv1 一共会输出 98 个预测框,那么模型是如何从中筛选出最优检测框的呢?

每个网格输出的预测向量中,后 20 个数值为 20 个类别的预测概率;向量前 10 个参数包含两组边

界框信息,其中对应两个边界框的置信度得分。网格边界框的置信度得分由公式计算得出,具体定

义如下:

image.gif

随后我们可以得到2 个长度为 20 维的新向量,向量中每一个数值,分别代表该预测框对应各个类

别目标的置信可靠程度。

image.gif

最终我们可以得到98 个 20 维向量,分别对应网络预测的 98 个边界框。向量中每一列数值,代表

对应类别的置信度得分,例如第一列即为目标属于汽车类别的置信度。

我们按类别依次处理:以汽车类别为例,筛选出置信度大于 0.2 的预测框,其余不符合条件的框全

部舍弃(代码实现时直接将对应置信度置 0);再将保留的预测框按照置信度从高到低排序,为后

续非极大值抑制 NMS 做准备。

image.gif

最终整理得到一个98×20 的矩阵,我们剔除矩阵中所有置信度为 0 的无效数据,即可进行预测框

绘制。以汽车类别为例:单独在汽车这一类中,筛选出置信度得分最高的预测框,提取其对应的中

心点与边界框坐标,绘制到原始图片上,并标注对应类别标签即可。

【1】上述所有内容,参考大白话讲明白YOLOv1的损失函数 #YOLO #YOLOv1 #目标检测 #深度学习#知识前沿派对 - 抖音

目录
相关文章
|
5月前
|
人工智能 自然语言处理 计算机视觉
人工智能|大白话Meshed-Memory Transformer
M2Transformer是一种图像描述生成模型,由三部分构成:骨干编码器(Faster R-CNN)提取区域特征;记忆增强编码器(Transformer)对特征进行语义细化;网格解码器(Transformer)将增强特征转化为自然语言描述。结构清晰、层次分明,兼顾准确性与可解释性。(239字)
266 4
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
人工智能 |手算CLIP模型
本文详解CLIP模型原理:突破传统CNN需重新训练的局限,通过4亿图文对联合训练文本与图像编码器,实现零样本迁移。利用对比学习对齐多模态特征,支持图文检索、零样本分类等应用,让AI像人一样理解未见过的概念。(239字)
472 3
|
5月前
|
机器学习/深度学习 人工智能 应用服务中间件
别再被误导了!一文讲透 MCP 与 Function Calling 的真实关系
AI圈热议MCP能否取代Function Calling?实则二者定位迥异:Function Calling是大模型的“决策层”,负责选工具、生成参数;MCP是后端与工具间的“执行协议”,统一调用标准。二者分属不同链路环节,非替代关系,而是协同互补的“黄金搭档”。
|
5月前
|
机器学习/深度学习 人工智能 算法
人工智能|大白话DETR 模型
DETR(检测变换器)是首个端到端目标检测模型,摒弃锚框与NMS后处理。它以CNN提取特征,经Transformer编码器-解码器处理,配合100个可学习目标查询(OQ),通过二分图匹配实现预测框与真实框的一对一最优分配,直接输出类别与坐标。(239字)
517 3
|
5月前
|
人工智能 机器人 芯片
人工智能|YOLOv8实战
本内容为安全帽检测实战项目,基于YOLOv8模型,涵盖Kaggle数据获取、自定义yaml配置、模型训练(yolo_train.py)与测试(yolo_test.py),并提供服务器(FastAPI+Docker)、边缘(Jetson+TensorRT)及国产嵌入式(RK3588+RKNN)三类部署方案,支持工业场景实时智能识别。(239字)
653 1
|
5月前
|
人工智能 数据可视化 测试技术
【教程】阿里云轻量云服务器一键配置OpenClaw
如果你还没有部署自己的 OpenClaw,还可以通过购买腾讯的轻量云服务器,一键秒级部署指南一键秒级部署指南,一键即可在几秒内完成部署。
541 9
|
5月前
|
弹性计算 监控 Java
Maven 并行构建配置:-T 4C 提速 4 倍实战
本文深入讲解了 Maven 并行构建的核心原理和实战技巧,包含 -T 参数详解、模块并行化改造、性能监控与分析等企业级最佳实践。通过真实案例展示了如何将多模块项目的构建时间从 45 分钟缩短到 11 分钟(提升 4.1 倍),提供完整的性能测试脚本和优化检查清单。掌握这些技能,你将能够充分利用多核 CPU 加速 Maven 构建。适合 Java 开发者、架构师、DevOps 工程师阅读。
|
5月前
|
存储 人工智能 缓存
AI不稳定不是工程Bug,是一场系统性误读——意图共鸣科技行业洞察
过去三年AI狂卷参数与算力,却困于“Demo惊艳、上线翻车”。症结在于误读“AI稳定性”——它非传统软件不宕机,而是大模型在行为分寸、长期记忆、责任可溯、商业可持续四维的结构性缺失。意图共鸣科技正深耕此深水区。
360 6
|
5月前
|
人工智能 自然语言处理 数据挖掘
AI时代的个人知识管理:从知识库、SOP到OPC一人公司
本文探讨AI时代下的个人知识管理新范式——OPC一人公司:它并非法律意义的单人企业,而是以目标判断为核、AI为辅、知识库为基、SOP为纲、复盘为钥的可复用工作系统。强调经验沉淀、流程自动化与持续优化,助力个体实现部门级任务处理能力。
671 4
|
5月前
|
监控 固态存储 Java
Maven 本地仓库优化:SSD+ 目录结构调整最佳实践
本文深入讲解了 Maven 本地仓库优化的完整方案,包含 SSD 迁移、目录结构规划、清理策略、多版本管理等企业级最佳实践。通过真实案例展示了如何将 50GB 仓库优化到 20GB(减少 60%),构建时间从 12 分钟缩短到 2 分钟(提升 6 倍)。提供完整的迁移脚本、清理工具和监控方案,帮助开发者解决磁盘空间不足、I/O 性能瓶颈等问题。适合 Java 开发者、DevOps 工程师阅读。