深度学习之 filtering and padding

深度学习笔记(3)——kernel(内核)与filter(滤波器) 本文仅仅简单介绍了kernel和filter的概念,介绍了确定filter和kernel个数的方法。 阅读详情

Filtering and Padding

原始图片为nxn当经fxf的filter后大小就变成了 (n-f+1)f一般是奇数如果有步长S 那么输出就是(n−f)/S+1(n-f)/S+1(n−f)/S+1

这时候就会出现两个问题

  • 卷积运算后,输入图片尺寸减小
  • 原始图片边缘信息对输出贡献少,输出图片会丢失边缘信息

为了解决图片缩小的问题,使用padding的方法,对原始图片进行扩展,扩展区域补零,用p表示扩展宽度,

在这里插入图片描述

经过padding后,原始图片变成(n+2p)x(n+2p)(n+2p)x(n+2p)(n+2p)x(n+2p)

所以要保证卷积前后图片尺寸的一致那么p=(f−1)/2p=(f-1)/2p=(f−1)/2

Stride表示filter在原图片中水平方向和垂直方向每次的步进长度。之前我们默认stride=1。若stride=2,则表示filter每次步进长度为2,即隔一点移动一次。

img

我们用s表示stride长度,p表示padding长度,如果原始图片尺寸为n x n,filter尺寸为f x f,则卷积后的图片尺寸为:

⌊n+2p−fs+1⌋X⌊n+2p−fs+1⌋⌊\frac{n+2p−f}{s}+1⌋X⌊\frac{n+2p−f}{s}+1⌋⌊sn+2p−f​+1⌋X⌊sn+2p−f​+1⌋

值得一提的是,相关系数(cross-correlations)与卷积(convolutions)之间是有区别的。实际上,真正的卷积运算会先将filter绕其中心旋转180度,然后再将旋转后的filter在原始图片上进行滑动计算。filter旋转如下所示:

img

其实,目前为止我们介绍的CNN卷积实际上计算的是相关系数,而不是数学意义上的卷积。但是,为了简化计算,我们一般把CNN中的这种“相关系数”就称作卷积运算。之所以可以这么等效,是因为滤波器算子一般是水平或垂直对称的,180度旋转影响不大;而且最终滤波器算子需要通过CNN网络梯度下降算法计算得到,旋转部分可以看作是包含在CNN模型算法中。总的来说,忽略旋转运算可以大大提高CNN网络运算速度,而且不影响模型性能。

卷积运算服从结合律:
(A∗B)∗C=A∗(B∗C) (A*B)*C=A*(B*C) (A∗B)∗C=A∗(B∗C)

Convolutions Over Volume

