如何通俗易懂地解释卷积?

马同学

从数学上讲,卷积就是一种运算。

某种运算,能被定义出来,至少有以下特征:

首先是抽象的、符号化的
其次,在生活、科研中,有着广泛的作用
比如加法:

[公式] ,是抽象的,本身只是一个数学符号
在现实中,有非常多的意义,比如增加、合成、旋转等等
卷积,是我们学习高等数学之后,新接触的一种运算,因为涉及到积分、级数,所以看起来觉得很复杂。

1 卷积的定义

在这里插入图片描述

这两个式子有一个共同的特征:
在这里插入图片描述
这个特征有什么意义?
在这里插入图片描述
在这里插入图片描述
如果遍历这些直线,就好比,把毛巾沿着角卷起来:

此处受到 荆哲:卷积为什么叫「卷」积? 答案的启发。

只看数学符号,卷积是抽象的,不好理解的,但是,我们可以通过现实中的意义,来习惯卷积这种运算,正如我们小学的时候,学习加减乘除需要各种苹果、糖果来帮助我们习惯一样。

我们来看看现实中,这样的定义有什么意义。

2 离散卷积的例子:丢骰子

我有两枚骰子:

在这里插入图片描述

把这两枚骰子都抛出去:
在这里插入图片描述

求:
在这里插入图片描述

这里问题的关键是,两个骰子加起来要等于4,这正是卷积的应用场景。

我们把骰子各个点数出现的概率表示出来:
在这里插入图片描述

那么,两枚骰子点数加起来为4的情况有:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3 连续卷积的例子:做馒头

楼下早点铺子生意太好了,供不应求,就买了一台机器,不断的生产馒头。

在这里插入图片描述

4 图像处理

4.1 原理

有这么一副图像,可以看到,图像上有很多噪点:
在这里插入图片描述

高频信号,就好像平地耸立的山峰:
在这里插入图片描述

看起来很显眼。

平滑这座山峰的办法之一就是,把山峰刨掉一些土,填到山峰周围去。用数学的话来说,就是把山峰周围的高度平均一下。

平滑后得到:
在这里插入图片描述

4.2 计算

卷积可以帮助实现这个平滑算法。

有噪点的原图,可以把它转为一个矩阵:
在这里插入图片描述
记得刚才说过的算法,把高频信号与周围的数值平均一下就可以平滑山峰。

比如我要平滑 [公式] 点,就在矩阵中,取出 [公式] 点附近的点组成矩阵 [公式] ,和 [公式] 进行卷积计算后,再填回去:
在这里插入图片描述

要注意一点,为了运用卷积, [公式] 虽然和 [公式] 同维度,但下标有点不一样:
在这里插入图片描述

我用一个动图来说明下计算过程:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

此图出处:Convolutional Neural Networks - Basics

palet

1. 对卷积的困惑

卷积这个概念,很早以前就学过,但是一直没有搞懂。教科书上通常会给出定义,给出很多性质,也会用实例和图形进行解释,但究竟为什么要这么设计,这么计算,背后的意义是什么,往往语焉不详。作为一个学物理出身的人,一个公式倘若倘若给不出结合实际的直观的通俗的解释(也就是背后的“物理”意义),就觉得少了点什么,觉得不是真的懂了。

在这里插入图片描述

​并且也解释了,先对g函数进行翻转,相当于在数轴上把g函数从右边褶到左边去,也就是卷积的“卷”的由来。

然后再把g函数平移到n,在这个位置对两个函数的对应点相乘,然后相加,这个过程是卷积的“积”的过程。

这个只是从计算的方式上对公式进行了解释,从数学上讲无可挑剔,但进一步追问,为什么要先翻转再平移,这么设计有何用意?还是有点费解。

在知乎,已经很多的热心网友对卷积举了很多形象的例子进行了解释,如卷地毯、丢骰子、打耳光、存钱等等。读完觉得非常生动有趣,但过细想想,还是感觉有些地方还是没解释清楚,甚至可能还有瑕疵,或者还可以改进(这些后面我会做一些分析)。

