深度学习中backbone、head、neck等概念
1.backbone
翻译为主干网络的意思,既然说是主干网络,就代表其是网络的一部分。这个主干网络大多时候指的是提取特征的网络,其作用就是提取图片中的信息,供后面的网络使用。这些网络经常使用的是ResNet VGG等,而不是我们自己设计的网络,因为这些网络已经证明了在分类等问题上的特征提取能力是很强的。在用这些网络作为backbone的时候,都是直接加载官方已经训练好的模型参数,后面接着我们自己的网络。让网络的这两个部分同时进行训练,因为加载的backbone模型已经具有提取特征的能力了,在我们的训练过程中,会对他进行微调,使得其更适合于我们自己的任务。
在神经网络中,尤其是CV领域,一般先对图像进行特征提取(常见的有vgg,resnet),这一部分是整个CV任务的根基,因为后续的下游任务都是基于提取出来的图像特征去做文章(比如分类、生成等)。
主干网络,用来做特征提取的网络,代表网络的一部分,一般用于前端提取图片信息,生成特征图feature map,供后面的网络使用。通常用VGG或者Resnet,因为这些backbone的特征提取能力是很强,并且可以加载官方在大型数据集(Pascal、Imagenet)上训练好的模型参数,然后接自己的网络,进行微调就可以。
主干网络一般不是我们自己设计的网络,因为这些网络已经证明了在分类问题上的特征提取能力是很强的,在用这些网络作为backbone的时候,都是直接加载官方已经训练好的模型参数,后面接着我们自己的网络,让网络的这两个部分同时训练,加载的backbone模型已经具有特征提取能力了,在我们的训练过程中,会对他进行微调,使得其更适合于我们自己的任务。
2.head
head是获取网络输出内容的网络,利用之前提取的特征,head利用这些特征,做出预测。
3.neck
neck是放在backbone和head之间的,是为了更好的利用backbone提取的特征
4.bottleneck
bottleneck是瓶颈的意思,通常指的是网网络输入的数据维度和输出的维度不同,输出的维度比输入的小了许多,就像脖子一样,变细了。经常设置的参数 bottle_num=256,指的是网络输出的数据的维度是256 ,可是输入进来的可能是1024维度的。
5.GAP
在设计的网络中经常能够看到gap这个层,我之前不知道是干啥的,后了解了,就是Global Average Pool全局平均池化,就是将某个通道的特征取平均值,经常使用AdaptativeAvgpoold,在pytorch中,这个代表自适应性全局平均池化,说人话就是将某个通道的特征取平均值。
6.Embedding
深度学习方法都是利用使用线性和非线性转换对复杂的数据进行自动特征抽取,并将特征表示为“向量”(vector),这一过程一般也称为“嵌入”(embedding)
7.downstream task
用于预训练的任务被称为前置/代理任务(pretext task),用于微调的任务被称为下游任务
8.temperature parameters
在论文中经常能看到这个温度参数的身影,他可以起到平滑softmax输出结果的作用,举例子如下:
import torch
x = torch.tensor([1.0,2.0,3.0])
y = torch.softmax(x,0)
print(y)x1 = x / 2 # beta 为2
y = torch.softmax(x1,0)
print(y)x2 = x/0.5 # beta 为0.5
y = torch.softmax(x2,0)
print(y)#输出结果如下:tensor([0.0900, 0.2447, 0.6652])
tensor([0.1863, 0.3072, 0.5065])
tensor([0.0159, 0.1173, 0.8668])
当beta>1的时候,可以将输出结果变得平滑,当beta<1的时候,可以让输出结果变得差异更大一下,更尖锐一些。如果beta比较大,则分类的crossentropy损失会很大,可以在不同的迭代次数里,使用不同的beta数值,有点类似于学习率的效果。
9.Warm up
Warm up(热身)指的是用一个小的学习率先训练几个epoch,这是因为网络的参数是随机初始化的,一开始就采用较大的学习率容易数值不稳定。
相关文章:
深度学习中backbone、head、neck等概念
1.backbone 翻译为主干网络的意思,既然说是主干网络,就代表其是网络的一部分。这个主干网络大多时候指的是提取特征的网络,其作用就是提取图片中的信息,供后面的网络使用。这些网络经常使用的是ResNet VGG等,而不是我…...
华为OD机试用Python实现 -【Linux 发行版的数量】(2023-Q1 新题)
华为OD机试题 华为OD机试300题大纲Linux 发行版的数量题目描述输入描述输出描述说明示例一输入输出说明Python 代码实现代码编写逻辑华为OD机试300题大纲 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。 华为 OD 清单查看地址:blog.csd…...
Http报文解析
http通信流程浏览器->已监听的web服务器->read->write->close http请求报文: a.请求方法: POST GET DELETE HEAD OPTIONS PUT TRACE b.请求地址: /xxx/yyy/zzz c.报文协议: HTTP/1.1 d.请求报文头: Accept Referer Accept-Language Content-Type Host Content-Len…...
Vue下载安装步骤的详细教程(亲测有效) 2 安装与创建默认项目
上篇请移步到Vue下载安装步骤的详细教程(亲测有效) 1_水w的博客-CSDN博客 上一篇博文已经对Node.js的安装与配置进行了详细介绍。 另外:文中项目存放的路径及项目名称可根据自身实际情况进行更改。 目录 三、Vue安装配置 1、搭建Vue脚手架 2、通过NPM安装Vue …...
TIA博途Wincc中自定义配方画面的具体方法示例
TIA博途Wincc中自定义配方画面的具体方法示例 前面和大家分享了通过TIA博途自带的配方视图组态配方功能的具体方法,具体内容可参考以下链接中的内容: TIA PORTAL wincc中配方recipe组态及配方视图的使用方法 但是,使用配方视图的时候感觉不是很方便,同时一部分使用人员也感…...
Java反射系列--方法大全
原文网址:Java反射系列--方法大全_IT利刃出鞘的博客-CSDN博客 简介 本文介绍Java反射相关的方法。 Class相关方法 方法 说明 getName() 返回String形式的该类的名称。 newInstance() 根据某个Class对象产生其对应类的实例,它调用的是此类的默认构…...
LeetCode 169. 多数元素
LeetCode 169. 多数元素 难度:easy\color{Green}{easy}easy 题目描述 给定一个大小为 nnn 的数组 numsnumsnums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊n/2⌋⌊ n/2 ⌋⌊n/2⌋ 的元素。 你可以假设数组是非空的,并且给…...
来了,metaIPC1.0
metaRTC推出metaIPC正式版1.0,基于metaRTC6.0最新版二次开发,metaIPC是为嵌入式/摄像头量身打造的webRTC版IPC Camera,可安装在国内大多数Soc芯片上,如在君正/瑞芯微/MSTAR/海思等等已经有多个成熟产品应用。 New Feature 支持M…...
WireShark如何进行USB包协议分析
USB协议学习的步骤之一就是从抓包看协议通信,进而学习usb设备开发是怎么回事。这里发现一个工具就是wireshark。 WireShark如果要抓取usb设备的包,需要在安装的时候,选择usbpcap一并进行安装。...
蒙特卡洛随机模拟
蒙特卡洛随机模拟 简介 蒙特卡洛模拟是在计算机上模拟项目实施了成千上万次,每次输入都随机选择输入值。由于每个输入很多时候本身就是一个估计区间,因此计算机模型会随机选取每个输入的该区间内的任意值,通过大量成千上万甚至百万次的模拟…...
Android从屏幕刷新到View的绘制(三)之Handler异步消息与同步屏障
0. 相关分享 Android从屏幕刷新到View的绘制(一)之 Window、WindowManager和WindowManagerService之间的关系 Android从屏幕刷新到View的绘制(二)之Choreographer、Vsync与屏幕刷新 1. 相关类 Handler Handler中维护着它所在的…...
最新版axios@1.3.x取消请求-AbortController-初体验-番茄出品
最新版axios1.3.x取消请求-AbortController-初体验-番茄出品 start 前文提到,axios 中的取消请求,包含两种方式: AbortController;CancelToken; 上篇文章讲解了 CancelToken,今天这篇文章来了解一下 Abor…...
Git的简述
Git 文章目录GitGit概述版本控制工具集中式管理控制工具分步式管理控制工具控制机制Git和代码托管中心安装Git软件Git常用命令Git概述 Git是一个免费的、开源的分步式版本控制系统,可以快速的处理从小型到大型的各种项目 Git 易于学习,占地面积小&…...
webpack实战,手写loader和plugin
序言 对于 webpack 来说, loader 和 plugin 可以算是需求程度最为广泛的配置项了。但是呢,单单止步于配置可能还不够。如果我们自己有时候想要 diy 一个需求,但是 webpack 又没有相关的 loader 和 plugin 。那这个时候我们可能就得开始造点轮…...
STM32CubeMX按键模块化 点灯
本文代码使用 HAL 库。 文章目录前言一、按键原理图二、CubeMX 创建工程三、代码讲解:1. GPIO的输入HAL库函数:2. 消抖:3. 详细代码四,实验现象:总结前言 我们继续讲解 stm32 f103,这篇文章将详细 为大家讲…...
C#专栏目录(长期更新)
文章目录C# 基础C#进阶C#应用WPF基础WPF 3D小游戏C# 基础 1996年,微软用年薪三百万美刀的价格从Borland挖来了大神海尔斯伯格,开始了J开发,用以对抗Java。但SUN公司认为此举违反了Java开发平台的中立性,对微软提出诉讼。C#正是在…...
BurpSuite配置抓取HTTPS数据包
简介 我们在渗透测试的过程中,经常会遇到HTTPS的网站,Burp默认是没有办法抓取HTTPS的包的,想要让Burp抓取Https的包也很好办,只需要浏览器安装相关的证书即可,接下来将配置过程做一个记录。 前置条件: 1.J…...
图片转base64格式返回给前端,前端如何展示?
图片以base64形式在页面上展示出来在这里要说到Data URI scheme,它可以直接将一些小的数据直接嵌入到网页中,不需要再引入。支持格式如下data:, 文本数据data:text/plain, 文本数据data:text/html, HTML代码data:text/html;base64, base64编码的HTML代码…...
C++入门知识【超详解】
目录1.认识Chello worldC关键字2.命名空间3.std标准库4.输入输出5.缺省参数6.函数重载7.引用7.1引用的概念7.2引用的场景1.作参数2.作返回值7.3引用的注意点7.4指针和引用的区别8.auto关键字9.基于范围的for循环10.内联函数10.1概念10.2特征11. C98中的指针空值1.认识C hello …...
零基础、非计算机系学Python该如何上手?
首先我觉得要放平心态,不用过多去纠结是不是专业出身这回事。 想学那就认真去学,我们最终目标是掌握Python这门技能。 非计算机专业同时零基础,想自学Python该如何上手?分享我自学Python的几点建议吧。 1、重视基础 Python是一…...
Node RED实战:5分钟搞定MQTT消息发布与订阅(附EMQX配置)
Node RED与MQTT实战:从零构建物联网消息系统 1. 为什么选择Node RED与MQTT组合? 物联网开发领域一直存在一个核心挑战:如何快速搭建可靠的消息通信系统而不陷入底层协议实现的泥潭。这正是Node RED与MQTT这对黄金组合的价值所在——它们让开发…...
【极限压测】从99.9%全红到5%安全线!2026最新横评5款硬核降AI工具
说真的,作为在知乎摸爬滚打好几年的博主,我太理解大家临近交稿时的那种绝望了。眼看着论文初稿要交,结果降ai检测一出来,竟然是红彤彤的99%?!那一刻,我感觉脑袋真的“嗡”的一声。好不容易熬夜码…...
macOS高效录屏工具实战指南:从入门到专业的QuickRecorder应用技巧
macOS高效录屏工具实战指南:从入门到专业的QuickRecorder应用技巧 【免费下载链接】QuickRecorder A lightweight screen recorder based on ScreenCapture Kit for macOS / 基于 ScreenCapture Kit 的轻量化多功能 macOS 录屏工具 项目地址: https://gitcode.com…...
别再死记硬背了!用Python手把手教你实现数据库闭包自动计算器
用Python实现数据库闭包计算器:从理论到实战的自动化工具 闭包计算是数据库原理中的核心算法,但传统教材往往停留在抽象描述和手工演算阶段。作为曾经被各种箭头符号和递归推导折磨过的开发者,我决定用Python打造一个能自动计算闭包并可视化步…...
HFSS建模进阶:如何高效使用布尔运算和局部坐标系(实战案例解析)
HFSS建模进阶:布尔运算与局部坐标系的高效实战指南 在微波器件和天线设计的数字世界里,精确的三维建模往往是成功仿真的第一步。当您已经掌握了HFSS的基础建模操作后,如何将建模效率提升到专业水平?本文将带您深入探索两个常被忽视…...
SpringBoot实战:RestTemplate如何优雅地上传文件?附完整代码示例
SpringBoot实战:RestTemplate文件上传的深度优化与避坑指南 在微服务架构盛行的今天,SpringBoot应用间的文件传输已成为日常开发中的高频需求。许多开发者在使用RestTemplate进行文件上传时,往往会遇到各种"诡异"的问题——明明代码…...
Sigma-Delta ADC中的Sinc3滤波器:资源优化与面积权衡实战分析
Sigma-Delta ADC中的Sinc3滤波器:资源优化与面积权衡实战分析 在物联网芯片设计中,面积和功耗往往是工程师们最关心的两个指标。当我们需要为一个22位精度的Sigma-Delta ADC集成Sinc3滤波器时,如何在保证性能的前提下最大限度地优化硬件资源&…...
面向对象高级三:内部类 枚举 泛型 java.lang包下常用API
一.内部类1.内部类概述 2.成员内部类(实例内部类)(1)成员内部类可以定义类的一切成员(2)当创建对象时不能直接给内部类创建对象而要先创建外部类的对象 然后new成员内部类的对象(3)在…...
RCLAMP0542T.TCT静电保护TVS 二极管阵列 SEMTECH 电子元器件IC 芯片
RCLAMP0542T.TCT 是由 SEMTECH 公司推出的一款超低电容、双通道ESD(静电放电)保护 TVS 二极管阵列,具备0.45pF 超低电容、5A 浪涌承受能力和超小型 SLP1610P4T 封装,专为高速数据接口设计,广泛应用于通信设备、消…...
拒了一个只要1.8万的45岁大佬
因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享点击关注#互联网架构师公众号,领取架构师全套资料 都在这里0、2T架构师学习资料干货分上一篇:2T架构师学习资料干货分享大家好,我是互联网架构师ÿ…...
