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

东营seo网站排名成都房地产信息网官网

东营seo网站排名,成都房地产信息网官网,wordpress learnpress,800元网站建设✅ YOLOv3 正负样本划分详解 一、前言 在目标检测任务中#xff0c;正负样本的划分 是训练过程中的关键环节。它决定了哪些预测框参与位置回归、分类损失和置信度损失。 YOLOv3 在 YOLOv2 的基础上引入了 多尺度预测 和 更精细的 Anchor Boxes 匹配策略#xff0c;使得正样…✅ YOLOv3 正负样本划分详解 一、前言 在目标检测任务中正负样本的划分 是训练过程中的关键环节。它决定了哪些预测框参与位置回归、分类损失和置信度损失。 YOLOv3 在 YOLOv2 的基础上引入了 多尺度预测 和 更精细的 Anchor Boxes 匹配策略使得正样本的选择更加合理提高了模型的召回率和定位精度。 本文将基于以下来源进行解析 YOLOv3: An Incremental Improvement (论文原文)AlexeyAB/darknet 开源实现 二、YOLOv3 的输出结构回顾 YOLOv3 输出三个不同层级的特征图分别用于检测不同尺度的目标 特征图大小每个 cell 预测的 bounding box 数量对应 anchor boxes13×133大目标26×263中目标52×523小目标 每个 bounding box 的输出维度为 (tx, ty, tw, th, confidence, class_0, ..., class_C)三、YOLOv3 的正负样本划分机制详解 ✅ 核心思想 YOLOv3 中的正样本由以下两个条件共同决定 该 bounding box 的 anchor 与 ground truth 的 IoU 最大该 bounding box 所属的 grid cell 包含物体中心点 注意YOLOv3 不像 Faster R-CNN 使用 RoI Pooling 或 Proposal 机制而是直接对每个 grid cell 的多个 anchor 进行匹配。 正样本划分流程如下来自 Darknet 实现 Step 1: 获取所有 ground truth 框 ground_truth_boxes [...] # list of (x_center, y_center, w, h) 归一化坐标Step 2: 遍历每个 ground truth 框 对于每个真实框 计算其相对于图像的归一化中心坐标确定其落在哪个 grid cell使用 K-Means 聚类得到的 9 个 anchors计算每个 anchor 与该真实框的 IoU找出 IoU 最大的那个 anchor确定这个 anchor 属于哪个层级13×13 / 26×26 / 52×52将该 anchor 所在的 bounding box 设为正样本其余 anchor 若与该真实框的 IoU iou_thresh如 0.5也设为正样本可选 ✅ 正样本选择规则总结 条件是否为正样本anchor 与 GT 的 IoU 最大✅ 强制标记为正样本anchor 与 GT 的 IoU iou_threshold如 0.5✅ 可选标记为正样本无任何 GT 与其重叠❌ 负样本仅部分重叠但不是最大匹配❌ 忽略不参与位置损失 ⚠️ 注意只有负责预测真实框的 bounding box 才会参与位置回归tx, ty, tw, th和类别概率class probs的损失计算。 四、YOLOv3 中各类 loss 的作用对象 Loss 类型作用对象定位损失Localization Loss正样本负责预测的真实框置信度损失Confidence Loss正样本 负样本分类损失Class Probability Loss正样本 五、具体示例说明 假设我们有以下数据 图像尺寸416 × 416Ground Truth Box[0.5, 0.5, 0.2, 0.2]归一化坐标Anchor Boxes对应 52×52 特征图anchors [[10, 13], [16, 30], [33, 23]] # 小目标 anchorsStep-by-step 划分逻辑 确定 GT 中心落在哪个 grid cell cell_x floor(0.5 * 52) 26cell_y floor(0.5 * 52) 26 计算每个 anchor 与 GT 的 IoU ious [iou(anchor, gt_box) for anchor in anchors] best_anchor_idx np.argmax(ious)标记该 anchor 对应的 bounding box 为正样本 假设 best_anchor_idx 0则第 0 个 bounding box 被标记为正样本该 bounding box 的位置信息 (tx, ty, tw, th) 将被监督学习confidence 设为 1class prob 设置为目标类别 其他 anchor 若与 GT 的 IoU threshold如 0.5也可被标记为正样本可选 六、YOLOv3 中的负样本定义 ✅ 负样本的判断标准 该 bounding box 不负责预测任何真实框且与所有真实框的 IoU threshold通常为 0.5只参与置信度损失confidence loss不参与位置和分类损失 七、YOLOv3 中的 ignore 样本非正非负 ✅ 定义 与某个真实框的 IoU threshold如 0.5但不是最大 IoU 的那个 bounding box被标记为“ignore”即 不参与位置损失不参与分类损失参与置信度损失吗取决于实现方式Darknet 中默认不参与 八、YOLOv3 中的标签分配伪代码简化版 for each ground_truth in image:# Step 1: 确定 GT 中心所在的 grid cellcell_x int(gt.x_center * feature_map_width)cell_y int(gt.y_center * feature_map_height)# Step 2: 计算每个 anchor 与 GT 的 IoUious_with_anchors [bbox_iou(anchor, gt) for anchor in anchors]# Step 3: 找到 IoU 最大的 anchorbest_anchor_index np.argmax(ious_with_anchors)# Step 4: 标记该 anchor 为正样本y_true[cell_y, cell_x, best_anchor_index, ...] {tx: tx,ty: ty,tw: tw,th: th,confidence: 1,class_prob: one_hot_label}# Step 5: 可选IoU threshold 的其他 anchor 也被标记为正样本for a in range(num_anchors):if ious_with_anchors[a] ignore_thresh and a ! best_anchor_index:y_true[cell_y, cell_x, a, ...] {confidence: 1, # 仅置信度不更新位置和类别...}九、YOLOv3 中的阈值设置来自 darknet 源码 在官方实现中有两个关键参数影响正负样本划分 参数名含义默认值ignore_thresh若 IoU 该阈值则忽略不参与损失0.5truth_thresh若 IoU 该阈值则强制作为正样本1.0默认只使用最大 IoU 的 anchor 注意YOLOv3 默认只使用 IoU 最大的 anchor 作为正样本其他高 IoU 的 anchor 并不参与训练。 十、YOLOv3 中的正负样本分布特点 维度内容✅ 正样本数量每个真实框 → 至少一个正样本❌ 负样本数量无物体的 bounding box ignore 样本IoU ignore_thresh 但非最大匹配 位置损失仅正样本参与 置信度损失正样本 负样本 分类损失仅正样本参与 十一、YOLOv3 中的损失函数简要回顾 YOLOv3 的损失函数分为三个部分 ⚙️ 1. 定位损失Localization Loss L l o c λ c o o r d ∑ i 0 S 2 ∑ j 0 B 1 i j o b j [ ( x i − x ^ i ) 2 ( y i − y ^ i ) 2 ( w i − w ^ i ) 2 ( h i − h ^ i ) 2 ] \mathcal{L}_{loc} \lambda_{coord} \sum_{i0}^{S^2} \sum_{j0}^{B} \mathbb{1}_{ij}^{obj} \left[ (x_i - \hat{x}_i)^2 (y_i - \hat{y}_i)^2 (\sqrt{w_i} - \sqrt{\hat{w}_i})^2 (\sqrt{h_i} - \sqrt{\hat{h}_i})^2 \right] Lloc​λcoord​i0∑S2​j0∑B​1ijobj​[(xi​−x^i​)2(yi​−y^​i​)2(wi​ ​−w^i​ ​)2(hi​ ​−h^i​ ​)2] 仅对正样本计算此部分损失。 ⚙️ 2. 置信度损失Confidence Loss L c o n f ∑ i 0 S 2 ∑ j 0 B [ 1 i j o b j ⋅ ( confidence i j − confidence ^ i j ) 2 λ n o o b j ⋅ ( 1 − 1 i j o b j ) ⋅ ( confidence i j ) 2 ] \mathcal{L}_{conf} \sum_{i0}^{S^2} \sum_{j0}^{B} \left[ \mathbb{1}_{ij}^{obj} \cdot (\text{confidence}_i^j - \hat{\text{confidence}}_i^j)^2 \lambda_{noobj} \cdot (1 - \mathbb{1}_{ij}^{obj}) \cdot (\text{confidence}_i^j)^2 \right] Lconf​i0∑S2​j0∑B​[1ijobj​⋅(confidenceij​−confidence^ij​)2λnoobj​⋅(1−1ijobj​)⋅(confidenceij​)2] 所有 bounding box 都参与此项损失但负样本权重较低。 ⚙️ 3. 分类损失Class Probability Loss L c l s ∑ i 0 S 2 ∑ j 0 B 1 i j o b j ⋅ ∑ c ∈ classes ( p i ( c ) − p ^ i ( c ) ) 2 \mathcal{L}_{cls} \sum_{i0}^{S^2} \sum_{j0}^{B} \mathbb{1}_{ij}^{obj} \cdot \sum_{c \in \text{classes}} (p_i(c) - \hat{p}_i(c))^2 Lcls​i0∑S2​j0∑B​1ijobj​⋅c∈classes∑​(pi​(c)−p^​i​(c))2 仅正样本参与分类损失。 十二、YOLOv3 的样本划分总结 样本类型IoU 条件是否参与位置损失是否参与置信度损失是否参与分类损失正样本IoU 最大 或 IoU threshold可选✅ 是✅ 是✅ 是ignore 样本IoU threshold 但非最大❌ 否❌ 否Darknet 默认不参与❌ 否负样本IoU threshold❌ 否✅ 是降低 confidence❌ 否 十三、结语 YOLOv3 的正负样本划分机制相比 YOLOv2 更加精细主要体现在 引入多尺度预测提升小目标召回使用 anchor boxes 提升边界框匹配合理性通过 IoU 匹配选择最合适的 bounding box保留传统做法仅最大 IoU 为正样本避免过拟合支持 ignore 阈值防止低 IoU 框干扰训练 欢迎点赞 收藏 关注我我会持续更新更多关于目标检测、YOLO系列、深度学习等内容
http://www.hkea.cn/news/14435527/