带着问题想了两个晚上,终于觉得有些问题想通了,所以就写出来跟网友分享,共同学习提高。不对的地方欢迎评论拍砖。。。

明确一下,这篇文章主要想解释两个问题:

    1. 卷积这个名词是怎么解释?“卷”是什么意思?“积”又是什么意思?
    1. 卷积背后的意义是什么,该如何解释?

2. 考虑的应用场景

为了更好地理解这些问题,我们先给出两个典型的应用场景:

1. 信号分析

一个输入信号f(t),经过一个线性系统(其特征可以用单位冲击响应函数g(t)描述)以后,输出信号应该是什么?实际上通过卷积运算就可以得到输出信号。

2. 图像处理

输入一幅图像f(x,y),经过特定设计的卷积核g(x,y)进行卷积处理以后,输出图像将会得到模糊,边缘强化等各种效果。

对卷积的理解
对卷积这个名词的理解:所谓两个函数的卷积,本质上就是先将一个函数翻转,然后进行滑动叠加。

在连续情况下,叠加指的是对两个函数的乘积求积分,在离散情况下就是加权求和,为简单起见就统一称为叠加。

整体看来是这么个过程:

翻转——>滑动——>叠加——>滑动——>叠加——>滑动——>叠加…

多次滑动得到的一系列叠加值,构成了卷积函数。

卷积的“卷”,指的的函数的翻转,从 g(t) 变成 g(-t) 的这个过程;同时,“卷”还有滑动的意味在里面(吸取了网友李文清的建议)。如果把卷积翻译为“褶积”,那么这个“褶”字就只有翻转的含义了。

卷积的“积”,指的是积分/加权求和。

有些文章只强调滑动叠加求和,而没有说函数的翻转,我觉得是不全面的;有的文章对“卷”的理解其实是“积”,我觉得是张冠李戴。

对卷积的意义的理解:

    1. 从“积”的过程可以看到,我们得到的叠加值,是个全局的概念。以信号分析为例,卷积的结果是不仅跟当前时刻输入信号的响应值有关,也跟过去所有时刻输入信号的响应都有关系,考虑了对过去的所有输入的效果的累积。在图像处理的中,卷积处理的结果,其实就是把每个像素周边的,甚至是整个图像的像素都考虑进来,对当前像素进行某种加权处理。所以说,“积”是全局概念,或者说是一种“混合”,把两个函数在时间或者空间上进行混合。
    1. 那为什么要进行“卷”?直接相乘不好吗?我的理解,进行“卷”(翻转)的目的其实是施加一种约束,它指定了在“积”的时候以什么为参照。在信号分析的场景,它指定了在哪个特定时间点的前后进行“积”,在空间分析的场景,它指定了在哪个位置的周边进行累积处理。

3. 举例说明

下面举几个例子说明为什么要翻转,以及叠加求和的意义。

例1:信号分析

如下图所示,输入信号是 f(t) ,是随时间变化的。系统响应函数是 g(t) ,图中的响应函数是随时间指数下降的,它的物理意义是说:如果在 t=0 的时刻有一个输入,那么随着时间的流逝,这个输入将不断衰减。换言之,到了 t=T时刻,原来在 t=0 时刻的输入f(0)的值将衰减为f(0)g(T)。

在这里插入图片描述
​​考虑到信号是连续输入的,也就是说,每个时刻都有新的信号进来,所以,最终输出的是所有之前输入信号的累积效果。如下图所示,在T=10时刻,输出结果跟图中带标记的区域整体有关。其中,f(10)因为是刚输入的,所以其输出结果应该是f(10)g(0),而时刻t=9的输入f(9),只经过了1个时间单位的衰减,所以产生的输出应该是 f(9)g(1),如此类推,即图中虚线所描述的关系。这些对应点相乘然后累加,就是T=10时刻的输出信号值,这个结果也是f和g两个函数在T=10时刻的卷积值。
在这里插入图片描述

