Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【卷积本质】你不得不知道的卷积理解

【卷积本质】你不得不知道的卷积理解

作者头像
小草AI
发布于 2019-05-29 07:07:30
发布于 2019-05-29 07:07:30
2.9K0
举报

python进阶教程

机器学习

深度学习

长按二维码关注

一、从系统的角度看待卷积过程

1、物理层面的系统

所谓的系统从物理层面上说指的是一个可以对输入信号做出响应,然后输出相关信号的一套“物理设备”。

即 输出=输入*系统(响应)

2、数学层面的系统

系统在数学层面上仅仅是一种“变换”,说得更直白一点就是输入到输出的一个映射关系。

3、从系统说起,看卷积的形象描述

任何一个系统,都有其自身的特性(传递函数)。这包含两方面的含义:一方面是系统静止时(零状态),无论外部输入的激励信号是什么,系统的输出都只会以一定的规律“缓慢地”对输入做出响应;另一方面的意思是,当外部输入信号停止时,系统也只会按照自己内在的规律逐渐衰减到零(我们假定系统是稳定的)。将这两方面的意思结合起来:系统的输出只按系统自身的规律对输入做出响应。

如果在起始阶段,系统突然受到一个输入,但瞬间就又消失了(一个冲击信号)。那么系统会怎么反应呢?多半会是下图的样子,即信号突然受到某一个“刺激”,然后章得很高,等到刺激消失,又慢慢的降下来了(我们以一个一阶系统为例):

系统从某个值开始,以“一定的”规律慢慢衰减到零。但这个规律是什么呢?有没有精确的数学表达式?大神们的研究告诉我们:这个衰减的规律可以用一个叫做"传递函数"的公式来描述。每个系统的传递函数都不一样,所以上面的衰减曲线形状也是不一样的,但它是不会变的,是系统的固有特性,一个叫做拉普拉斯的人搞了一套方法可以求解出来。

详情可参考:复频域分析

如果这个系统在衰减的过程中,突然又受到一个脉冲,那系统会是什么反应?(假设在第2秒的时候又有了一个快闪的冲击来了)。

两个脉冲(间隔2秒)

从图中可以看出,又一个完全一样的衰减过程叠加到了第一个衰减过程的半道上,由于有第一个作为垫底的,所以整体的幅值略微高了一点,然后再慢慢地衰减下去,整个的衰减过程也略微地延长了一点时间。

那如果是以固定的间隔输入五个脉冲呢?变化趋势如下图(这些都是用MATLAB仿真出来的,不是我瞎画的哦)。

五个脉冲(间隔2秒)

更进一步,如果脉冲再多一点,间隔再小一点,系统的响应会是什么呢?

十个脉冲(间隔0.2秒)

这就好像游戏中常见的战斗:受伤的士兵在不断流血,如果不管他就会死掉,而在战场上唯一能做的就是不断地给他用血包输血,那最终能坚持多久就要看有多少个血包了,如果不幸血包的供给终止(输入信号结束),那你的勇士就会以“一定的规律”流尽最后一滴血而挂掉。

这样一个不断“失血”又不断“补血”的过程,就是卷积(不要被这个名字迷惑)。

进一步讨论一下输入信号。更一般地,如果系统的输入不是一连串的脉冲,而是一个连续信号的话,那结果会是什么呢?

学过高等数学的同学应该已经猜出来了,系统的输出应该是某种积分的结果。我们只需要计算出这个积分就可以了。而且,显而易见地,输入信号不同,输出结果迥异。事实正是如此。

一个宽度为5秒的方波作为输入 一个周期为2秒的正弦波作为输入

实际上,这个积分很不简单,它描述了一个动态过程,表达了系统不断衰减同时又不断受到激励的综合结果——这就是卷积的本质含义。

上面的这些内容,应该不难理解,其实这就是卷积的本质,而难搞懂的是卷积的算法。

上述动态过程的数学计算,是令人瞠目结舌。大致方法是将激励信号进行反转(这是最不能让人理解的部分,将一个以时间为自变量的信号反转,难道是要让时光倒流?),然后与系统相乘,再积分,数学家们从纯数学函数的角度出发,给这一算法起了一个貌似形象的名字“卷积”。

数学家们最关心的是逻辑的严密性,他们玩的就是抽象,以自然科学里的哲学家自居,他们编写的数学教科书从来都只谈证明,只谈解空间,只谈严密性,任何具象的东西写进教科书好像都掉价似的,我严重怀疑他们写书的目的就是为了让我们看不懂:)。

