当前位置: 首页 > news >正文

关于几种卷积

  • 1*1卷积

  • 分组卷积&深度可分离卷积

  • 空洞卷积、膨胀卷积

  • 转置卷积

https://zhuanlan.zhihu.com/p/80041030

https://yinguobing.com/separable-convolution/#fn2

1×1的卷积可以理解为对通道进行加权,对于一个通道来说,每个像素点加权是一样的;而对于一个普通的卷积来说,一个通道上,每个像素点的权重是不一样的;1×1的卷积,对于单个通道上像素点加权是一样的;有几个卷积核就有几个输出特征图;

分组卷积 group convolution;是对输入通道进行分组;输出通道并不是由所有的输入通道共同作用的;会有一种情况,比如输入通道是4,输出通道是2,输出通道的第一个通道只跟输入通道的第1、3个通道有关;输出通道的第二个通道只跟输入通道的第2、4个通道有关;如果输入通道有这样的关系时,我们可以采用分组卷积,设置组数group=2,这时有几个组就会有几个输出通道;这种情况是我们对每个组进行一次卷积,如果我们对每个组进行多次卷积,那么卷积核的个数就会增加了;这样也有一个问题,就是输入特征图的通道之间没有交互,所以这种情况下,在后面的卷积过程中,会有通道之间的随机混合或者用1×1的卷积;poinwise convolution;

深度可分离卷积,是特殊的分组卷积,有几个输入通道,就分成几个组,输入通道之间完全相互独立,deepwise convolution;这种情况下,后面通常会跟着 pointwise  convolution;

空洞卷积 或者 膨胀卷积,对应着Conv2d中的,dilation,默认的api设置是1,在参数量不变的情况下,增加了感受野;指的是索引之间相差多少;指的是两次卷积的索引之间 相差的距离就是dilation-1行 或者 列;输出特征图在计算大小的时候,input_h不变,kernel_h=kernel_h + (dilaiton-1)*(kernel_h-1),对应的计算输出特征图的shape;

关于感受野:

- 2个3×3的卷积核 相当于 1个5×5卷积核感受野

①减少了参数量 ②增加了非线性变换

转置卷积:首先普通卷积的三张理解

  1. 取出区域,逐元素相乘,然后torch.sum函数

  2. 把每次取出的input region拉直,形成矩阵

    5×5的input feature,3×3的kernel,输出3×3的特征图,对着取到input region有9个,我们把9个region拉直成行向量,9个行向量,与 kernel拉成的列向量 进行矩阵相乘,得到输出的列向量,把输出的列向量,reshape成输出特征图的尺寸,完成卷积

  3. 对于kernel每次移动的位置,把kernel填充成跟输入特征图一样的大小,把kernel同样拉直,拼接,按行拼接,input拉成列向量,同样的原理,再reshape 得到输出

那什么是转置卷积呢?转置卷积就是把 得到的 kernel阵拼成的行向量 9×25,转置成25×9,再和输出特征图拉成的列向量 9×1 进行相乘,得到25×1的列向量,这样是不是很神奇,如果再reshape一下,不就变成了 输入特征图的尺寸 5×5

这就是转置卷积,上采样,还原尺寸,注意是还原尺寸,而不会还原具体的数值;所谓转置就是因为我们把拉成行向量的kernel阵,进行了转置。

以下是几张图,帮助理解:

普通卷积:

deepwise convolution

​1×1卷积 pointwise convolution

相关文章:

关于几种卷积

1*1卷积 分组卷积&深度可分离卷积 空洞卷积、膨胀卷积 转置卷积 https://zhuanlan.zhihu.com/p/80041030 https://yinguobing.com/separable-convolution/#fn2 11的卷积可以理解为对通道进行加权,对于一个通道来说,每个像素点加权是一样的&am…...

51单片机教程(五)- LED灯闪烁

1 项目分析 让输入/输出口的P1.0或P1.0~P1.7连接的LED灯闪烁。 2 技术准备 1、C语言知识点 1 运算符 1 算术运算符 #include <stdio.h>int main(){// 算术运算符int a 13;int b 6;printf("%d\n", ab); printf("%d\n", a-b); printf("%…...

