yoloV2细节改进

news2024/11/18 3:47:17

文章目录

  • 1 v2 细节升级概述
  • 2 .网络结构特点
  • 3. 架构细节解读
  • 4. 基于聚类来选择先验框尺寸
  • 5. 偏移量计算方法
  • 6. 坐标映射与还原
  • 7 感受野
  • 8. 特征融合的改进
  • 其他知识点
    • filter 是什么?

1 v2 细节升级概述

在这里插入图片描述

2 .网络结构特点

  1. 使用dropout,杀死部分神经元,使得神经没那么复杂,防止过拟合
  2. V2 舍弃Dropout,卷积后全部加入Batch Normalization
  3. Batch Normalization 归一化,让网络收敛,学习速度更快
  4. conv-BN, 已是目前网络的标配。
    在这里插入图片描述
    在这里插入图片描述
  5. 使用更大的分辨率(V1训练时使用224)

3. 架构细节解读

在这里插入图片描述

7.为啥是416416,不是448448,需要经过5次降采样,所以要能被32整除,并且除得的结果是奇数,比如最后是1313,只有一个中心点,如果最后结果是偶数,则有4个中心点,不好处理。
8. DarkNet 19 ,19层卷积层
9.问题: Filter 是什么,为什么数值一直在增加?
9. 网络模型都是卷积,没有全连接层,做起来省事,省参数,比较快,
10. 卷积核3
3,1*1,比较小,感受野比较大。

4. 基于聚类来选择先验框尺寸

在这里插入图片描述
11.Faster RCNN: 9种,按照 1:1,1:2,2:1, 3*3=9种
12. v2: 使用k-means 聚类,将实际打标的框聚类,比如聚成5类,将每类的中心点作为一个框。但是不使用欧式距离,使用 1-IOU作为距离**。(V2的特点)**
13. 如何确认聚类的类数呢? 做了一个折中,k=5时,平均IOU值还不错,再往上的话,IOU提升不明显,所以k=5。

5. 偏移量计算方法

在这里插入图片描述
问题:使用先验框前后,mAP值没有提升。原因在于,虽然候选框多了,但是不是所有的候选框都能发生作用。
在这里插入图片描述
在这里插入图片描述
sigmoid函数,(0-1)之间,在这里插入图片描述

6. 坐标映射与还原

pw ph 为先验框
14. 特征图为降采样以后的,还原到原图的话,*采样倍数(32)

7 感受野

在这里插入图片描述 感受野的大小跟卷积有关。1–>33–>55 。 在这里插入图片描述
15. 为什么要用小的卷积核,不用大的卷积核?卷积核大的话,参数多。并且卷积核小一点,卷积过程越多,特征提取也会越细致。
在这里插入图片描述
卷积核的第三个维度要跟输入的第三个维度一样,c个卷积核,再*c

8. 特征融合的改进

在这里插入图片描述
16. 最后一层感受野太大了,小目标可能丢失了,需融合之前的特征。
倒数前几层的感受野可能比较小,如19层是大目标的感受野,17层是小目标的感受野
将前一层2626523分为4个 41313512,跟13131024相加后得到 5124+1024=3072 30721313
17. 多尺度, 没有全连接层,只有卷积层,不同大小的图像尺寸均可以。
在这里插入图片描述

其他知识点

filter 是什么?

神经网络中的filter (滤波器)与kernel(内核)的概念

kernel: 内核是一个2维矩阵,长 × 宽;

filter:滤波器是一个三维立方体,长× 宽 × 深度, 其中深度便是由 多少张内核构成;

两者之间的关系:可以说 kernel 是filter 的基本元素, 多张kernel 组成一个filter;

那么, 一个filter 中应该包含多少张 kernel 呢?

答:是由输入的通道个数所确定, 即,输入通道是3个特征时,则后续的每一个filter中包含3张kernel ;

filter输入通道是包含128个特征时, 则一个filter中所包含kernel 数是128张。

那么一层中应该有多少个filter 构成呢?

答: 我们想要提取多少个特征,即我们想要输出多少个特征,那么这一层就设置多少个filter;

一个filter 负责提取某一种特征,N个filter 提取 N 个 特征;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/496498.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java集合之单列集合

分类 集合分为单列集合(Collection)和双列集合(Map) 单列集合的体系结构 List集合和Set集合的区别 List系列集合:添加元素是有序的(添加的顺序,而非数据的大小顺序)、可重复、有索引…

为什么在Ubuntu系统使用附加驱动更新Nvidia显卡驱动不起作用

1. 硬件环境 CPU:AMD Ryzen 9 5950x 16-core processor 32 GPU:双GeForce RTX 3090 操作系统:Ubuntu 22.04.2 LTS 64 位 主板:ASUS的ROG CROSSHAIR VIII EXTREME 2. 问题描述 使用上图所示的附加驱动程序更新Nvidia显卡驱动&am…

恢复item2和oh-my-zsh的配置

1. 首先正常安装item2 2. 加载onedrive里的传家宝iterm2_default_profile.json,让iterm2的配置生效 2. 然后正常安装oh-my-zsh (官方步骤: sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)&q…

C# 学习abstract

abstract 顾名思义:抽象 从微软官方文档来看:abstract 修饰符指示被修改内容的实现已丢失或不完整。 abstract 修饰符可用于类、方法、属性、索引和事件。 在类声明中使用 abstract 修饰符来指示某个类仅用作其他类的基类,而不用于自行进行…

linux内核调试的几个方法

参考 以下内容: Linux 笔记: https://xuesong.blog.csdn.net/article/details/109522945?spm1001.2014.3001.5502 printk: printk在内核源码中用来记录日志信息的函数,只能在内核源码范围内使用。用法和printf非常相似; printk…