对于大多数工科学生来说,这个卷积的算法我们就别试图去将它具体的计算过程与物理意义对应了,什么先反转、相乘、平移、叠加,忘掉它!数学家们天真地以为“卷积”这个名字能让我们更形象化地理解这一算法,其实除了把人搞晕外,一点意义都没有,因为物理世界中是没有任何一个系统能这样“卷”出来,它和现实世界没有一毛钱关系,纯粹是一种数学表达。如果非要和物理世界联系起来,只能这样描述:当信号输入给系统后的某个时间里,我们看到的系统的输出中,输入信号早期的部分影响较小,而后期部分影响较大。

我们要做的是代入公式计算就好了,不要妄图通过计算过程来理解卷积的本身。 重要的是要理解前面讲的卷积的本质。只要细心去找,这样的例子其实生活中还是有很多的,去找到它们就能更彻底地帮你理解这一动态过程。

二、卷积的数学理解

1、连续卷积

卷积是分析数学中一种重要的数学运算。

设:f(x),g(x)是R上的两个可积函数,作积分:

可以证明,关于几乎所有的实数x,上述积分是存在的。这样,随着x的不同取值,这个积分就定义了一个新函数h(x),称为函数f(x)g(x)的卷积,记为h(x)=(f*g)(x)=f(x)*g(x)。*称之为卷积符号。

如何理解:

积分是对τ进行积分,得到的结果却是一个关于x的函数h(x),这是为什么,因为上面这个积分实际上是针对每一个不同的x的取值,比如x去1、2、3、4...n等等的时候,会得到n个不同的积分值h(1)、h(2)、h(3)、h(4)、....h(n)等,

在物理系统中,f(x)称之为输入函数、g(x)称之为激励函数、冲激函数等,h(x)称之为输出函数,这不就是将f(x)转化成h(x)的过程吗,只不过为了区别,将f(x)写成f(τ)而已,这与字母是没有关系的。

那这卷积有什么用呢?

由卷积得到的函数h=f*g一般要比fg都光滑。特别当g为具有紧致集的光滑函数,f为局部可积时,它们的卷积f * g也是光滑函数。利用这一性质,对于任意的可积函数f,都可以简单地构造出一列逼近于f的光滑函数列fs,这种方法称为函数的光滑化或正则化

2、离散卷积

我们在设计程序时,更多的是使用离散卷积。

卷积是两个变量在某范围内相乘后求和的结果。如果卷积的变量是序列x(n)和h(n),则卷积的结果

其中星号*表示卷积。当时序n=0时,序列h(-i)是h(i)的时序i取反的结果;时序取反使得h(i)以纵轴为中心翻转180度,所以这种相乘后求和的计算法称为卷积和,简称卷积。另外,n是使h(-i)位移的量,不同的n对应不同的卷积结果。

3、卷积总结

4、关于卷积的计算步骤,后面会讲到,本文只将相关的理解。

三、卷积定理

卷积定理指出,函数卷积的傅里叶变换是函数傅里叶变换的乘积。即,一个域中的卷积的傅里叶变换相当于另一个域中的乘积,例如时域中的卷积就对应于频域中的乘积。

F(g(x)*f(x)) = F(g(x))F(f(x))

其中F表示的是傅里叶变换。

这一定理对拉普拉斯变换、双边拉普拉斯变换、Z变换、Mellin变换和Hartley变换等各种傅里叶变换的变体同样成立。

四、卷积的应用层面

卷积在数学领域最广泛的应用是在分析数学与积分变换中的应用,但是其实在下面的一些领域去理解“卷积”,会更加通俗易懂。

(1)统计学中,加权的滑动平均是一种卷积。

(2)概率论中,两个统计独立变量X与Y的和的概率密度函数是X与Y的概率密度函数的卷积。

(3)电子工程与信号处理中,任一个线性系统的输出都可以通过将输入信号与系统函数(系统的冲激响应)做卷积获得。

(4)声学中,回声可以用源声与一个反映各种反射效应的函数的卷积表示。

(5)物理学中,任何一个线性系统(符合叠加原理)都存在卷积。

本文以第(2)为例子加以说明

比如我又两个筛子,现在要求两个筛子的投掷点数之和为4的概率,即我们要求

P(x,g).

设第一个筛子的概率为f(n),即f(1)、f(2)、f(3)、f(4)、f(5)、f(6)。