对于3通道的RGB图片,其对应的滤波器算子同样也是3通道的。例如一个图片是6 x 6 x 3,分别表示图片的高度(height)、宽度(weight)和通道(#channel)。

3通道图片的卷积运算与单通道图片的卷积运算基本一致。过程是将每个单通道(R,G,B)与对应的filter进行卷积运算求和,然后再将3通道的和相加,得到输出图片的一个像素值。

img

不同通道的滤波算子可以不相同。例如R通道filter实现垂直边缘检测,G和B通道不进行边缘检测,全部置零,或者将R,G,B三通道filter全部设置为水平边缘检测。

为了进行多个卷积运算,实现更多边缘检测,可以增加更多的滤波器组。例如设置第一个滤波器组实现垂直边缘检测,第二个滤波器组实现水平边缘检测。这样,不同滤波器组卷积得到不同的输出,个数由滤波器组决定。

img

若输入图片的尺寸为n x n x nc,filter尺寸为f x f x nc,则卷积后的图片尺寸为(n-f+1) x (n-f+1) x nc’。其中,nc为图片通道数目,nc’为滤波器组个数。

** One Layer of a Convolutional Network**

卷积神经网络的单层结构如下所示:

img

相比之前的卷积过程,CNN的单层结构多了激活函数ReLU和偏移量b。整个过程与标准的神经网络单层结构非常类似:

每个滤波器组有3x3x3=27个参数,还有1个偏移量b,则每个滤波器组有27+1=28个参数,两个滤波器组总共包含28×2=56个参数。我们发现,选定滤波器组后,参数数目与输入图片尺寸无关。所以,就不存在由于图片尺寸过大,造成参数过多的情况。例如一张1000x1000x3的图片,标准神经网络输入层的维度将达到3百万,而在CNN中,参数数目只由滤波器组决定,数目相对来说要少得多,这是CNN的优势之一。

参数的数量与图片的size无关

最后,我们总结一下CNN单层结构的所有标记符号,设层数为l

理解,输入:图片的宽高和维度叠加上滤波器后,那么权重的个数其实就是滤波器的参数个数,偏置为输出的滤波器个数

Simple Convolutional Network Example

下面介绍一个简单的CNN网络模型:

该CNN模型各层结构如上图所示。需要注意的是,a[3]∗a[3]a^{[3]}*a^[3]a[3]∗a[3]的维度是7 x 7 x 40,将a[3]∗a[3]a^{[3]}*a^[3]a[3]∗a[3]排列成1列,维度为1960 x 1,然后连接最后一级输出层。输出层可以是一个神经元,即二元分类(logistic);也可以是多个神经元,即多元分类(softmax)。最后得到预测输出y^\hat yy^​。

值得一提的是,随着CNN层数增加,nH[l]和nW[l]n_H^{[l]}和n_W^{[l]}nH[l]​和nW[l]​一般逐渐减小,而nc[l]n_c^{[l]}nc[l]​一般逐渐增大。

对于参数的话最后的每一层的参数为fxfxnc[l−1]n_c^{[ l-1 ]}nc[l−1]​+nc[l]n_c^{[ l ]}nc[l]​

CNN有三种类型的layer:

  • Convolution层(CONV)
  • Pooling层(POOL)
  • Fully connected层(FC)

CNN Example

下面介绍一个简单的数字识别的CNN例子:

img

图中,CON层后面紧接一个POOL层,CONV1和POOL1构成第一层,CONV2和POOL2构成第二层。特别注意的是FC3和FC4为全连接层FC,它跟标准的神经网络结构一致。最后的输出层(softmax)由10个神经元构成。

整个网络各层的尺寸和参数如下表格所示:

img

Why Convolutions

相比标准神经网络,CNN的优势之一就是参数数目要少得多。参数数目少的原因有两个:

  • 参数共享:一个特征检测器(例如垂直边缘检测)对图片某块区域有用,同时也可能作用在图片其它区域。
  • 连接的稀疏性:因为滤波器算子尺寸限制,每一层的每个输出只与输入部分区域内有关。

除此之外,由于CNN参数数目较小,所需的训练样本就相对较少,从而一定程度上不容易发生过拟合现象。而且,CNN比较擅长捕捉区域位置偏移。也就是说CNN进行物体检测时,不太受物体所处图片位置的影响,增加检测的准确性和系统的健壮性。

行空板OpenCV特征匹配追踪:基于ORB与单应性矩阵的嵌入式视觉实践 特征匹配是计算机视觉中实现图像对齐、目标识别与追踪的基础技术,其核心原理是通过提取并匹配图像间的局部特征点(如角点、边缘),建立两幅图像间的对应关系。在工程实践中,ORB(Oriented FAST and Rotated BRIEF)算法因其计算效率高、具备良好的旋转与尺度不变性,成为资源受限场景下的首选特征检测器。结合单应性矩阵(Homography)计算,该技术不仅能确定目标是否存在,还能精确解算其位置、旋转与透视变换,为机器人视觉伺服、增强现实叠加等应用提供了稳定、实时的姿态估计能力。本文以行空板这 阅读详情

相关推荐

基于深度学习的滚动轴承故障诊断:从数据预处理到模型部署全流程实战

深度学习作为人工智能的核心技术,通过模拟人脑神经网络结构,能够从海量数据中自动学习复杂特征与模式。其核心原理在于构建多层非线性变换,逐层提取和组合数据中的抽象表示,最终完成分类、回归等任务。在工业领域,这项技术的价值在于实现从“经验驱动”到“数据驱动”的智能化决策转变,尤其在预测性维护场景中,能够提前预警设备潜在故障,避免非计划停机。针对旋转机械关键部件——滚动轴承的故障诊断,深度学习模型如卷积神经网络(CNN)能够直接从振动信号中自动学习故障特征,替代传统依赖专家经验的信号分析方法。本文以公开的CWRU轴

chuange6363的博客 430

深度学习笔记_基本概念_卷积网络中的通道channel、特征图feature map、过滤器filter和卷积核kernel

目录 卷积网络中的通道、特征图、过滤器和卷积核 1.feature map 1.1 feature map 1.2 feature map怎么生成的? 1.3 多个feature map 的作用是什么? 2.卷积核 2.1 定义 2.2 形状 2.3卷积核个数的理解 3.filter 4.channel 4.1 定义 4.2 分类 4.3 通道与特征 4.4通道的终点 卷积网络中的通道、特征图、过滤器和卷积核 1.feature map 1.1 feature map .

惊鸿一博 2万+

手把手教你用Ubuntu Base 20.04打造轻量级ARM开发板根文件系统(附常见问题解决)

本文详细介绍了如何基于Ubuntu Base 20.04 LTS构建轻量级ARM开发板根文件系统,涵盖环境准备、镜像制作、跨架构配置、软件包定制及常见问题解决。通过实战指南,开发者可快速掌握ARM架构下的根文件系统构建技巧,优化系统性能并解决部署中的典型问题。

gin88的博客 211

论文翻译:DeepFilterNet

DeepFilterNet:基于深度滤波器的全频带音频低复杂度语音增强框架

wynn的博客 3063

Cadence PCB SI仿真实战:如何手动添加VIA过孔模型提升板级链路精度

本文详细介绍了在Cadence PCB SI仿真中如何手动添加VIA过孔模型以提升DDR4/5设计的精度。通过参数化建模和三维全波建模技术,工程师可以有效解决高速设计中的信号完整性问题,显著降低仿真误差。文章还提供了实战案例和常见问题解决方案,帮助优化板级链路性能。

weixin_28683391的博客 408

Nengo神经工程框架:脉冲神经网络的实时编译与硬件部署

脉冲神经网络(SNN)作为类脑计算的核心范式,正从生物模拟走向工程落地。其本质是用离散脉冲建模神经动力学,关键在于实现可预测、可复现的神经行为而非单纯拟合函数。Nengo基于神经工程学框架(NEF),将动态系统理论与硬件约束深度融合,通过解析式权重计算、确定性时间步长(dt)和多后端编译能力,支撑从CPU仿真到Loihi/FPGA的端到端部署。它不替代深度学习框架,而是提供面向神经形态芯片的‘神经编译器’能力,使LIF神经元参数、突触动力学与硬件时序严格对齐,显著提升实时性、能效比与物理可解释性。

weixin_32533659的博客 637

深度学习成功应用于引力波实时研究

位于伊利诺伊大学香槟分校的美国国家超级计算中心(NCSA)表示该中心的科学家利用图形处理单元(GPU)加速的深度学习技术成功监测和描述引力波。这种新方法加快了引力波研究的速度,使得天文学家能利用更少的计算资源在更多的领域进行引力波的相关研究。NCSA的研究人员将深度学习算法与数值化黑洞合并相对论模型以及通过激光干涉引力波天文台(LIGO)获得的数据相结合,开发出一套端到端的时间序列信号处理方法——

人工智能快报 817

Auto.js实战:从解锁手机到自动阅读的全流程避坑指南(MIUI系统适配版)

本文详细介绍了Auto.js在MIUI系统下的自动化操作全流程优化指南,包括设备唤醒、应用启动、界面交互等关键环节的实战技巧。特别针对MIUI系统的变速检测机制和电源管理策略,提供了有效的避坑方案和性能优化建议,帮助开发者实现从解锁手机到自动阅读的稳定运行。

醉三国 246

论文翻译:2022_DeepFilterNet2: Towards Real-Time Speech Enhancement On Embedded Devices For Fullband Audi...

博客地址:凌逆战 论文地址:DeepFilternet2: 面向嵌入式设备的全波段音频实时语音增强 论文代码:https://github.com/Rikorose/DeepFilterNet 引用格式:Schröter H, Rosenkranz T, Maier A. DeepFilterNet2: Towards Real-Time Speech Enhancement on Embed...

凌逆战的博客 3277

STM32使用内部RC振荡器作为系统时钟开发项目--内晶振启动模板工程

STM32使用内部RC振荡器时,OSC32_IN,OSC32_OUT接法: 1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。 2)对于少于100脚的产品,有2种接法:    2.1)OSC_IN和OSC_OUT分别通过10K电阻接地。此方法可提高EMC性能。    2.2)分别重映射OSC_IN和OSC_OUT至PD0和PD1,再配置PD0和PD1为推挽输出