InsCode体验报告

文章目录 前言一、InsCode是什么?二、体验过程1.创建项目2.在线IDE3.运行和部署项目4.浏览和学习项目5.分享和协作项目6.支持AI助手 三、体验感受优点缺点 总结 官方宣传视频 InsCode-AI 前言 作为一个大三计算机专业的学生,我对编程有着浓厚的兴趣和热…

Triloga 的任务 — Satta 系列来袭!

谁战胜了这些凶兽,谁就获得了力量,让我们通过装备体现出来!来自神秘洞穴的疯狂昆虫外壳,黄昏之地燃烧中的部落的骨质盔甲,以及深海的美妙灯光。 Triloga 的任务——Satta 系列已在 The Sandbox 市场平台上架&#xff1…

JVM(类的加载与ClassLoader、双亲委派机制)

文章目录 1. 类的生命周期2. 类的加载过程3. 类加载器(classloader)3.1 类加载器的作用3.2 类加载器的分类(JDK8)3.3 双亲委派机制3.3.1 双亲委派机制优势 3.4 查看某个类的类加载器对象3.5 使用ClassLoader获取流 1. 类的生命周期 类在内存中完整的生命周期&#…

( “ 图 “ 之 并查集 ) 684. 冗余连接 ——【Leetcode每日一题】

❓684. 冗余连接 难度:中等 树可以看成是一个连通且 无环 的 无向 图。 给定往一棵 n 个节点 (节点值 1~n ) 的树中添加一条边后的图。添加的边的两个顶点包含在 1 到 n 中间,且这条附加的边不属于树中已存在的边。图的信息记录于长度为 n…

基于 EKS Fargate 搭建微服务性能分析系统

背景 近期 Amazon Fargate 在中国区正式落地,因 Fargate 使用 Serverless 架构,更加适合对性能要求不敏感的服务使用,Pyroscope 是一款基于 Golang 开发的应用程序性能分析工具,Pyroscope 的服务端为无状态服务且性能要求不敏感&…

Java阶段二Day14

Java阶段二Day14 文章目录 Java阶段二Day14复习前日知识点SpringFramework版本SpringFramework核心SpringFramework创建工程SpringFramework相关概念bean对象的创建过程xml配置文件中的标签 基于XML管理bean对象类型属性的注入数组类型属性注入集合类型属性注入p命名空间引入外…

ConMask: Open-World Knowledge Graph Completion

目录 Abstract Introduction Model Relationship-Dependent Content Masking Target Fusion Loss Function [1711.03438] Open-World Knowledge Graph Completion (arxiv.org) Abstract 引入一个名为ConMask的开放世界KGC模型,该模型学习实体名称和部分文本…

数据结构与算法基础-学习-23-图之邻接矩阵与邻接表

目录 一、定义和术语 二、存储结构 1、邻接矩阵 1.1、邻接矩阵优点 1.2、邻接矩阵缺点 2、邻接表 3、邻接矩阵和邻接表的区别和用途 3.1、区别 3.2、用途 三、宏定义 四、结构体定义 1、邻接矩阵 2、邻接表 3、网数据类型(造测试数据) 五…

如何使用TRIZ理论来分析问题和解决问题?

文章目录 TRIZ基础现代TRIZ步骤 TRIZ基础 现代TRIZ 经典的TRIZ方法对专利进行分析,认为专利分为两个部分,一部分是需要解决的问题,一部分是解决问题的解决方案.首先是问题的分析,确定是否是初始问题,比如工具功能分析/特性传递等工具. 步骤 问题识别 主要是识别出初始问题;…

MATLAB实现建筑热平衡模型建立及节能温控方案

全球大约1/3的能源消耗于建筑。在能源紧张的今天,如何减少建筑的能源浪费是一个值得研究的课题。 本文在综合国内外建筑能耗模拟方法的基础上,采用热平衡法,针对一小型建筑建立了热特性仿真模型,选用武汉地区的气象数据&#xff…

JAVA11新特性

JAVA11新特性 概述 2018年9月26日,Oracle官方发布JAVA11.这是JAVA大版本周期变化后的第一个长期支持版本,非常值得关注.最新发布的JAVA11将带来ZGC HttpClient等重要特性,一共17个需要我们关注的JEP,参考文档http://openjdk.java.net/projects/jdk/11/ 181:基于嵌套的访问控制…

云计算适合大专生学吗?

云计算适合大专生学吗? 对于大专毕业生来说,云计算的确是一个不错的选择,因为云计算技术应用专业,主要就是专科院校在办学。不管你是计算机相关专业的,还是零基础想学习都是可以的;原因就在于云计算这门专业…

七款非常好用的 ChatGPT 开源插件

推荐7款很好用的 ChatGPT 开源插件 1. ChatGPT ProBot 这是一个基于chatGPT实现的Github机器人,可以让chatGPT帮你审核代码、重构代码,还可以在Github页面上和它进行聊天,咨询问题。 仓库地址: github.com/oceanlvr/Ch… 2.chatgpt-api 这…

如何在本地部署运行ChatGLMS-6B

在本篇技术博客中,将展示如何在本地获取运行代码和模型,并配置环境以及 Web GUI,最后通过 Gradio 的网页版 Demo 进行聊天。 官方介绍 ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM)…

图应用替换算法

文章目录 LRUSHiPBeladys MIN replacement(T-OPT)图应用基本知识CSR和CSCT-OPT替换算法使用 P-OPTRereference MatrixModified Rereference Matrix LRU 过于简单不做具体介绍 SHiP SHiP全称Signature-base Hit Predctor算法,其主打的是基于Signature(签名)进行Pr…