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

深度学习 | 表示学习 | 卷积神经网络|翻转卷积核是干啥呢|09

如是我闻: 卷积核的翻转(行列翻转)实际上源于数学上卷积操作的定义。下面从数学、直觉和实际应用三个角度来解释为什么卷积核需要翻转:

在这里插入图片描述


1. 数学定义:离散卷积的本质

在数学上,卷积的定义是:
( f ∗ g ) ( t ) = ∫ f ( τ ) g ( t − τ )   d τ (f * g)(t) = \int f(\tau) g(t - \tau) \, d\tau (fg)(t)=f(τ)g(tτ)dτ

离散形式下,类似于:
( x ∗ k ) i j = ∑ p , q x i + p , j + q ⋅ k r − p , r − q (x * k)_{ij} = \sum_{p, q} x_{i+p, j+q} \cdot k_{r-p, r-q} (xk)ij=p,qxi+p,j+qkrp,rq
这里的 ( r − p , r − q ) (r-p, r-q) (rp,rq) 表示卷积核的索引是“反转”过来的。这个反转是数学定义的一部分,用来捕捉信号中模式的相关性。

直观上,卷积的反转是为了对齐卷积核和输入的过去的历史影响。在空间数据中(例如图像),它可以用来模拟模式匹配的方向性。


2. 卷积核翻转的作用

从图像处理的角度,翻转卷积核的作用如下:

  • 对称性和匹配性:
    翻转后的卷积核可以更好地找到图像中的模式和特征。例如:

    • 如果输入图像中有一个方向为 ↘ \searrow 的梯度,卷积核需要被翻转为 ↖ \nwarrow 才能进行匹配。
    • 这是一种数学操作的要求,它确保输入和核之间的相似性度量是准确的。
  • 保持卷积的性质:
    翻转操作让卷积满足一些数学性质,比如:

    • 交换性:卷积满足 x ∗ k = k ∗ x x * k = k * x xk=kx
    • 如果不翻转,卷积就会变成另一种操作(称为交叉相关,correlation)。

3. 实际应用:与交叉相关的对比

  • 在实际的深度学习框架(如 PyTorch、TensorFlow)中,卷积核的翻转并不是严格执行的。通常,实际实现的是交叉相关(cross-correlation),公式为:
    ( x ⋆ k ) i j = ∑ p , q x i + p , j + q ⋅ k p , q (x \star k)_{ij} = \sum_{p, q} x_{i+p, j+q} \cdot k_{p, q} (xk)ij=p,qxi+p,j+qkp,q
    交叉相关不进行翻转。
  • 为什么可以这样做?因为在深度学习中,卷积核是可学习的参数,翻转与否不会影响结果(权重可以通过训练来自动适应)。
  • 然而,传统图像处理和数学卷积定义中,翻转是必不可少的。

4. 直观类比:时序信号

  • 想象你在一个时序信号(如音频波形)上应用卷积,翻转操作可以让卷积核捕捉输入信号的过去和未来的关系。
  • 在图像中,这种翻转对应的是对局部像素模式的对称匹配

总的来说

  • 为什么要翻转?

    • 这是数学定义的要求。
    • 确保卷积运算具有对称性和匹配性。
    • 翻转后的核能够更好地捕捉图像中的模式。
  • 为什么实际实现中可以不翻转?

    • 深度学习中采用交叉相关是简化实现的一种方式,但它本质上与卷积的效果类似,因为卷积核的权重是可学习的。

以上


http://www.kler.cn/a/519118.html

相关文章:

  • ComfyUI实现老照片修复——AI修复老照片(ComfyUI-ReActor / ReSwapper)解决天坑问题及加速pip下载
  • C 语言实现计算一年中指定日期是第几天 题】
  • 左右互博02-unidbg主动调用外层so函数
  • git Bash通过SSH key 登录github的详细步骤
  • 【MFC】C++所有控件随窗口大小全自动等比例缩放源码(控件内字体、列宽等未调整) 20250124
  • 鸿蒙next 自定义日历组件
  • 搭建Spring Boot开发环境
  • hot100_141. 环形链表
  • 125周六复盘 (167)帧数优化
  • Blazor-选择循环语句
  • 奇怪的单词(快速扩张200个单词)
  • 基于Matlab实现雷达目标特性相关仿真
  • 数据结构:二叉树—面试题(一)
  • 股指期货交割日是哪一天?股指期货什么时候交割?
  • C语言常用字符串处理函数
  • 神经网络|(二)sigmoid神经元函数
  • 07 区块链安全技术
  • 汽车表面划痕刮伤检测数据集VOC+YOLO格式1221张1类别
  • Spring FatJar写文件到RCE分析
  • Vue2下篇
  • 快递代取项目Uniapp+若依后端管理
  • 消息队列篇--通信协议篇--AMOP(交换机,队列绑定,消息确认,AMOP实现实例,AMOP报文,帧,AMOP消息传递模式等)
  • Tailwind CSS—骨架屏生成器
  • LGBMRegressor CatBoostRegressor XGBRegressor回归
  • 有限元分析学习——Anasys Workbanch第一阶段_终篇_齿轮整体强度案例分析
  • 蓝桥杯3518 三国游戏 | 排序