VUE3中Element table表头动态展示合计信息(不是表尾合计)

一、背景 原型上需要对两个字段动态合计&#xff0c;输出摘要信息 原先想到是的Element的 :summary-method&#xff0c;发现不是动态&#xff0c;所以换监听来实现 二、vue代码 <el-table v-model"loading" :data"itemList"><el-table-column la…...

git重置的四种类型(Git Reset)

git区域概念 1.工作区:IDEA中红色显示文件为工作区中的文件 (还未使用git add命令加入暂存区) 2.暂存区:IDEA中绿色(本次还未提交的新增的文件显示为绿色)或者蓝色(本次修改的之前版本提交的文件但本次还未提交的文件显示为蓝色)显示的文件为暂存区中的文件&#xff08;使用了…...

【Java集合面试1】说说Java中的HashMap原理?

Java中的HashMap是一种基于哈希表的Map接口实现&#xff0c;它存储的内容是键值对&#xff08;key-value&#xff09;映射。HashMap允许空键&#xff08;null&#xff09;和空值&#xff08;null&#xff09;&#xff0c;并且它的键值对没有顺序。以下是HashMap的一些关键工作原…...

万字长文解读机器学习——决策树

&#x1f33a;历史文章列表&#x1f33a; 机器学习——损失函数、代价函数、KL散度机器学习——特征工程、正则化、强化学习机器学习——常见算法汇总机器学习——感知机、MLP、SVM机器学习——KNN机器学习——贝叶斯机器学习——决策树机器学习——随机森林、Bagging、Boostin…...

内网环境,基于k8s docer 自动发包

背景&#xff1a;生产环境是内网&#xff0c;无法连接外部git环境&#xff0c;需要上传tar包打成镜像&#xff0c;然后发布。 简单写了个脚本&#xff0c;记录下方便复用。 将tar包和脚本拷贝到同一个目录下。 使用方式&#xff1a; tar 包名称格式&#xff1a;服务名-版本号…...

【HCIP园区网综合拓扑实验】配置步骤与详解(已施工完毕)

一、实验要求 实验拓扑图如上图所示 1、按照图示的VLAN及IP地址需求&#xff0c;完成相关配置 2、要求SW1为VLAN 2/3的主根及主网关 SW2为vlan 20/30的主根及主网关 SW1和SW2互为备份 3、可以使用super vlan&#xff08;本实验未使用&#xff09; 4、上层…...

Qt 编写插件plugin,支持接口定义信号

https://blog.csdn.net/u014213012/article/details/122434193?spm1001.2014.3001.5506 本教程基于该链接的内容进行升级&#xff0c;在编写插件的基础上&#xff0c;支持接口类定义信号。 环境&#xff1a;Qt5.12.12 MSVC2017 一、创建项目 新建一个子项目便于程序管理【…...

Qt中 QWidget 和 QMainWindow 区别

QWidget 用来构建简单窗口 QMainWindow 用来构建更复杂的窗口&#xff0c;QMainWindow 继承自QWidget&#xff0c;在QWidget 的基础上提供了菜单栏、工具栏、状态栏等功能 菜单栏&#xff08;QMenuBar&#xff09;工具栏&#xff08;QToolBar&#xff09;状态栏&#xff08;Q…...

Kafka集群中数据的存储是按照什么方式存储的?

1&#xff09;Topic 数据的存储机制 Topic是逻辑上的概念&#xff0c;而partition是物理上的概念&#xff0c;每个partition对应于一个log文件&#xff0c;该log文件中存储的就是Producer生产的数据。Producer生产的数据会被不断追加到该log文件末端&#xff0c;为防止log文件…...

中断的硬件框架

往期内容 本专栏往期内容&#xff0c;interrtupr子系统&#xff1a; 深入解析Linux内核中断管理&#xff1a;从IRQ描述符到irq domain的设计与实现Linux内核中IRQ Domain的结构、操作及映射机制详解中断描述符irq_desc成员详解Linux 内核中断描述符 (irq_desc) 的初始化与动态分…...

