10 卷积网络 convolutional networks

news2024/10/6 10:30:52

卷积

如果将图片从 H ∗ W ∗ C H*W*C HWC 拉伸到 N ∗ 1 N*1 N1 的维度,而参数矩阵又是 N ∗ M N*M NM 的大小。N很大,M也很大。整个网络中的参数量会变得巨大。

卷积过程,使用一个filter 在整个图片上滑动。
当然输入的图象可能有多个channel,输出的图象也可以有更多的channel
请添加图片描述

请添加图片描述

Padding 填充

当卷积完成之后,会发现输出图像的 H W 高和宽都小了一圈。
这时我们需要进行填充。一般都是填充0.
如果卷积核的大小是奇数的k,那么在图像周围一圈填充的宽度是 (k-1)/2

请添加图片描述

Strided Convolutions / Pooling 步幅卷积池化

用于对输入数据进行下采样,有助于减少网络的计算复杂度并提高其对新数据的泛化能力。

Pooling

池化是将输入分成非重叠的区域,并在每个区域内取最大值或平均值。

步幅卷积

使得卷积核以大于一的步幅在图像上进行滑动。

Grouped Convolutions 分组卷积

如果输入、输出的channel数依然很大,会导致卷积核中的参数依然很多。会导致过拟合并且降低计算速度。

使用分组卷积,将输出的channel和输入的channel都分组。 对应分组的输出channel只和对应的分组的输入channel相关。

请添加图片描述

Dilations

扩张卷积(Dilated Convolution),也称为空洞卷积(Atrous Convolution),是一种在卷积神经网络中常用的操作。它可以增加卷积神经网络的有效感受野(Effective Receptive Field),从而扩大网络的感受野范围,以提高网络对全局信息的感知能力。

但是如果使用扩张卷积,想要输入和输出得到相同的大小,必须增加更多的填充。

请添加图片描述

卷积的微分操作

定义卷积操作
z = c o n v ( x , W ) z = conv(x, W) z=conv(x,W)
在进行反省传播时,我们需要计算伴随矩阵

v ˉ ∂ c o n v ( x , W ) ∂ W , v ˉ ∂ c o n v ( x , W ) ∂ x \bar{v}\frac{\partial conv(x,W)}{\partial W} , \bar{v}\frac{\partial conv(x,W)}{\partial x} vˉWconv(x,W),vˉxconv(x,W)

考虑对于简单矩阵乘法运算

z = W x z = Wx z=Wx
∂ z ∂ x = W \frac{\partial z}{\partial x} = W xz=W
得到伴随矩阵 ▽ x y = W T v \triangledown_{x} y = W^Tv xy=WTv

当向下游传递的时候,我们只需要计算 W T W^T WT,便可以计算梯度。

对于卷积操作又该怎么求 W T W^T WT

请添加图片描述
请添加图片描述

当我们计算梯度伴随的时候,向下游传递的值为 W ^ T v \hat{W}^T v W^Tv ,相当于将卷积核反转进行卷积。

请添加图片描述

对卷积操作求梯度,相当于上游梯度 v 与 卷积核W的反转进行卷积。

v ˉ ∂ c o n v ( x , W ) ∂ W \bar{v}\frac{\partial conv(x,W)}{\partial W} vˉWconv(x,W) 这个情况怎么求?

请添加图片描述

将x展开成上面的式子的情况,可以使用 im2col 函数进行操作。

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

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

相关文章

普通人决策正确率如何提升

简洁回复:非常非常非常难,几乎不能。 举个简单例子: 高考报志愿,能走到高考这一步的并取得成绩的,从幼儿园到高中,3633,这个赛道奔跑了15年。 大部分人这里指的是考生自己,花费在填…

Unity LayerMask原理和判断包含关系