​​显然,上面的对应关系看上去比较难看,是拧着的,所以,我们把g函数对折一下,变成了g(-t),这样就好看一些了。看到了吗?这就是为什么卷积要“卷”,要翻转的原因,这是从它的物理意义中给出的。
在这里插入图片描述

​​上图虽然没有拧着,已经顺过来了,但看上去还有点错位,所以再进一步平移T个单位,就是下图。它就是本文开始给出的卷积定义的一种图形的表述:

在这里插入图片描述

​​所以,在以上计算T时刻的卷积时,要维持的约束就是: t+ (T-t) = T 。这种约束的意义,大家可以自己体会。

例2:丢骰子

在本问题 如何通俗易懂地解释卷积?中排名第一的 马同学在中举了一个很好的例子(下面的一些图摘自马同学的文章,在此表示感谢),用丢骰子说明了卷积的应用。

要解决的问题是:有两枚骰子,把它们都抛出去,两枚骰子点数加起来为4的概率是多少?

在这里插入图片描述

​​分析一下,两枚骰子点数加起来为4的情况有三种情况:1+3=4, 2+2=4, 3+1=4

因此,两枚骰子点数加起来为4的概率为:

在这里插入图片描述

​​写成卷积的方式就是:​

在这里插入图片描述

​​在这里我想进一步用上面的翻转滑动叠加的逻辑进行解释。

首先,因为两个骰子的点数和是4,为了满足这个约束条件,我们还是把函数 g 翻转一下,然后阴影区域上下对应的数相乘,然后累加,相当于求自变量为4的卷积值,如下图所示:

在这里插入图片描述

​​进一步,如此翻转以后,可以方便地进行推广去求两个骰子点数和为 n 时的概率,为f 和 g的卷积 f*g(n),如下图所示:​
在这里插入图片描述

​​由上图可以看到,函数 g 的滑动,带来的是点数和的增大。这个例子中对f和g的约束条件就是点数和,它也是卷积函数的自变量。有兴趣还可以算算,如果骰子的每个点数出现的概率是均等的,那么两个骰子的点数和n=7的时候,概率最大。

例3:图像处理

还是引用知乎问题 如何通俗易懂地解释卷积?中 马同学的例子。图像可以表示为矩阵形式(下图摘自马同学的文章):
在这里插入图片描述

对图像的处理函数(如平滑,或者边缘提取),也可以用一个g矩阵来表示,如:
在这里插入图片描述

从卷积定义来看,应该是在x和y两个方向去累加(对应上面离散公式中的i和j两个下标),而且是无界的,从负无穷到正无穷。可是,真实世界都是有界的。例如,上面列举的图像处理函数g实际上是个3x3的矩阵,意味着,在除了原点附近以外,其它所有点的取值都为0。考虑到这个因素,上面的公式其实退化了,它只把坐标(u,v)附近的点选择出来做计算了。所以,真正的计算如下所示:
在这里插入图片描述
​​首先我们在原始图像矩阵中取出(u,v)处的矩阵:

在这里插入图片描述
在这里插入图片描述

请注意,以上公式有一个特点,做乘法的两个对应变量a,b的下标之和都是(u,v),其目的是对这种加权求和进行一种约束。这也是为什么要将矩阵g进行翻转的原因。以上矩阵下标之所以那么写,并且进行了翻转,是为了让大家更清楚地看到跟卷积的关系。这样做的好处是便于推广,也便于理解其物理意义。实际在计算的时候,都是用翻转以后的矩阵,直接求矩阵内积就可以了。

以上计算的是(u,v)处的卷积,延x轴或者y轴滑动,就可以求出图像中各个位置的卷积,其输出结果是处理以后的图像(即经过平滑、边缘提取等各种处理的图像)。

