2023年度端侧transformer类分类力作SwiftFormer模型解读

写在前面:本篇直接结合代码来理解网络的笔记

paper: Swiftformer-paper
code: https://github.com/Amshaker/SwiftFormer

在这里插入图片描述

文章目录

  • 网络结构精析
    • 零、整体
    • 一、patch embed
    • 二、stage

在这里插入图片描述

网络结构精析

零、整体

可以看到结构中,整体就是:
stem -> 5X(convEncoder+Swiftformer) -> head
对应代码在swiftformer.py在大概427行
在这里插入图片描述
head中self.dist的判断是有否蒸馏网络的分支。这就是整个的网络结果,下面讲解各个部分。

一、patch embed

图片预处理输入到 ----> patch embed结构
代码中 swiftformer.py 定义在大概317行
在这里插入图片描述
stem函数的两个参数是:输入通道和输出通道,embed_dims[0]是模型根据尺寸(如XS/X/L1/L3)设定的超参的第0个值。这里输入是通道数是3,图片是3层的,然后定义如下:
在这里插入图片描述

二、stage

未完待续

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

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

相关文章

【C#】MathNet矩阵计算

文章目录 安装索引和计算逐点计算静态方法 MathNet系列:矩阵生成 安装 MathNet.Numerics中提供了线性代数、微积分、特殊函数、概率论、随机函数、插值、最优化等一系列功能,是.net技术中首选的数值计算包。 其中,线性代数包LinearAlgebra…

深度学习——第3章 Python程序设计语言(3.4 Python自定义函数)

3.4 Python自定义函数 目录 1. 函数基础知识 2. 函数的定义(声明)和调用 3. 函数参数传递 4. 函数的返回值 5. lambda函数 随着学习的日渐深入,编写的代码将会越来越复杂,所以我们需要找一种方法对这些复杂的代码进行分解、重…

iphone/安卓手机如何使用burp抓包

iphone 1. 电脑 ipconfig /all 获取电脑网卡ip: 192.168.31.10 2. 电脑burp上面打开设置,proxy,增加一条 192.168.31.10:8080 3. 4. 手机进入设置 -> Wi-Fi -> 找到HTTP代理选项,选择手动,192.168.31.10:8080 …

Windows/Linux 设置固定IP

Windows/Linux 设置固定IP 在开发过程中 会经常遇到要与前端进行本地的联调 过了两天 发现 不知道为什么 ip发生了改变 所以 就写一个 windows 与linux 固定ip的博客 记录一下 Windows 话不多说 看下图 上方输入 ipconfig/all 就会出来一堆信息 下面是一些有用的信息 默认…

超使用的十个JavaScript技巧

前端面试题库 (面试必备) 推荐:★★★★★ 地址:前端面试题库 JavaScript 作为最流行的语言之一,其语法灵活且每年都在不断吸纳新特性,即使是一个从业多年的老手, 偶尔也会有一些被…

04武忠祥0基础

收敛数列的性质 唯一性: 反证法: 发散不一定无界 举个例子,考虑以下数列: a_n (-1)^n 这个数列的每一项交替地取正负值。当 n 是偶数时,a_n 1,当 n 是奇数时,a_n -1。这个数列明显是发…

编程实战:类C语法的编译型脚本解释器(八)编译概览

系列入口:编程实战:类C语法的编译型脚本解释器(系列)-CSDN博客 前面已经介绍了Token、变量、变量表、表达式和语句,现在进入深水区,介绍编译过程,相当于解释型脚本的解释过程。 编译的好处是提前…

GO学习之 单例模式 sync.Once

