Advertisement

【论文阅读笔记】YOLO9000: Better, Faster, Stronger

阅读量:

YOLO9000: Better, Faster, Stronger

  • (一)论文链接:
  • (二)核心观点:
  • (三)YOLO的缺陷:
  • (四)Batch Normalization技术:
  • (五)高分辨率分类器系统:
  • (六)卷积神经网络 anchor框增强:
  • (七)维度聚类方法:
  • (八)细粒度特征提取:
  • (九)多尺度训练策略:
  • (十)Darknet-19网络结构:
  • (十一)联合训练框架:
  • (十二)实验结果展示:

(一)论文地址:

https://arxiv.org/abs/1612.08242

(二)核心思想:

基于YOLO的方法,作者结合了批量标准化技术、高分辨率分类器以及预选框工具,开发出了显著提升了效率的YOLO v2。

基于联合训练(Joint Training)算法,能够在海量分类图像识别数据集上进行目标检测任务的训练。经过训练的 YOLO 9000 具备识别 9000 种物体的能力;

(三)YOLO 的不足:

  1. 基于直接回归坐标的方法,该方案在精准预测方面存在不足;
  2. 召回率(recall)较低,表明该方法在检测或分类任务中的召回效果欠佳。

(四)Batch Normalization:

Batch Normalization(批量标准化)是Google研究团队在Inception V2模型中提出的一种方法,其核心是通过线性变换将输入数据转换为均值为0、方差为1的正态分布,从而有效缓解了随着网络深度增加导致的梯度消失问题,同时具有显著的正则化效果。

在这里插入图片描述

在 YOLO 框架中,作者大量采用了 Batch Normalization 技术,这使得系统在目标检测任务中的平均精度(mAP)提升了大约 2%。值得注意的是,这种改进使得我们无需再依赖 Dropout 技术来提升性能。

(五)High Resolution Classifier:

以前的目标检测网络通常都是通过在经过预训练阶段后,Backbone需要适应目标检测任务的特性,这表明在预训练过程中,Backbone主要基于分辨率较低的分类图片进行学习,这与目标检测任务对高分辨率细节的敏感性存在差异。

该研究采用448×448分辨率的图像进行Backbone预训练,并仅在ImageNet上进行10个Epoch的微调训练,最终使mAP指标提升4%。

(六)Convolutional With Anchor Boxes:

为了解决预测框不准确的问题,作者不再采用YOLO直接预测预测框坐标的方法,而是采用类似于Faster-RCNN的预选框方法,专注于预测目标物体的预测框位置和尺寸。

作者去除了YOLO中的全连接层结构和一个池化层配置,以最终结果为目标,构建了一个较大的卷积层。

为了确保图像最后的预测结果具有单中心网格特征,作者采用了 416×416 大小作为输入数据,下采样因子设定为 32,即 2^5,从而提取出一个 13×13 大小的特征层。

为了确保图像最后的预测结果具有单中心网格特征,作者采用了 416×416 大小作为输入数据,下采样因子设定为 32,即 2^5,从而提取出一个 13×13 大小的特征层。

采用锚框(Anchor Boxes)后,尽管mAP降低了约0.3%,但召回率由81%提升至88%,由此可见,YOLO v2仍存在较大的改进潜力。

(七)Dimension Clusters

在这里插入图片描述

为了更准确地进行目标检测任务,作者采用了K-means聚类算法来选择合适的先验框数量。考虑到Faster-RCNN和SSD各自采用的先验框大小都是手动设定的,这可能无法准确表征目标特征,因此需要一种更科学的方法来确定先验框的大小。

距离指标为:

在这里插入图片描述

综合考虑模型复杂度和召回率,最终选定 k=5

在最后的特征层中,其尺寸为 13×13,每个单元格推导出 5 个坐标参数 \{t_x, t_y, t_w, t_h, t_o\},即可推导出:

在这里插入图片描述

其中 b_x,b_y,b_w,b_h 就是最后的预测框坐标,c_x,c_y,p_w,p_h 是 Anchor Box 的坐标;

并且使用 \sigma(t_o) 作为置信度;

在这里插入图片描述

(八)Fine-Grained Features:

在融合低层特征的过程中,作者开发了一个通路层。该层通过提取上一层池化操作后的特征通道,其空间维度为 26×26,通道数量为512。将每个 2×2 的局部空间区域转换为独立的特征通道,从而生成了一个 13×13×4048 的特征层,该层用于后续的预测任务。

(九)Multi-Scale Training:

在这里插入图片描述

YOLO v2 仅包含卷积层和池化层结构,这使得它能够适应不同尺寸的图像输入。因此,YOLO v2 在面对不同尺寸的图像时展现出良好的鲁棒性。

作者在训练过程中设置了32倍数的输入大小,具体数值包括320, 352, ..., 608。每隔10个epoch,作者会重新随机选择一个输入大小。

(十)Darknet-19:

作者还为YOLO v2开发了一个Backbone,在架构上借鉴了VGG网络,但通过大量采用1×1卷积进行降维处理,并在此处采用了全局池化操作,以提升特征提取效果。

在这里插入图片描述

(十一)Joint Training:

该系统分别采用了目标检测数据集和图像识别数据集。在图像识别数据的反向传播过程中,仅采用了分类 Loss,并同时采用了层级分类标签。

在这里插入图片描述

(十二)实验结果:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

全部评论 (0)

还没有任何评论哟~