在本文之前,请先了解全部位操作的含义,否则继续下去会很困难。 本质:32位整数的每一位表示一个层 LayerMask本质上是一个32位的整数(Int32 ,int),每个位代表一个图层,因此LayerMask最多可以表示32个图层(0…

Vue3组件间的通信方式

目录 1.props父向子组件通信 2.自定义事件 子向父组件通信 3.全局事件总线 4.v-model组件通信(父子组件数据同步) 绑定单个数据同步 绑定多个数据同步 5.useAttrs组件通信 6.ref与$parent ref获取子组件实例对象 $parent获取父组件实例对象 7.p…

大采购,助力提升国有企业采购供应链管理水平

2023年7月11日-12日,由中国物流与采购联合会主办、北京筑龙承办的主题为“数智赋能创新发展”的“第四届国有企业数智化采购与智慧供应链论坛”在北京盛大举行。来自中央企业、地方国企采购与供应链部门相关负责人、业界专家、行业媒体代表等齐聚一堂、共襄盛会。北…

HCIP第十二天

题目 拓扑图 sw1、sw2、sw3分别创建VLAN、划分接口,配置干道 VLAN间路由 所有PC通过DHCP获取IP地址 PC1/3可以正常访问PC2/4/5/6

【学会动态规划】解码方法(4)

目录 动态规划怎么学? 1. 题目解析 2. 算法原理 1. 状态表示 2. 状态转移方程 3. 初始化 4. 填表顺序 5. 返回值 3. 代码编写 写在最后: 动态规划怎么学? 学习一个算法没有捷径,更何况是学习动态规划, 跟我…

国内流行的数据可视化软件工具

在信息爆炸的时代,越来越多的数据堆积如山。但是,这些密集的数据没有重点且可读性较差。因此,我们需要数据可视化来帮助数据易于理解和接受。相比之下,可视化更直观、更有意义,使用适当的数据可视化工具来可视化数据非…

C++入门 - 1(几分钟让你快速入门C++)

c入门 1. C关键字(C98)2. 命名空间2.1 命名空间定义2.2 命名空间使用 3. C输入&输出4.缺省参数4.1 缺省参数概念4.2 缺省参数分类 5. 函数重载5.1 函数重载概念5.2 C支持函数重载的原理--名字修饰(name Mangling)提问:C语言中为什么没有函数重载呢? …

常见的网络拓扑结构,你都看懂吗

常见的网络拓扑结构有以下6种:1.总线型网络拓扑结构;2.星型网络拓扑结构;3.环形网络拓扑结构;4.树型网络拓扑结构;5.网状网络拓扑结构;6.混合网络型拓扑结构。其中,“总线型网络拓扑结构”是所有…

Redis学习(三)持久化机制、分布式缓存、多级缓存、Redis实战经验

文章目录 分布式缓存Redis持久化RDB持久化AOF持久化 Redis主从Redis数据同步原理全量同步增量同步 Redis哨兵哨兵的作用和原理sentinel(哨兵)的三个作用是什么?sentinel如何判断一个Redis实例是否健康?master出现故障后&#xff0…

QT中级(7)- 串口工具

QT中级(7)- 串口工具 1 串口通信的基础知识2 需要准备的工具3 Qt中的串口编程3.1 引入QSerialPort3.2 设置参数3.3 读取数据3.4 发送数据 4 源码 1 串口通信的基础知识 串行与并行:串口通信是一种串行通信方式。这意味着数据一位一位地通过通…

面试中关于自动化测试的认识

目录 一、什么是自动化测试,自动化测试的优势是什么? 二、什么样的项目比较适合做自动化测试,什么样的不适合做自动化测试? 三、在制定自动化测试计划的时候一般要考虑哪些点? 四、编写自动化脚本时的一些规范&…

02. 第一个Docker部署应用

目录 1、前言 2、Docker部署Nginx 3、修改镜像存储路径 3.1、默认存储路径 3.2、自定义存储路径 3.2.1、创建自定义的镜像存储路径 3.2.2、创建Docker守护进程的配置文件 3.2.3、重启docker服务 3.2.4、重新查看docker路径 4、配置镜像加速 4.1、配置阿里镜像加速器…

Unity 之 安卓平台上架隐私问题解决方案

Unity 之 助力游戏增长 -- 解决隐私问题 一,平台测试隐私问题二,解决方式一2.1 勾选自定义Mainifest2.2 修改自定义Mainifest2.3 隐私协议弹窗逻辑 三,解决方式二3.1 导出安卓工程3.2 创建上层Activity3.3 配置AndroidManifest 四&#xff0…

SOMEIP协议----第一节(概述)

SOMEIP协议 概述 1.什么是SOME/IP? SOME/IP: 如上图所述,连起来就是基于车载以太网技术的面向服务的可扩展中间件 汽车某ECU软件算法如果需要和其他ECU交互,大部分都通过跨ECU之间的服务来实现,即可以通过车载以太网异步调用其他ECU上的服务,应用开发者只需要关注服务…

携带时间戳主动写入数据到prometheus service

使用到的github公开项目 https://github.com/castai/promwrite 拉下来装依赖,然后使用 client_test.go t.Run(“write with custom options”, func(t *testing.T) 这个测试用例里面,删掉srv初始化的部分,这个是模拟一个客户端,直…

MySQL数据备份与恢复

目录 ​编辑 一、数据备份 1.1物理备份 1.1.1冷备份 1.1.2热备份 1.1.3温备份 二、逻辑分区 2.1完全分区 2.2差异分区 2.3增量备份 三、数据备份恢复实验 3.1做一个数据 3.2物理冷备份与恢复 3.3mysqldump 备份与恢复(温备份) 3.4Mysql数据…

mmdetection3.1.0 训练自己的数据集

目录 前言安装mmcv安装mmdetection验证安装数据集转为COCO划分训练集、验证集及测试集安装PaddlePaddle安装PaddleX划分数据集 修改对应文件修改coco.py重新安装修改模型文件 训练测试测试带真值的图像测试不带真值的图像批量测试 错误集锦ValueError: need at least one array…

设计模式 ~ 发布订阅者

发表订阅者模式 用于实现对象之间的松耦合通信; 在该模式中,存在一个或多个发布者(Publishers)和一个或多个订阅者(Subscribers); 发布者负责发布消息,而订阅者负责订阅感兴趣的消息…

C++中的“三重”

博文内容:重载、重定义(隐藏),重写(覆盖) 三重区别及联系 概念联系及区别1、作用域2、函数要求 概念 重载 函数名相同,函数的参数列表不同(包括参数个数和参数类型),至于返回类型可同可不同。 …