再深入思考一下,在算图像卷积的时候,我们是直接在原始图像矩阵中取了(u,v)处的矩阵,为什么要取这个位置的矩阵,本质上其实是为了满足以上的约束。因为我们要算(u,v)处的卷积,而g矩阵是3x3的矩阵,要满足下标跟这个3x3矩阵的和是(u,v),只能是取原始图像中以(u,v)为中心的这个3x3矩阵,即图中的阴影区域的矩阵。

推而广之,如果如果g矩阵不是3x3,而是7x7,那我们就要在原始图像中取以(u,v)为中心的7x7矩阵进行计算。由此可见,这种卷积就是把原始图像中的相邻像素都考虑进来,进行混合。相邻的区域范围取决于g矩阵的维度,维度越大,涉及的周边像素越多。而矩阵的设计,则决定了这种混合输出的图像跟原始图像比,究竟是模糊了,还是更锐利了。

在这里插入图片描述

4. 对一些解释的不同意见

上面一些对卷积的形象解释,如知乎问题卷积为什么叫「卷」积?中 荆哲 ,以及问题 如何通俗易懂地解释卷积?中 马同学 等人提出的如下比喻:
在这里插入图片描述

​​其实图中“卷”的方向,是沿该方向进行积分求和的方向,并无翻转之意。因此,这种解释,并没有完整描述卷积的含义,对“卷”的理解值得商榷。

一些参考资料
《数字信号处理(第二版)》程乾生,北京大学出版社

《信号与系统引论》 郑君里,应启珩,杨为理,高等教育出版社

https://www.zhihu.com/question/22298352

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

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

相关文章

[渝粤题库]西北工业大学电工与电子技术