相关文章:

  • 做源码网站违法吗网站后台演示
  • 服务佳的网站建设建站公司没前端
  • 教学管理信息服务平台优化大师
  • 网站备案完电信做营销型网站的教程
  • 服务器怎么做网站教程东道网站建设
  • 网站建设方案和报价教育机构网站是
  • 银川建网站那家好新华seo推广
  • 什么软件可以制作网页封面seo如何优化关键词上首页
  • 全栈网站开发者怎么在网站里给图片做超链接
  • 免费网站推广2023谷歌推广网站建设
  • 上海网站设计多少钱北京朝阳区
  • 怎样自己开网站赚钱enfold wordpress主题
  • 苏州怎么做网站排名优化广州网站制作公司联系方式
  • 网站建设报告 宣传做360手机网站优化快
  • 宁波专业网站制作近期时事新闻10条
  • 网站设计前期沟通单温州建设集团有限公司网站首页
  • 企业如何做网站外包多少钱设计网站大全扣西湖南岚鸿首选
  • 那些网站做的比较好网站优化含义
  • 制作网页推广宣传北京网站的优化
  • 网站建设微信运营公司用jsp做留言板网站
  • 我和你99谁做的网站网站做等保是按照什么定级别的
  • 基于ssh架构网站开发为什么我的电脑有些网站打不开
  • 怎么用lls做网站网络建设方式
  • wap网站还有能打开的吗怎么做服务器网站下载链接
  • 国外做地铁设计的公司网站南京网站建设多少钱
  • 湖州公司网站建设网站制作的流程
  • 义乌水务建设集团官方网站建站哪个平台好用
  • vs网站建设弹出窗口代码cwordpress 评论小工具
  • 简要说明网站建设的步骤竞价推广怎样管理
  • 伊利网站设计2023免费推广入口