神经网络:CNN中的filter,kernel_size,strides,padding对输出形状的影响

news2024/11/26 18:38:03

输入数据在经过卷积层后,形状一般会发生改变,而形状的变化往往与以下四个超参数有关。

1,filter(out_channel)

该超参数控制着输入数据经过卷积层中需要与几个卷积核进行运算,而输入数据与每个卷积核进行卷积运算后会产生一个二维矩阵,因此最后会产生 filter 个矩阵,分别分布在输出的各个通道中。故该超参数决定输出的通道数。

2,kernel_size(k)

卷积核的宽高一般来说是相等的,且都等于kernel_size,对应一个n x n x 3 (忽略样本轴)的输入数据,在经过卷积层后,输出的宽高 = 1 + (n - k) // s,双斜杠表示整除,s表示步幅strides。当n,k,s中的某个宽高不相等时,则输出的宽高需分别代入n, k, s的宽高进行计算。

3,strides(s)

步幅的大小决定了视野域(卷积核的形状映射在输入数据上的窗口)每次移动的距离,输出的宽高符合公式 1 + (n - k) // s。
e

4,padding

padding的设置在卷积运算之前就对元输入数据进行修改填充0,一般来说padding可取值VALIDSAME(pytorch中可分别对行列进行填充)。
①当取值为VALID时,则可用公式 1 + (n - k) // s 计算输出的宽高。
②当取值为SAME时,这时 k 的奇偶性就会影响到填充效果。
A:当 k 为奇数时,则上下左右都会填充 (k - 1) / 2 (可整除)个0行,故宽高可用公式 1 + (n + k - 1 - k) // s = 1 + (n - 1) // s(在Pytorch中,当 padding = SAME 时,s 必须等于1)。如下图(n = 5,k = 3,s = 1)
在这里插入图片描述

B:当k为偶数时,则上下左右都会填充(k - 1 - 1) / 2 = (k - 2)/ 2 个0行,然后下与右再填充1个0行,故宽高可用公式 1 + (n - k + k - 2 + 1) // s = 1 + (n - 1) // s 。如下图(n = 5,k = 2,s = 1)
在这里插入图片描述
综上所述:当取值为SAME时,输出的宽高可用公式 1 + (n - 1) // s 计算。
欢迎提问!

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

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

相关文章

【P57】JMeter 保存响应到文件(Save Responses to a file)

文章目录 一、保存响应到文件(Save Responses to a file)参数说明二、准备工作三、测试计划设计 一、保存响应到文件(Save Responses to a file)参数说明 可以将结果树保存到文件 使用场景:当结果太大,使…

Mybatis插件001分页 pagehelper

Mybatis-PageHelper/Important.md at master pagehelper/Mybatis-PageHelper GitHubMybatis通用分页插件. Contribute to pagehelper/Mybatis-PageHelper development by creating an account on GitHub.https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis…

短视频社区的商业化和流量分发