电工与电子技术 1.{ 如图所示电路中,电压U等于( )。} 4V 2.{ 直流电路如图所示,电流I应等于( )。} 7A 3.{ 如图所示电路中,a点电位等于( )。} -1V 4.{ 将…

具有中央异常处理和VO验证的Spring Data JPA –框架

1.简介 一段时间以来,Spring框架已成为事实上的标准,可以创建任何基于REST API的应用程序。 Spring提供了各种现成的组件,以避免编写重复而繁琐的样板代码。 另外,关于Spring的美丽之处在于,如果有现成的解决方案&…

[渝粤题库]西北工业大学统计学

窗体顶端 一. 单选题 (共35题,共70分) 1. 有A、B两单位,A单位工人的平均工资为1100元,标准差为125元,B单位资料如下表1所示: 根据表1资料,计算B单位工人平均工资为( 1050元 &#…

matlab获得矩阵行数或列数的函数

1、ndims(A)返回A的维数 例子:(行,列)(400,2)的二维数组返回2 2、size(A)返回A各个维的最大元素个数 例子:(行,列)(400,2&…

【渝粤题库】国家开放大学2021春2402外国文学题目

试卷代号:2402 2021年春季学期期末统一考试 外国文学 试题(开卷) 2021年7月 一、埴空颖(共30分) (一)写出下列作品的作者(每空1分,共10分) 1.《俄狄浦斯王》_______________________…

【渝粤题库】国家开放大学2021春2517社区工作题目

试卷代号:2517 2021年春季学期期末统一考试 社区工作试题 2021年7月 一、单项选择题(每小题2分,共20分,将正确答案选项的字母填入括号内) 1.内地的社区工作是指社区专职工作者在党和政府的领导下,依靠( )&a…

初识斯蒂尔杰斯积分(Stieltjes integral)

https://blog.csdn.net/Northernland/article/details/83051415

【渝粤题库】国家开放大学2021春2704植物学基础题目

试卷代号: 2704 2021年春季学期期末统一考试 植物学基础 试题 2021年7月 一、单项选择题(共15分,每题3分) 1.下列哪一项不属于胚的结构( )。 A.胚根 B.胚芽 C.胚轴 D.胚乳 2.在有丝分裂过程中,染色体排列到细胞中央赤道…

drools6.5_使用Drools 6.0进行部署

drools6.5KieScanner 6.0 KieScanner取代了5.x KnowledgeAgent。 它使用嵌入式Maven允许在运行时解析和检索jar。 6.0应用程序现在可以轻松支持依赖关系和可传递依赖关系; 使用众所周知的Maven语义进行版本控制。 它允许在类路径上部署,也可以在运行时动…

【渝粤题库】国家开放大学2021春2773特种动物养殖题目

试卷代号:2773 2021年春季学期期末统一考试 特种动物养殖 试题 2021年7月 一、单项选择题(共15分,每小题3分) 1.家兔是“刺激性排卵”动物,在交配后( )小时排卵,在非发情期配种也可能受孕。 A.8&#xff5e…

双子(Dioid)

双子代数是若其对任意无限多元的 “和”封闭且乘法对此无限和具分配律。 https://baike.baidu.com/item/%E5%8F%8C%E5%AD%90%E4%BB%A3%E6%95%B0

【渝粤题库】国家开放大学2021春3907安全原理题目

试卷代号:3907 2021年春季学期期末统一考试 安全原理 试题(开卷) 2021年7月 一、单项选择题(每题3分,共30分) 1.博德认为:管理者应该充分发挥管理机能中的( )机能,有效地控制人的不安…

具有外部Zookeeper集成并使用SOLRJ API访问数据的SOLR cloud 7.4集群配置

SOLR是最流行且高度可扩展的搜索引擎之一,它基于分布式索引技术运行。 Solr索引几乎可以基于任何类型的数据源(CSV数据或XML数据或从RDBMS数据库或标准文件系统中提取的数据)构建。 对于以RDBMS数据库作为后端构建的任何Web应用程序&#xf…

【渝粤题库】国家开放大学2021春3990产品管理题目

试卷代号:3990 2021年春季学期期末统一考试 产品管理 试题 2021年7月 一、单项选择题(在备选答案中,有一个正确答案,请将正确答案的字母填入括号内。每小题2分,共20分) 1.在生产销售方面,只要产…

【渝粤题库】广东开放大学 大学英语1 形成性考核

选择题 题目: 题干 I’ll try and find ____ the name of the person who saved my life yesterday. 题目:They()have a share. 题目:()child enjoys Christmas. 题目:My pen is lo…

随机过程及其稳态stability

1. 为什么要研究随机过程? 人类认识世界的历史,就是一认识和描绘各种运动的历史,从宏观的天体运动到分子的运动,到人心理的运动-我们通称为变化,就是一个东西随时间的改变。 人们最成功的描绘运动的模型是牛顿的天体…

【渝粤题库】广东开放大学 税务会计技术 形成性考核

选择题 题目: 税收法律关系中的权利客体是指( )。 选择一项: 题目: 在税负能够转嫁的条件下,纳税人并不一定是( )。 选择一项: 题目: 税收采取的是&#xf…

【渝粤题库】广东开放大学 人力资源管理(本科) 形成性考核

选择题 题目:巴甫洛夫通过教会狗听到铃声后做出分泌唾液反应的研究得出的理论 题目:当职位空缺有许多种,而且在某一特定地区内又有足够的求职者的情况下,应该使用以下哪种招募式 题目:传统培训培养员工完成本职工作所需…

求离散马尔科夫链的平稳分布+按照一定概率分布生成想要的样本

1. 求离散马尔科夫链的平稳分布的两种解法 假设离散马尔科夫链的转移矩阵为P PP,平稳分布为π \piπ,则平稳分布满足: PππP \pi \piPππ 1.1 迭代法 求平稳分布的一种简单方法是迭代法,即随机初始化初始分布π 0 \pi_0π 0 …

使Java具有响应性的框架和工具包:RxJava,Spring Reactor,Akka和Vert.x概述

如今,人们需要具有高用户体验的高响应性,交互式应用程序,这通常意味着处理异步性,尤其是当这些应用程序涉及高负载,实时数据和多用户时。 由于Java是一种固有的支持命令式编程风格的面向对象语言,因此异步…