理解卷积神经网络中的平移等变性:以udlbook项目为例
卷积神经网络(CNN)作为深度学习领域的重要模型,其核心特性之一就是平移等变性(translation equivariance)。本文将深入探讨这一概念,并通过数学推导帮助读者理解其本质。
卷积运算与平移等变性
平移等变性是指当输入信号发生平移时,经过卷积运算后的输出也会发生相应的平移。用数学表达式可以表示为:
f(t(x)) = t(f(x))
其中f代表卷积运算,t代表平移操作。这意味着对输入进行平移后再卷积,与先卷积再平移得到的结果是相同的。
数学证明
考虑一维信号x[n]和卷积核h[n],卷积运算定义为:
(x∗h)[n] = ∑x[k]h[n−k]
定义平移算子S_c(x[n]) = x[n - c]。我们可以证明:
S_c((x∗h)[n]) = S_c(∑x[k]h[n - k]) = ∑x[k]h[n - c - k]
通过变量替换k = k' - c,上式变为:
∑x[k' - c]h[n - k'] = ∑S_c(x[k'])h[n - k'] = (S_c(x)∗h)[n]
这证明了f(S_c(x)) = S_c(f(x)),即卷积运算确实具有平移等变性。
实际应用中的考虑
在实际应用中,我们需要注意几个关键点:
-
有限边界问题:理论上卷积是在无限信号上定义的,但实际图像和滤波器都有有限尺寸。在边界处,等变性可能不完全成立,因此可以说CNN在图像内部是"近似"等变的。
-
卷积与互相关的区别:严格来说,CNN中常用的是互相关(cross-correlation)运算,但习惯上仍称为卷积。两者在等变性上的表现是相似的。
-
维度扩展:上述证明针对一维信号,但可以自然地扩展到二维图像情况。
常见误解澄清
初学者常犯的一个错误是将卷积运算与简单的点积混淆。点积运算确实不具备平移等变性,因为:
f(x) = w·x f(t(x)) = w·(x + c) = w·x + w·c t(f(x)) = w·x + c
显然w·x + c ≠ w·x + w·c(除非w=1),这说明点积不是等变运算。这强调了理解卷积运算特殊性的重要性。
结论
平移等变性是CNN能够有效处理图像数据的关键特性之一。通过数学推导,我们清晰地看到卷积运算如何保持这种等变关系。理解这一特性有助于我们更好地设计和使用卷积神经网络,特别是在需要考虑空间不变性的计算机视觉任务中。在实际应用中,虽然有限边界会带来一些限制,但CNN仍然表现出良好的平移等变特性。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C043
MiniMax-M2.1从多语言软件开发自动化到复杂多步骤办公流程执行,MiniMax-M2.1 助力开发者构建下一代自主应用——全程保持完全透明、可控且易于获取。Python00
kylin-wayland-compositorkylin-wayland-compositor或kylin-wlcom(以下简称kywc)是一个基于wlroots编写的wayland合成器。 目前积极开发中,并作为默认显示服务器随openKylin系统发布。 该项目使用开源协议GPL-1.0-or-later,项目中来源于其他开源项目的文件或代码片段遵守原开源协议要求。C01
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
agent-studioopenJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力TSX0121
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00