商业化本质上是一门流量生意,那么为什么要做流量? 1、流量分配影响社区生态 一个社区的总流量是要在三类流量里面做分配,此消彼长: 私域流量公域流量(中心化运营 算法推荐)商业化的流量(也是…

chatgpt赋能python:Python代码的保存:保障开发效率和代码质量

Python 代码的保存:保障开发效率和代码质量 Python 是一种高级语言,被广泛应用于数据分析、机器学习、 Web 开发等各个领域。它的语法简洁、易于学习,拥有丰富的标准库和第三方库,帮助开发者快速实现功能。在这样一个代码生产效率…

[ruby on rails] passenger+nginx 部署rails

安装Passenger 方法1 Passenger 是一个 app server,支持基于 Rack 框架的 Ruby app(包括 Rails),作为模块变异到Nginx,不需要自己启动。 安装 Passenger 最简单的方法是通过 apt 安装,首先导入 Passenger…

英语4级技巧

真题链接:https://pan.baidu.com/s/1IZ0MmEpkANUm77ZLDmHs1A?pwd1111 提取码:1111 一、听力技巧 听到什么选什么 听发音 4级 90% 6级 60% 1、开头原则 2、顺序原则 1、单词发音/语音现象(连读、弱读、失去爆破) 反转词&#…

chatgpt赋能python:Python如何产生随机整数?

Python如何产生随机整数? Python是一种高级编程语言。它允许程序员轻松地创建各种类型的应用程序,包括生成随机整数。本文将介绍如何在Python中使用内置的随机数函数来生成随机整数。 random模块 Python中的random模块提供了生成随机数的函数。这些函…

chatgpt赋能python:Python实现二分查找

Python实现二分查找 在计算机科学中,二分查找是一种在有序数组中查找特定值的算法。 以一个有序数组为例,二分查找从数组的中间元素开始查找。如果需要查找的值与中间元素相同,则返回中间元素的位置。否则,如果查找的值比中间元…

ubuntu 20.04 aarch64 平台交叉编译 glib

glib 是什么? glib 是一个比较强大的 软件库,类似于 libc 库 交叉编译 当前需要移植到 aarch64(ARM64)平台上,需要使用 aarch64 交叉编译工具链编译 glib 环境准备 ubuntu 20.04 安装较新版本的 meson &#xff1…

使用大型语言模(LLM)构建系统(三):思维链推理

今天我学习了DeepLearning.AI的 Building Systems with LLM 的在线课程,我想和大家一起分享一下该门课程的一些主要内容。 下面是我们访问大型语言模(LLM)的主要代码: import openai#您的openai的api key openai.api_key YOUR-OPENAI-API-KEY def get_…

vue3中的插槽

目录 什么是插槽插槽的类型默认插槽具名插槽作用域插槽 插槽的默认内容动态组件中使用插槽插槽的组合使用插槽的高级用法插槽复用将动态组件作为插槽 插槽的优先级规则 什么是插槽 插槽是组件中用来承载内容的一种机制,可以让组件在运行时接受来自其它组件的任意内…

【后端面经-数据库】MySQL的存储引擎简介

【后端面经-数据库】MySQL的存储引擎简介 MySQL的存储引擎0. 存储引擎的查看和修改1. MyISAM2. InnoDB3. MEMORY4. MERGE5. 总结6. 参考博客 MySQL的存储引擎 mysql主要有四类存储引擎,目前主要使用InnoDB作为存储引擎。 0. 存储引擎的查看和修改 查看当前数据库…

Oracle子查询改写的几种方式

子查询定义 子查询是嵌套在另一个语句(如SELECT,INSERT,UPDATE或DELETE)中的SELECT语句。 通常,可以在任何使用表达式的地方使用子查询。 例子 比如从以下的病人信息中查询最近一个月住院年龄最大的病人信息 从以上的信息中我们知道病人出生日期BIRTHDATE ,限制取数的时…

chatgpt赋能python:Python二次方函数——优化您的SEO排名

Python二次方函数——优化您的SEO排名 如果您是一位拥有10年Python编程经验的工程师,您可能已经知道Python是一个强大的编程语言,虽然它不是专业的SEO工具,但是它可以用于优化SEO排名,尤其是当您需要通过Python编写一个二次方函数…

【计算机组成原理与体系结构】指令系统

目录 一、指令格式 二、扩展操作码 三、指令寻址 四、数据寻址 五、x86汇编指令 六、RISC-V架构 七、RV32I指令集 一、指令格式 根据地址码格式分类 根据操作类型进行分类 二、扩展操作码 三、指令寻址 指令寻址:下一条预执行指令的地址(始终有…

chatgpt赋能python:Python如何从右往左取数

Python如何从右往左取数 在Python编程中,有时候需要从右往左获取列表、字符串等数据结构的元素,而不是从左往右。这样做的好处在于可以更快地访问最后几个元素,或者进行一些反向操作。本文将介绍Python中从右往左取数的方法。 索引与切片 …

【DC综合】DC工具 report_timing 命令的一些选项

report_timing选项 report_timing 的全部参数[ -to to_list | -rise_to rise_to_list | -fall_to fall_to_list ][ -from from_list | -rise_from rise_from_list | -fall_from fall_from_list ][ -path_type short | full | full_clock | full_clock_expanded | only | end ][…

智能工厂元宇宙 工业互联网云平台的架构与功能解析

随着工业领域的数字化转型和物联网技术的发展,工业互联网云平台作为实现智能制造和工业自动化的关键技术之一,引起了广泛关注。工业互联网云平台通过将传感器数据、设备状态和生产信息等连接到云端,实现数据的采集、存储、分析和应用&#xf…

chatgpt赋能python:Python中如何一行输入多个数据

Python中如何一行输入多个数据 在Python中,我们有时需要一次性输入多个数据,作为程序的输入。常见的情况包括输入一组数字、输入多个字符串等。在本文中,我们将介绍多种方法来实现一行输入多个数据。 方法一:使用input函数 Pyt…

IP组播5_PIM-SM(ASM)详解

目录 1.PIM-SM(ASM)简介 2.PIM-SM(ASM)工作原理 2.1 什么是DR? 2.2 什么是RP? 2.2.1 静态RP 2.2.2 动态RP 2.3 组播源注册和RPT建立 2.4 SPT切换 3. PIM-SM(ASM)实验 3.1 …