AI一点通:卷积神经网络的输出节点大小如何计算?全连接层必要输入大小如何设置

news2024/9/23 23:31:21

在使用卷积网络(CNN)时,一个步骤是计算经过卷积和池化步骤后的输出大小,以便我们可以将输出连接到一个完全收集的线性层。

以Pytorch中的一维CNN为例,

 self.conv1 = nn.Conv1d(in_channels=1, out_channels=64, kernel_size=3, padding=1)

重要的参数包括input_channels,这里我们设置为1,但它可以根据你拥有的特征数量而多于1。在二维图像案例中,输入通道可以是RGB,在一维数据案例中,可以是时间序列问题中的多个传感器测量值。output_channels由我们在卷积中使用的滤波器数量决定,在我们的例子中,我们将其设置为64,意味着我们正在使用64个滤波器。kernel_size是我们使用的卷积滤波器的大小。padding用于调整空间分辨率。

所以,这个一维卷积模块的总输出大小等于out_channels乘以每个滤波器的输出大小。计算每个滤波器确切输出大小的公式是:

在这里插入图片描述

从公式中,我们可以看到它受到许多因素的影响,包括每个通道(在我们的例子中是1个通道)的序列输入大小、核心大小、填充大小和步长大小(通常设置为1)。

卷积层中的填充

填充指的是在执行卷积操作之前向输入数据添加额外元素(通常是零)。
这样做是为了控制卷积层输出的大小。

填充的效果

填充的主要目的是允许控制输出张量的空间维度(在本例中为长度)。
通过填充,你可以保持输入的大小,增加它,或控制它减少的量。
特别是,填充可以用来确保层的输出大小与输入大小相同,这在许多CNN架构中很常见,以保持输入通过网络层的空间分辨率。

填充值为1

填充值为1意味着在输入的每一侧添加一个填充元素。
在一维卷积的背景下,这会在输入序列的开始和结束添加一个零值元素。
例如,如果你的输入序列是[a, b, c, d],在padding=1的情况下,它在卷积操作应用之前实际上变成了[0, a, b, c, d, 0]。

对输出大小的影响
当核心大小为3且填充为1(如你的例子所示)时,卷积层将产生一个与输入长度相同的输出。这是因为填充补偿了由于卷积操作而可能发生的尺寸减少。

使用上述公式,我们可以获得每个输入序列的输出大小。在我们的例子中,由于核心大小为3,将填充设置为1,将使每个输入序列的输出大小与输入大小相同,很简单。在Pytorch中,我们也可以设置padding=‘same’,它会自动调整填充大小,以确保每个输入序列的输出大小与输入大小相同。

在卷积步骤之后,然后是池化步骤,它可以是:

self.pool = nn.MaxPool1d(kernel_size = 2)

在这个例子中,我们基本上将卷积的输出大小减半。所以最终,每个输入序列将变成输入大小的一半。

现在要获得上述两个步骤的总输出大小,我们需要乘以我们使用的滤波器数量。在我们的例子中,我们使用了64个滤波器,所以最终的输出大小应该是:

64* (input_size//2 )

这个大小就是我们应该用来设置后续步骤中完全连接层的输入大小。

阅读原文

英文

AI好书推荐

AI日新月异,再不学来不及了。但是万丈高楼拔地起,离不开良好的基础。您是否有兴趣了解人工智能的原理和实践? 不要再观望! 我们关于 AI 原则和实践的书是任何想要深入了解 AI 世界的人的完美资源。 由该领域的领先专家撰写,这本综合指南涵盖了从机器学习的基础知识到构建智能系统的高级技术的所有内容。 无论您是初学者还是经验丰富的 AI 从业者,本书都能满足您的需求。 那为什么还要等呢?

人工智能原理与实践 全面涵盖人工智能和数据科学各个重要体系经典

北大出版社,人工智能原理与实践 人工智能和数据科学从入门到精通 详解机器学习深度学习算法原理

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

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

相关文章

python数据结构与算法-10_递归

递归 Recursion is a process for solving problems by subdividing a larger problem into smaller cases of the problem itself and then solving the smaller, more trivial parts. 递归是计算机科学里出现非常多的一个概念,有时候用递归解决问题看起来非常简单…

面对网络渠道低价 品牌如何应对

品牌在发展过程中,会不断拓展自己的销售渠道,网站渠道是顺应消费者习惯的一种销售战场,没有品牌会轻易丢弃这个渠道,但是网络渠道的低价又是很常见的,所以只有及时的治理渠道低价,对应的渠道才会发展越来越…

【shell】shell指令学习

仅供本人自学,完全从自己可以理解的角度写的,知识点都是copy网上已有的学习资料,侵权请联系本人删除,谢谢。 1. 文本资料学习 学习Linux,从掌握grep、sed、awk开始吧。 Linux文本三剑客超详细教程—grep、sed、awk …

【AGC】鸿蒙应用软件包上传问题解析

【问题背景】 近期收到了一些反馈,一些鸿蒙元服务开发者在发布应用市场的过程中,上传.app包时遇到了不同的报错,导致上传失败,下面来看一下这些报错的具体原因,如何正确打包上传。 【问题描述1】 HarmonyOS元服务软件…

排序算法--选择排序

实现逻辑 ① 第一轮从下标为 1 到下标为 n-1 的元素中选取最小值,若小于第一个数,则交换 ② 第二轮从下标为 2 到下标为 n-1 的元素中选取最小值,若小于第二个数,则交换 ③ 依次类推下去…… void print_array(int a[], int n){f…

逐字节讲解 Redis 持久化(RDB 和 AOF)的文件格式

前言 相信各位对 Redis 的这两种持久化机制都不陌生,简单来说,RDB 就是对数据的全量备份,AOF 则是增量备份,而从 4.0 版本开始引入了混合方式,以 7.2.3 版本为例,会生成三类文件:RDB、AOF 和记…

这7款神仙软件,程序员必备!

如果你是程序员、开发者、网络运维等 IT 从业者日常工作中大家肯定会用到很多网站,今天给大家带来7款压箱底的神仙软件,希望可以帮助有需要的码农朋友实现更高效地办公。 一、Everything 适用:本地文件搜索神器 就是为了极速检索而生,其实…

随机微分方程数值模拟

http://www.lpma-paris.fr/pageperso//lemaire/projets/Papers/NiVi08.pdf See 知乎https://zhuanlan.zhihu.com/p/28628912

CRM商机管理软件:构建客户为中心的管理理念

企业为什么选择CRM商机管理软件?1.CRM软件能够帮助企业建立以客户为中心的管理理念;2.CRM商机管理软件全面直观的展示客户数据;3.市场人员可以制订个性化的营销策略;4.移动应用为外出的销售带来的便利。 1.构建客户为中心的管理理…

2304. 网格中的最小路径代价 : 从「图论最短路」过渡到「O(1) 空间的原地模拟」

题目描述 这是 LeetCode 上的 「2304. 网格中的最小路径代价」 ,难度为 「中等」。 Tag : 「最短路」、「图」、「模拟」、「序列 DP」、「动态规划」 给你一个下标从 0 开始的整数矩阵 grid,矩阵大小为 m x n,由从 0 到 的不同整数组成。 你…

Java线程的学习

本来我以为这可能只是Java里的一小块知识点,但当我搜索自己关注的Up主的网课时,觉得还是开一个系列来记录好了。我的记录绝不仅仅是照搬课程中的内容,我会带上自己的理解以及示例代码、并且是按照本人的专业课老师上课的节奏来记录&#xff0…

maven打包可执行jar含依赖lib

修改pom.xml <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!-- jdk8可用&#xff0c;其他jdk版本可能需改插件版本 --><version>2.3.7.RE…

迁新址 启新程|美创科技杭州总部乔迁仪式圆满举行

“迁新址 启新程” 2023年11月21日 美创科技杭州总部乔迁仪式隆重举行 杭州未来科技城管委会、余杭国投集团、浙江省网络空间安全协会、浙江鸿程、华睿投资、金艮投资、如山资本、赛伯乐投资、宽带资本、普华投资、国中创投、密码资本、东方富海、之江商学、阿里云、联通&…

AI辅助带货直播场景源码系统 附带网站的搭建教程

互联网技术的发展和普及&#xff0c;直播带货行业迅速崛起。然而&#xff0c;直播带货在带来商机的同时&#xff0c;也面临着诸多挑战。如直播内容缺乏新意、转化率低等问题。针对这些问题&#xff0c;AI辅助带货直播场景源码系统应运而生&#xff0c;旨在利用人工智能技术&…

项目管理PMP6.0-五大过程组、十大知识领域、四十九个过程(记忆码:7664363734)

项目管理PMP6.0-五大过程组、十大知识领域、四十九个过程&#xff08;记忆码&#xff1a;7664363734&#xff09; 项目经理的影响力范围三者关系图&#xff08;五大过程组、十大知识领域、四十九个过程&#xff09;五大过程组十大知识领域十大知识领域之间联系 四十九个过程&am…

C# Onnx 特征匹配 DeDoDe 检测,不描述---描述,不检测

目录 介绍 效果 模型信息 项目 代码 下载 介绍 github地址&#xff1a;https://github.com/Parskatt/DeDoDe DeDoDe &#x1f3b6; Detect, Dont Describe - Describe, Dont Detect, for Local Feature Matching The DeDoDe detector learns to detect 3D consisten…

FSCTF2023-Reverse方向题解WP。学习贴

文章目录 [FSCTF 2023]signin[FSCTF 2023]MINE SWEEPER[FSCTF 2023]Xor[FSCTF 2023]EZRC4[FSCTF 2023]ez_pycxor[FSCTF 2023]Tea_apk[FSCTF 2023]ezcode[FSCTF 2023]ezbroke[FSCTF 2023]rrrrust!!![FSCTF2023]ezrev&#xff08;未解决&#xff09; [FSCTF 2023]signin UPX壳&am…

arcgis中投影文件(.prj)和地理转换文件(.gtf)存储路径

1、投影文件&#xff08;自定义的.prj&#xff09;的存储路径 C:\Users\14635\AppData\Roaming\ESRI\Desktop10.5\ArcMap\Coordinate Systems 2、地理转换文件&#xff08;.gtf&#xff09;--自定义 C:\Users\14635\AppData\Roaming\ESRI\Desktop10.5\ArcToolbox\CustomTransfo…

ROS2串口通讯serial库(适用于humble版本)

要的串口操作的API介绍在这里&#xff1a;serial: serial::Serial Class Reference (wjwwood.io) 但是我们不是直接利用上面这个东西&#xff0c;而是使用的是根据这个改写的一个针对ros2的一个serial库&#xff0c;这个serial库是根据上面这个库改写来的&#xff0c;ros2的库在…

分布式系统的认证授权

一.分布式系统的认证授权大致架构 以云音乐系统为例&#xff1a; 注&#xff1a;一般情况下&#xff0c;我们会把认证的部分的接口提取为一个单独的认证服务模块中。 二.单点登录&#xff08;Single Sign On&#xff09; 单点登录&#xff0c;Single Sign On&#xff0c;简称…