overflyme的博客 1万+

重塑计算的五层蛋糕:解读黄仁勋CES2026演讲背后的AI新秩序与物理世界

2026年CES演讲揭示AI新纪元:从语言模型到物理智能 NVIDIA CEO黄仁勋在2026年CES演讲中描绘了计算产业的根本性变革。核心突破包括: 计算范式转移:从指令执行转向意图理解,智能体系统崛起 物理AI突破:发布Cosmos世界模型,通过合成数据训练AI理解物理定律 全新VeraRubin计算平台:6芯片协同设计,解决摩尔定律放缓与AI需求增长的矛盾 自动驾驶革命:推出具备推理能力的Alpamayo模型,实现L4级自动驾驶 演讲标志着AI正从数字世界迈向物理世界,NVIDIA通过全栈布局,正在重

老孙 | Ethan Sun 的博客:AI 智能体与 AI 原生软件的工程实践 1274

Python深度学习:从入门到实战

亲爱的读者,欢迎您翻开这本书。我们即将探索的,是深度学习的宇宙——一个由数据、算法与算力构筑的奇妙世界。它既是严谨的科学,也是创造的艺术,更是一条通往未来智慧的修行之路。本书将带您从最基础的数学原理出发,亲手搭建神经网络,驾驭Transformer等前沿模型,最终将智慧转化为现实世界的价值。请放下畏惧,保持好奇。这不仅是一次知识的学习,更是一场思维的远行。来,随我一起,开启这趟非凡的旅程吧。

