IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> YOLO9000论文详解 -> 正文阅读

[人工智能]YOLO9000论文详解

YOLO-9000论文详解 – 潘登同学的目标检测笔记

YOLO-9000介绍

YOLO-9000是YOLO-v2 + 9000分类

TOLO-v2的10个改进

在这里插入图片描述

  1. Batch Normalization: 对mAP有2%的提升, 同时有了BN层就可以不用Dropout了
  2. High Resolution Classifier: 对mAP有4%的提升,预训练网络的时候就用448*448的图片来在ImageNet上训练10轮,而不是像之前一样先训练224*224的然后,输入的是448*448的
  3. Convolutional With Anchor Boxes: 对Recall有7%的提升,移除了对框位置的全连接层,取而代之的是类似于Faster R-CNN的Anchor boxes,最终预测的不再是相对每个cell的偏移量而是预设Anchor boxes的偏移量; 最后训练网络的时候的输入图片是416*416的,因为主干网络有5个池化,最后的feature map是13*13的奇数,是因为YOLO团队发现大部分的图片的obj是在图片中间的,奇数feature map的图片中心的网格能更好的负责要预测的物体; 而13*13的feature map相对于YOLO-v1的7*7的更细粒度,能预测更小的obj;
  4. Dimension Clusters: 既然Anchor boxes是从Faster R-CNN中借鉴的,那么框的数量应该是9,但是YOLO-9000的框的数量不是拍脑袋想出来的,而是通过对GT(x,y,w,h)四个维度采用K-means聚类得到的,但是如果采用欧式距离,对于高大宽小与高小宽大的大框会比高大宽小与高小宽大的小框距离大很多,不适合,于是作者团队提出了IOU的距离度量
    d ( b o x , c e n t r o i d ) = 1 ? I O U ( b o x , c e n t r o i d ) d(box,centroid) = 1 - IOU(box,centroid) d(box,centroid)=1?IOU(box,centroid)
    最后用elbow原则选择了k=5
    在这里插入图片描述

YOLO2cluster_result

  1. Direct location prediction: 在预测框的中心点的位置的时候,采用了类似于Faster R-CNN的计算公式 t x , t y t_x,t_y tx?,ty?是中心点偏移量
    t x = x ? x α w α t y = y ? y α h α t w = log ? ( w w α ) t h = log ? ( h h α ) t_x = \frac{x-x_{\alpha}}{w_{\alpha}} \\ t_y = \frac{y-y_{\alpha}}{h_{\alpha}} \\ t_w = \log(\frac{w}{w_{\alpha}}) \\ t_h = \log(\frac{h}{h_{\alpha}}) \\ tx?=wα?x?xα??ty?=hα?y?yα??tw?=log(wα?w?)th?=log(hα?h?)
    但YOLO团队发现难以收敛,于是又用回了YOLO-v1的相对坐标的概念,将 t x , t y t_x,t_y tx?,ty?通过sigmoid激活函数转化到0-1对中心点偏移量做预测( c x , c y c_x,c_y cx?,cy?是cell的绝对坐标, p w , p h p_w,p_h pw?,ph?是预测的宽高, t o t_o to?是v1的confidence)
    b x = σ ( t x ) + c x b y = σ ( t y ) + c y b w = p w e t w b h = p h e t h P r ( o b j e c t ) ? I O U ( b , o b j e c t ) = σ ( t o ) b_x = \sigma(t_x) + c_x \\ b_y = \sigma(t_y) + c_y \\ b_w = p_we^{t_w} \\ b_h = p_he^{t_h} \\ Pr(object) * IOU(b,object) = \sigma(t_o) \\ bx?=σ(tx?)+cx?by?=σ(ty?)+cy?bw?=pw?etw?bh?=ph?eth?Pr(object)?IOU(b,object)=σ(to?)
    那差别就很明显了,v1是迁就分类将所有回归结果限制在0-1之间,而现在放开了限制通过sigmoid来将结果变换到0-1之间
  2. Fine-Grained Features: 对top-of有1%的提升,在卷积最后一部分(26*26->13*13),将高阶特征与低阶特征相融合,这是ResNet的思想,但是要将两个大小不一的feature map堆叠,采用了passthrough layer的方式进行堆叠,将26*26的特征切成四份13*13的与26*26卷积池化后的进行堆叠,26*26*512 -> 13*13*2048
  3. Multi-Scale Training: 数据增强,与一般的数据增强不同,他们还会对输入的维度做增强,以32为倍数,从320*320到608*608的输入图片尺寸(因为remove了全连接,用的是全卷积所以可以改输入),这是一个trade-off的过程,当输入尺寸小的时候FPS就会高而mAP就会低,当输入尺寸大的时候FPS就会低而mAP就会高
  4. Darknet-19预训练主干网络
    draknet-19

再迁移到目标检测任务,将最后一层卷积去掉,替换成3*3*1024的卷积再接1*1*425(5*(5+80))

YOLO-9000的思想

因为CoCo数据集中只有80个类别, 所以网络只能预测80个类别,YOLO-9000将ImageNet的没有打框但是有label标签的数据也能拿来用,主要思想如下

  • 当数据来自于YOLO-v2的训练数据(有框的图像),那么网络就会计算所有loss(框位置loss,confidence loss,分类loss)
  • 当数据没有框的时候(来自ImageNet的数据), 那么网络只会计算分类的loss

CoCo数据中80类别是比较粗粒度的,而imageNet大赛则是细粒度的, 对于dog来说,CoCo可能只会将其分类为dog,而ImageNet会将它分类成Norfolk terrier, Yorkshire terrier等等,如果将两个数据集的分类用并集弄在一起,那么就会违反softmax的多项式分布假设,因为dog与其子类是层次关系的,不是互斥的; 于是YOLO团队提出了层次分类的模式

Hierarchical classification

根据分类的思想,构建了一个多叉树,来描述这种分类标签的层次结构,在整合了CoCo数据集与ImageNet数据集后,将1000的label数量增加至1369个label(因为增加了父类或者中间类)。而怎么计算这个图像属于哪一类呢,通过YOLO-v2得到1369类别的value值,根据树结构用从根节点到叶节点的概率之积来计算属于某一类的概率,在同一层级中,所有同一级的子节点做softmax将回归所得,属于某一大类的概率,对每一层都做softmax,分别得到条件概率,连乘即可得到叶节点的最终概率

Hierarchical条件概率

Hierarchical多分类softmax

YOLO-9000

YOLO-9000把所有imageNet数据的类别(9000)与CoCo数据集合并起来,总共有9418个class(包括父类),然后将这个思想用在目标检测任务下,最终结果如下

Hierarchical多分类应用在目标检测任务

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-28 11:50:53  更:2022-04-28 11:51:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:46:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码