GO系列 1、GO学习之Hello World 2、GO学习之入门语法 3、GO学习之切片操作 4、GO学习之 Map 操作 5、GO学习之 结构体 操作 6、GO学习之 通道(Channel) 7、GO学习之 多线程(goroutine) 8、GO学习之 函数(Function) 9、GO学习之 接口(Interface) 10、GO学习之 网络通信(Net/Htt…

js占位符 ${} 使用

JavaScript 占位符 在 JavaScript 编程中,占位符是一种特殊的标记或符号,用于指示代码执行时应替换为实际值。占位符通常用于字符串拼接、格式化输出和动态生成代码等场景。本文将介绍 JavaScript 中常用的占位符,并提供相应的代码示例。 字…

在github中通过action自动化部署 hugo academic theme,实现上传md文件更新博客内容

在github中通过action自动化部署 hugo academic theme 一、GitHub Action自动化部署Hugo博客方法 主要参考:【Hugo网站搭建】GitHub Action自动化部署Hugo博客 次要参考:使用 Github Action 自动部署 Hugo 博客 二、部署过程中遇到的问题和解决办法 …

HarmonyOS鸿蒙操作系统架构

目录 1. 分布式架构: 2. 统一的开发平台: 3. 多内核共享: 4. 自适应界面: 5. AR、VR、MR支持: 6. 安全和隐私保护: 7. AI集成: 8. 应用生态系统: 9. 开源和开放&#xff1a…

C#用MathNet生成矩阵,并打印矩阵元素

文章目录 安装创建和显示矩阵 安装 MathNet.Numerics中提供了线性代数、微积分、特殊函数、概率论、随机函数、插值、最优化等一系列功能,是.net技术中首选的数值计算包。 其中,线性代数包LinearAlgebra包提供了向量、矩阵等数据结构,这些是…

振弦采集仪在土体与岩体监测中的可靠性与精度分析

振弦采集仪在土体与岩体监测中的可靠性与精度分析 振弦采集仪是一种用于土体和岩体监测的重要设备,它可以通过测量振动信号来获取土体或岩体的力学参数,如应力、应变、弹性模量等。而振弦采集仪的可靠性和精度是影响其应用效果的关键因素。 首先&#x…

鸿蒙4.0开发笔记之ArkTS语法基础之条件渲染和循环渲染的使用(十五)

文章目录 一、条件渲染(if)二、循环渲染(ForEach) 一、条件渲染(if) 1、定义 正如其他语言中的if…else…语句,ArkTS提供了渲染控制的能力,条件渲染可根据应用的不同状态&#xff0…

竞赛活动过程中评委亮灯是如何实现的

选秀节目中用到的那种评委爆灯效果要通过软件和硬件一起实现,软件实现在新一轮开始时,统一灭灯,评委通过按钮触发软件打开相应的灯,并自动发出声音。其实用到的物料包括:软件、按钮、灯、工业控制器。软件是核心&#…

virtualbox虚拟机安装ubuntu系统,启动黑屏

我在virtualbox虚拟机里面安装ubuntu系统,某次打开就卡在启动界面了。下面这样:(这个截图信息是我在解决了问题之后重新进入ubnutu系统时截取的,不完整,但就是类似这样) 报错信息: error: no s…

解决Kettle无法传输生偏字的问题

最近在搞数据传输,然后涉及到人名的时候,难免会碰到生僻字,utf8是无法存储的,然后我把目标表改为utf8mb4,但是还是无法传输生僻字,这就很奇怪了,明明两边的数据库都是MySQL 5.7x,但是…

【QT】容器类

目录 1.容器类概述 2.顺序容器类 2.1 QList 2.2 QLinkedList 2.3 QVector 2.4 QStack 2.5 QQueue 3.关联容器类 3.1 QSet 3.2 QMap 3.3 QMultiMap 3.4 QHash 3.5 QMuItiHash 1.容器类概述 Qt提供了多个基于模板的容器类,这些容器类可以用于存储指定类…

【labview报错,缺少GOOP Development Suite】

操作 当labview报此错误时,第一类情况为缺少包,第二类为所使用的GPU包已失效 以下为第一类缺包的解决方式 登录VIPM,如何安装VIPM查看此贴:VIPM安装 打开VIPM后,右上角输入goop,双击搜索出的安装包 勾选需要安装的包…

Linux部署Kettle(pentaho-server-ce-9.4.0.0-343)记录/配置MySQL存储

下载地址 Kettle 是一个开源的数据集成工具,它是 Pentaho Data Integration(PDI)项目的一部分。要访问 Kettle 的官方网站,可以通过访问其母公司 Hitachi Vantara 的网站来找到相关信息 官方网站:https://www.hitachi…