weixin_45747731的博客 296

智能硬件产品 App 全球发布 第 1 章:全球 App 发布战略设计

本章阐述智能硬件 App 全球发布战略,涵盖市场分析、竞争格局、用户画像及资源配置。通过制定可执行的全球化推广路径,整合地区法规合规、渠道分发策略与营销活动设计,助力团队快速进入主流商店并确立品牌影响力。同时构建可量化的 KPI 监控体系,指导项目进度追踪与效果复盘,确保产品迭代持续优化,降低运营总成本。

moton2017的博客 156

基于Wasserstein距离的鲁棒机器学习:噪声数据下的智能样本选择

在机器学习实践中,数据质量是影响模型泛化能力的关键因素。异常值和标注噪声会破坏训练数据的分布,导致模型学习到虚假模式,从而在真实场景中表现不佳。传统方法如随机丢弃或基于损失的硬截断,往往难以区分噪声与有价值的难样本,可能损害模型性能。Wasserstein距离,作为一种衡量概率分布差异的几何度量,为解决此问题提供了新思路。它通过计算‘推土机成本’来量化分布间的差异,对支撑集不匹配的情况更为鲁棒。基于此原理的Wasserstein Filtering技术,能够动态评估每个训练样本与预估干净分布之间的差异,并为

weixin_34321753的博客 394