设第一个筛子的概率为g(n),即g(1)、g(2)、g(3)、g(4)、g(5)、g(6)。

则P(x+g=4)=f(1)g(3)+f(2)g(2)+f(3)g(1)

上面的这个我们大家都会,则写成离散卷积的形式呢?

怎么样,现在是不是更好的理解(2)中那句话的含义了。

事实上,深度学习中,常见的卷积神经网络并不是真正意义上的卷积,只不过它的运算过程与卷局的运算过程类似,也有着相同的根源,故而如此命名。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-03-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习与python集中营 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
卷积的本质及物理意义,解释的真幽默!
卷积这个东东是“信号与系统”中论述系统对输入信号的响应而提出的。因为是对模拟信号论述的,所以常常带有繁琐的算术推倒,很简单的问题的本质常常就被一大堆公式淹没了,那么卷积究竟物理意义怎么样呢?
小白学视觉
2022/09/28
1.1K0
卷积到底是个什么鬼?
作为一名苦逼工科生,《信号与系统》+《数字信号处理》是绕不过去的坎,各种让人头疼的概念与数学公式:傅里叶变化、拉普拉斯变化、Z变换、卷积、循环卷积、自相关、互相关、离散傅里叶变化、离散傅里叶时间变化……
瓜大三哥
2019/07/10
7680
【AI系统】卷积操作原理
卷积是神经网络里面的核心计算之一,它是一种特殊的线性运算。而卷积神经网络(CNN)是针对图像领域任务提出的神经网络,其受猫的视觉系统启发,堆叠使用卷积层和池化层提取特征。它在 CV 领域方面的突破性进展引领了深度学习的热潮。
用户11307734
2024/12/06
2210
简谈卷积—幽默笑话谈卷积
大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。
FPGA技术江湖
2020/12/29
6860
简谈卷积—幽默笑话谈卷积
卷积的意义
这是两个函数组合的反常积分。我们用这样一个例子来说明,就是一个人一天的进食和消化情况。
算法之名
2022/11/29
1.3K0
卷积的意义
第一性原理之美:从平移对称性导出卷积
卷积的概念无处不在。它究竟有什么特别之处呢?在本文中,作者从第一性原理中推导出卷积,并表明它自然地来自平移对称性。
AI科技评论
2020/09/14
1.3K0
第一性原理之美:从平移对称性导出卷积
为什么拉普拉斯变换里面的衰减因子是e^st?
然后再来读这篇,本来文章就回答一个问题,但是后面就又变成了拉普拉斯变换的学习笔记,不影响哈,早晚都得学。
云深无际
2024/11/11
2580
为什么拉普拉斯变换里面的衰减因子是e^st?
吴大正信号与系统-频域分析总结
吴大正的书现在来看是真不错,奥本海姆让我迷失在了知识的海洋。反而现在看这种国内教科书的感觉非常好。
云深无际
2024/10/11
2280
吴大正信号与系统-频域分析总结
《信号与系统》很难?也许你应该看看这篇文章
小枣君:大家都知道《信号与系统》是一门很难的课。今天给大家推荐一篇文章,看了之后,也许就会找到打开这门课的正确方式。
鲜枣课堂
2019/07/22
2.1K0
【笔记】《计算机图形学》(9)——信号处理
这系列的笔记来自著名的图形学虎书《Fundamentals of Computer Graphics》,这里我为了保证与最新的技术接轨看的是英文第五版,而没有选择第二版的中文翻译版本。不过在记笔记时多少也会参考一下中文版本
ZifengHuang
2020/09/15
2.8K0
【笔记】《计算机图形学》(9)——信号处理
理解图傅里叶变换和图卷积
图神经网络(GNN)代表了一类强大的深度神经网络架构。在一个日益互联的世界里,因为信息的联通性,大部分的信息可以被建模为图。例如,化合物中的原子是节点,它们之间的键是边。
deephub
2023/08/30
4000
理解图傅里叶变换和图卷积
GNN系列 GCN简述 推导理解 及 DGL 源码解析
深度学习一直都是被几大经典模型给统治着,如CNN、RNN等等,它们无论再CV还是NLP领域都取得了优异的效果,那这个GCN是怎么跑出来的?是因为我们发现了很多CNN、RNN无法解决或者效果不好的问题——图结构的数据。
大鹅
2022/07/17
3.7K0
在图像的傅里叶变换中,什么是基本图像_傅立叶变换
大家好,又见面了,我是你们的朋友全栈君。 从现代数学的眼光来看,傅里叶变换是一种特殊的积分变换。它能将满足一定条件的某个函数表示成正弦基函数的线性组合或者积分。在不同的研究领域,傅里叶变换具有多种不同的变体形式,如连续傅里叶变换和离散傅里叶变换。 傅立叶变换属于调和分析的内容。”分析”二字,可以解释为深入的研究。从字面上来看,”分析”二字,实际就是”条分缕析”而已。它通过对函数的”条分缕析”来达到对复杂函数的深入理解和研究。从哲学上看,”分析主义”和”还原主义”,就是要通过对事物内部适当的分析达到增进对其本质理解的目的。比如近代原子论试图把世界上所有物质的本源分析为原子,而原子不过数百种而已,相对物质世界的无限丰富,这种分析和分类无疑为认识事物的各种性质提供了很好的手段。 在数学领域,也是这样,尽管最初傅立叶分析是作为热过程的解析分析的工具,但是其思想方法仍然具有典型的还原论和分析主义的特征。”任意”的函数通过一定的分解,都能够表示为正弦函数的线性组合的形式,而正弦函数在物理上是被充分研究而相对简单的函数类,这一想法跟化学上的原子论想法何其相似!奇妙的是,现代数学发现傅立叶变换具有非常好的性质,使得它如此的好用和有用,让人不得不感叹造物的神奇: 1. 傅立叶变换是线性算子,若赋予适当的范数,它还是酉算子; 2. 傅立叶变换的逆变换容易求出,而且形式与正变换非常类似; 3. 正弦基函数是微分运算的本征函数,从而使得线性微分方程的求解可以转化为常系数的代数方程的求解.在线性时不变的物理系统内,频率是个不变的性质,从而系统对于复杂激励的响应可以通过组合其对不同频率正弦信号的响应来获取; 4. 著名的卷积定理指出:傅立叶变换可以化复杂的卷积运算为简单的乘积运算,从而提供了计算卷积的一种简单手段; 5. 离散形式的傅立叶变换可以利用数字计算机快速的算出(其算法称为快速傅立叶变换算法(FFT)). 正是由于上述的良好性质,傅里叶变换在物理学、数论、组合数学、信号处理、概率、统计、密码学、声学、光学等领域都有着广泛的应用。 傅立叶变换在图像处理中有非常非常的作用
全栈程序员站长
2022/09/27
1.6K0
图神经网络综述:从Deepwalk到GraphSAGE,GCN,GAT
本文是笔者初学Graph neural network时写下的综述,从graph embedding开始讲起,回顾了GE和GNN的历史和经典论文,并利用热传播模型分析了GNN的数学渊源。
算法进阶
2023/11/05
2K0
图神经网络综述:从Deepwalk到GraphSAGE,GCN,GAT
信号与系统漫谈-基础回顾
不停的回顾,不停的重复,不停的复习。这是一个学习的总结贴。内容是来自于教科书和厦门大学唐老师的知乎专栏。
云深无际
2024/09/17
1100
信号与系统漫谈-基础回顾
LTI系统的冲激响应-洞悉一切
对于一个LTI系统,当其初始状态为零时,输入为单位冲激函数δ(t),所引起的响应称为单位冲激响应,简称冲激响应。通常用h(t)表示。
云深无际
2024/11/11
2610
LTI系统的冲激响应-洞悉一切
小白见过的最通俗易懂的卷积解释
作者:palet https://www.zhihu.com/question/22298352/answer/637156871
小白学视觉
2019/10/14
9300
小白见过的最通俗易懂的卷积解释
全面解析傅立叶变换(非常详细)
第一部分、 DFT 第一章、傅立叶变换的由来 第二章、实数形式离散傅立叶变换(Real DFT)
全栈程序员站长
2022/11/01
6.1K0
独家 | 由第一原理导出卷积
TLDR:你有没有想过卷积有什么特别之处?在这篇文章中,我从第一原理中推导出卷积,并展示它的平移对称性。
数据派THU
2020/09/04
8810
大话信号与系统 — 奇文共欣赏[通俗易懂]
前言:大家都知道《信号与系统》是一门很难的课,很多人虽然学过了,但其实什么也没得到,今天给大家推荐这篇文章,看了之后,相信你会有收获。
全栈程序员站长
2022/09/22
9630
相关推荐
卷积的本质及物理意义,解释的真幽默!
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档