数据备份策略:企业防御的关键

数据备份是保护数据免受网络攻击的重要步骤。在从恶意软件或勒索软件攻击中恢复时&#xff0c;公司可以使用保存的备份将其恢复到之前的状态。但是&#xff0c;为了确保数据的完全安全&#xff0c;任何公司的备份策略都应该在其总体策略中包含多种解决方案。 根据关于创建、消…...

Baget 私有化nuget

Baget下载 1、下载运行 方法一&#xff1a;cmd运行 dotnet BaGet.dll --urls http://*:8002 http://localhost:8002 方法二&#xff1a;bat脚本运行Baget 创建Start.bat dotnet BaGet.dll --urls http://*:8002 运行Start.bat 方法三&#xff1a;部署成Window服务 NSSM部…...

前端函数的参数都有哪些?

在前端开发中&#xff0c;函数的分类可以根据不同的标准进行。以下是一些常见的函数分类方式&#xff0c;并附有相应的例子&#xff1a; 按传递方式分类&#xff1a; 按值传递&#xff1a;JavaScript 中的基本类型&#xff08;如数字、字符串、布尔值&#xff09;都是按值传递的…...

【CSS】什么是BFC?

块级格式化上下文&#xff08;Block Formatting Context&#xff0c;简称BFC&#xff09;是CSS布局中的一种重要概念&#xff0c;它决定了块级盒子如何在其容器内排列&#xff0c;以及浮动元素对其周围元素的影响。理解BFC可以帮助解决许多常见的网页布局问题&#xff0c;比如清…...

HCIP小型园区网拓扑实验

1.拓扑以及需求 2.需求分析 需要的核心技术 1、虚拟局域网&#xff08;VLAN&#xff09; 2、链路聚合&#xff08;E-trunk&#xff09; 3、多生成树协议&#xff08;MSTP&#xff09; 4、VLANIF三层逻辑接口 5、虚拟路由冗余协议&#xff08;VRRP&#xff09; 6、动态主…...

GRR测量系统的重复性和再现性

GRR&#xff08;GaugeRepeatabilityandReproducibility&#xff09;即测量系统的重复性和再现性&#xff0c;是用于评估测量系统性能的一个重要指标。以下是对GRR的详细解释&#xff1a; 一、定义 • 重复性&#xff08;Repeatability&#xff09;&#xff1a;在相同条件下&…...

133.鸿蒙基础01

鸿蒙基础 1.自定义构建函数1. 构建函数-[Builder ](/Builder )2. 构建函数-传参传递(单向)3. 构建函数-传递参数(双向)4. 构建函数-传递参数练习5. 构建函数-[BuilderParam ](/BuilderParam ) 传递UI 2.组件状态共享1. 状态共享-父子单向2. 状态共享-父子双向3. 状态共享-后代组…...

科技查新小知识

首先科技查新是什么&#xff1f; 科技查新是文献检索和情报调研相结合的情报研究工作&#xff0c;它以文献为基础&#xff0c;以文献检索和情报调研为手段&#xff0c;以检出结果为依据&#xff0c;通过综合分析&#xff0c;对查新项目的新颖性进行情报学审查&#xff0c;写出有…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

Spring AI 入门:Java 开发者的生成式 AI 实践之路

一、Spring AI 简介 在人工智能技术快速迭代的今天&#xff0c;Spring AI 作为 Spring 生态系统的新生力量&#xff0c;正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务&#xff08;如 OpenAI、Anthropic&#xff09;的无缝对接&…...

JAVA后端开发——多租户

数据隔离是多租户系统中的核心概念&#xff0c;确保一个租户&#xff08;在这个系统中可能是一个公司或一个独立的客户&#xff09;的数据对其他租户是不可见的。在 RuoYi 框架&#xff08;您当前项目所使用的基础框架&#xff09;中&#xff0c;这通常是通过在数据表中增加一个…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...