SwinTransformer 改进:SSPCAB模块(2024最新改进方法)

SSPCAB(Spatial Pyramid Pooling with Channel Attention Block)是2024年提出的一种新型神经网络架构改进方法,专注于在保持高精度的同时显著降低计算复杂度和参数量。该方法通过创新的空间金字塔池化与通道注意力机制的结合,实现了网络结构的紧凑化和运算效率的大幅提升。核心创新点1. 混合空间金字塔池化(Hybrid Spatial Pyramid Pooling, HSPP)多尺度动态核池化:根据输入特征图尺寸动态调整池化核大小和步长交叉级联结构。

Henry的博客 1309

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

MXNet架构解析:从符号图到Graph Runtime的确定性设计

深度学习框架的核心价值不仅在于模型训练能力,更在于推理部署阶段的确定性、资源可控性与跨平台可预测性。MXNet通过符号式与命令式混合执行模型、带类型推导的静态计算图、以及深度定制的Graph Runtime,在内存规划、算子融合、异构调度等底层机制上实现毫秒级延迟与零抖动性能。其架构天然支持梯度压缩、弹性容错与ONNX无损导出,成为高SLA要求场景下分布式训练与边缘AI部署的关键技术选型。本文深入解析MXNet的Architecture设计原理及其在Distributed Training和Producti

weixin_30718391的博客 337

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Fiji —— 基于 imageJ 的免费且开源的图像处理软件

Fiji(Fiji is just imageJ):用于科学图像分析的 ImageJ 的 " 内置功能 " 发行版。它在 ImageJ 的基础上预装了大量常用插件和脚本,简化了安装和配置过程,特别适合生物图像分析。Fiji 还集成了更新管理功能,方便用户获取最新插件和工具。

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 1万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

2D image convolution

在学习cnn的过程中,对convolution的概念真的很是模糊,本来在学习图像处理的过程中,已对convolution有所了解,它与correlation是有不同的,因为convolution = correlation + filp over in both horizontal + vertical 但在CNN中,明明只是进行了correlation,但却称之为convolution,实在...

weixin_30532987的博客 191

硬膜下柔性脑机接口技术解析:原理、挑战与临床应用

脑机接口(BCI)技术通过记录和解码神经信号,实现大脑与外部设备的直接通信。其核心原理基于神经电生理活动采集,利用电极捕捉局部场电位和高频振荡等信号特征。在工程实践中,信号处理流程包含滤波、特征提取等关键步骤,而机器学习算法则用于意图识别和解码。该技术的价值在于为运动功能重建、神经疾病治疗等医疗场景提供创新解决方案。随着柔性电子材料和植入技术的进步,硬膜下柔性脑机接口因其优异的生物相容性和信号稳定性成为前沿方向,在难治性癫痫定位、瘫痪康复等领域展现巨大潜力,同时也面临长期植入可靠性和临床标准化等挑战。

weixin_34320159的博客 392

前端轻量电影推荐浮层:Deep Learning模型浏览器内实时推理

推荐系统是人工智能在Web端落地的关键场景之一,其核心在于用户与物品的向量表征及相似度计算。基于协同过滤与内容理解的双塔模型,凭借结构化特征输入、32维紧凑嵌入和余弦相似度匹配,在保证Recall@10达0.72的同时,将推理延迟压至80ms以内。这种轻量级Deep Learning方案无需后端API,支持WebAssembly全栈前端化部署,天然契合静态网站、个人博客与离线影库等低运维需求场景;结合类型偏好滑块与会话级上下文感知,实现真正‘所见即所得’的智能推荐体验。

weixin_33727510的博客 338
上一篇: c++模板声明与定义
下一篇: 常见环境变量作用
黑猫爱小鹿
博客等级 码龄8年 1万+粉丝 205原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值