最近总是和卷积打交道,工作需要,每天都要碰到它好几次,不胜烦恼,因为在大学时候学信号与系统的时候就没学会,我于是心想一定要把卷积完全搞明白。正好同办公室的同学也问我什么是卷积,师姐昨天也告诉我说:“我也早就想把这个问题搞明白了!”经过一段时间的思考之后,有一些很有趣的体会和大家分享。
听说卷积这种运算式物理学家发明的,在实际中用得不亦乐乎,而数学家却一直没有把运算的意义彻底搞明白。仔细品以下,还是有那么点滋味的。
下面先看一下剑桥大学的教科书对卷积的定义:
我们都知道这个公式,但是它有什么物理意义呢,平时我们用卷积做过很多事情,信号处理时,输出函数是输入函数和系统函数的卷积,在图像处理时,两组幅分辨率不同的图卷积之后得到的互相平滑的图像可以方便处理。卷积甚至可以用在考试中,为了让照片同时像两个人,只要把两人的图像卷积处理即可,这就是一种平滑的过程,可是我们怎么才能真正把公式和实际建立起一种联系呢,也就是说,我们能不能从生活中找到一种很方便且具体的例子来表达公式的物理意义呢?我想到一种,下面进入正题: 比如说你的老板命令你干活,你却到楼下打台球去了,后来被老板发现,他非常气愤,扇了你一巴掌(注意,这就是输入信号,脉冲),于是你的脸上会渐渐地(贱贱地)鼓起来一个包,你的脸就是一个系统,而鼓起来的包就是你的脸对巴掌的响应,好,这样就和信号系统建立起来意义对应的联系。下面还需要一些假设来保证论证的严谨:假定你的脸是线性时不变系统,也就是说,无论什么时候老板打你一巴掌,打在你脸的同一位置(这似乎要求你的脸足够光滑,如果你说你长了很多青春痘,甚至整个脸皮处处连续处处不可导,那难度太大了,我就无话可说了哈哈),你的脸上总是会在相同的时间间隔内鼓起来一个相同高度的包来,并且假定以鼓起来的包的大小作为系统输出。好了,那么,下面可以进入核心内容——卷积了! 如果你每天都到地下去打台球,那么老板每天都要扇你一巴掌,不过当老板打你一巴掌后,你5分钟就消肿了,所以时间长了,你甚至就适应这种生活了……如果有一天,老板忍无可忍,以0.5秒的间隔开始不间断的扇你的过程,这样问题就来了,第一次扇你鼓起来的包还没消肿,第二个巴掌就来了,你脸上的包就可能鼓起来两倍高,老板不断扇你,脉冲不断作用在你脸上,效果不断叠加了,这样这些效果就可以求和了,结果就是你脸上的包的高度岁时间变化的一个函数了(注意理解);如果老板再狠一点,频率越来越高,以至于你都辨别不清时间间隔了,那么,求和就变成积分了。可以这样理解,在这个过程中的某一固定的时刻,你的脸上的包的鼓起程度和什么有关呢?和之前每次打你都有关!但是各次的贡献是不一样的,越早打的巴掌,贡献越小,所以这就是说,某一时刻的输出是之前很多次输入乘以各自的衰减系数之后的叠加而形成某一点的输出,然后再把不同时刻的输出点放在一起,形成一个函数,这就是卷积,卷积之后的函数就是你脸上的包的大小随时间变化的函数。本来你的包几分钟就可以消肿,可是如果连续打,几个小时也消不了肿了,这难道不是一种平滑过程么?反映到剑桥大学的公式上,f(a)就是第a个巴掌,g(x-a)就是第a个巴掌在x时刻的作用程度,乘起来再叠加就ok了,大家说是不是这个道理呢?我想这个例子已经非常形象了,你对卷积有了更加具体深刻的了解了吗? 最近要忙开题了,不过周末了还是放松一下吧。其实我真的希望我的朋友们看到这篇文章能给我留言,发表你们的想法,有不妥之处欢迎提出来。在本文的下半部分,我会再讲一个抽象的例子,以便能让大家从卷积中能更好地了解数学与生活的联系。 最后提醒各位,请勿亲身尝试……
|
相关推荐
EasyCNN:轻松卷积神经网络
KlangFalter, 卷积音频插件( 比如,用作卷积混响) KlangFalterKlangFalter是一个卷积音频插件,比如 用作卷积混响。我开发了一段时间,因为我找不到适合于我的需求的卷音响应插件。 ;- )插件功能:零延迟轻松用户...
psf的matlab代码去卷积3D 显微图像的3D反卷积代码 使用深度学习Abhijeet Phatak的EE367最终项目3D反卷积() ...v6二进制格式存储,以便轻松导入python而不会降低性能。 神经网络 请确保已安装tensorflow-gpu。 否则,
该库使您可以轻松计算自己喜欢的卷积网络的接收场参数。 您可以使用它来了解输出功能所依赖的输入图像区域的大小。 更好的是,使用库计算的参数,您可以轻松找到用于计算每个convnet功能的确切图像区域。 该库可...
无论是工作还是生活,这款程序都能帮助我们轻松应对各种挑战。 其次,这款程序的界面设计非常友好。它的界面简洁明了,操作简单易懂,即使是不熟悉电脑操作的人也可以轻松上手。同时,它还支持自定义快捷键和界面...
3D传感技术的最新进展使人们有可能轻松地拍摄彩色和深度信息并存的图片,以提高物体识别的图像。目前,大多数方法对于这个新的3D方式依赖于非常精心设计的特征。引入一个基于卷积和递归神经网络(CNN和RNN)组合的...
r2018a构建,可以在更高版本中轻松使用。 Main.m是加载数据集并包含函数回调的文件。 同一项目有多个功能文件,但有所不同。 请阅读每个文件中的内容以更好地理解。 该算法仅在串联网络(VGG模型和用户定义的模型)...
此外,我附上了我的论文,以演示如何针对其他速率和不同的不同元素大小轻松修改代码。 提供卷积编码方案的详细概述。 如果您决定使用此代码,请以正确的方式引用论文和此代码。 更多信息: ...
通过用LBoM替换DCNN中的基本卷积层,可以轻松实现RI-LBCNN,并且可以自然地将LBoM插入流行的模型中,而无需对优化过程进行任何额外的修改。 同时,因此可以容易地端到端地训练所提出的RI-LBCNN。 大量实验表明,
利用卷积神经网络实现图像的识别并将代码部署在树莓派中实现,使用的是谷歌深度学习框架Tensorflow,使用果蔬图像数据集训练模型后,可以达到随机输入单张果蔬图片,返回图片分类结果的效果.zip嵌入式优质项目,资源...
为了更清晰的分离,我在播放按钮、文件命令和课程核心功能所需的按钮组上使用按钮组,以便在使用程序时轻松区分和定位每个按钮 在按钮和选项卡上方放置一个轴以显示频谱图当前加载/复杂/编辑的声音。 我添加了不同的...
近年来,技术的快速发展给人类的生活带来了变化,这帮助我们即使在复杂的管理系统中也能更轻松地完成任务。 汽车行业发展Swift,一些公司正在尝试制造自动驾驶汽车,其中交通标志识别是需要考虑的重要因素之一。 ...
近年来,卷积神经网络(CNN)在各种计算机视觉任务上实现了前所未有的进步。 但是,训练大型CNN是一项资源密集型任务,需要专门的图形处理单元(GPU)和高度优化的实现,才能从硬件获得最佳性能。 GPU内存是CNN训练...
Conda是一个开源软件包管理系统和环境管理系统,用于安装软件包的多个版本及其依赖关系,并在它们之间轻松切换。 它可以在Linux,OS X和Windows上运行,并且是为Python程序创建的,但是可以打包和分发任何软件。 ...
它还提供了许多预先训练的模型和数据集,使得研究人员和开发者可以轻松地开始他们的项目。 在本练习中,我们首先介绍了如何使用PyTorch构建卷积神经网络(CNN)来对MNIST数据集中的手写数字进行分类。通过定义模型...
促进稀疏性与规则性之间的和谐:卷积神经网络的轻松同步架构
用卷积滤波器matlab代码这是什么? S ignal P rocessing O RG N OTES 这是使用组织模式组织小型软件项目的示例。 这里的项目(主要是C ++),包括几个相关的内容: 一个(模板)类: Cb 以规范形式(又称直接形式II...
圆锥卷积的主要优点是,由于特征图随输入图像直接旋转,因此学习的特征可以轻松地解释,并且由于对旋转不感到困惑,因此可以预期对特定任务更有意义。 安装 所需的Python软件包:TensorFlow,Numpy 在主文件夹中,从...
1、该资源内项目代码都经过测试运行成功,功能ok的...适用工作项目、毕业设计,课程设计,项目源码均经过助教老师测试,运行无误,轻松复刻,欢迎下载 -------- 下载后请首先打开README.md文件(如有),仅供学习参考。
在化工原料、服装、食品原料等的出货检验中,需要检测正常产品中的缺陷和杂质... 【Keyward】图像处理、图像分类、深度学习、深度学习、IPCV演示・ SegNet ・ 异常检测 ・ 视觉检测 ・ 语义分割 ・ 自动编码器 ・ 卷积