【深度学习基础】深入理解 卷积与卷积核

🌈 个人主页:十二月的猫-CSDN博客

🔥 系列专栏: 🏀深度学习_十二月的猫的博客-CSDN博客

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光

目录

[1. 卷积](#1. 卷积)

[1.1 卷积的定义](#1.1 卷积的定义)

[1.2 卷积的意义](#1.2 卷积的意义)

例子:信号分析

[2. 卷积核与卷积](#2. 卷积核与卷积)

[2.1 卷积](#2.1 卷积)

[2.2 卷积核](#2.2 卷积核)

[2.3 深度学习中的卷积](#2.3 深度学习中的卷积)

[3. 总结](#3. 总结)


1. 卷积

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

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

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

比如加法:

  • a+b ,是抽象的,本身只是一个数学符号
  • 在现实中,有非常多的意义,比如增加、合成、旋转等等

卷积,是我们学习高等数学之后,新接触的一种运算,因为涉及到积分、级数,所以看起来觉得很复杂。

核心思想:

1、卷积是一种运算

2、卷积和加法、减法等运算相同,都有其服务的现实意义

1.1 卷积的定义

我们称 (f*g)(n) 为 f,g 的卷积

其连续的定义为:

其离散的定义为:

这两个式子有一个共同的特征:

t以及n-t存在,也就是说两者相加永远为n

这就好像把一个毛巾卷起来,变为两部分:一边为t;另一边为n-t

到这里,大家可能就知道这个卷积中的卷是什么意思啦~~~~

拿一个经典例子卷毛巾:

1、卷毛巾就是将毛巾的其中一个角和另一个角连接起来

2、在卷积中就是t和n-t连接起来


1.2 卷积的意义

那么,在实际应用中我们又为什么需要引入卷积这个计算方式呢?

我来举两个例子大家就明白了!!!

例子:信号分析

如下图所示,输入信号是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

本质上就是在信号处理中,在处理随时间递减的信号量之间乘积求和的关系时,存在这种约束关系。

再比如:

小明在1时刻,吃了100kcal热量,2时刻吃了80kcal热量;同时在1时刻热量剩余90%,在2时刻热量会剩余70%。那么到2时刻热量剩余将是:100*70%+80*90*

如果把小明的进食热量看作一个函数,把热量剩余百分比看作第二个函数。那么小明在任何时刻的热量剩余,都是这两个函数做卷积操作

卷积本质:翻转+乘积求和

2. 卷积核与卷积

不知道看到这里的大家会不会很纳闷。

这这这,和我们深度学习里面的卷积核的卷积操作完全不同呀!!!!!

晕晕晕~~~

你说的没错,就是不同的(无语住了)

区别就是:卷积到底要不要翻转

2.1 卷积

这个卷积是指数学中的卷积

在数学中,两个矩阵进行卷积操作,卷积核是要翻卷的,如下面动图所示,它们的位置翻转对应。

数学中的卷积:计算要翻转180度

再来个例子:

对于一个公式:

x+y=n

计算这个公式的卷积操作,就是下图直线

2.2 卷积核

讲卷积核就让我们从一个例子开始讲

图像处理:

有这么一副图像,可以看到,图像上有很多噪点:

高频信号,就好像平地耸立的山峰:

看起来很显眼。

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

平滑后得到:

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

有噪点的原图,可以把它转为一个矩阵:

然后用下面这个平均矩阵(说明下,原图的处理实际上用的是正态分布矩阵,这里为了简单,就用了算术平均矩阵)作为卷积核g,来平滑图像:

记得刚才说过的算法,把高频信号与周围的数值平均一下就可以平滑山峰。

比如我要平滑:a11

就在矩阵中,取出a11点附近的点组成矩阵:f

和卷积核g进行卷积计算后,再填回去:

再来一张卷积的动态图:


那么最关键的来了:卷积核和矩阵的运算具体是如何的,也就是f和g具体是如何计算的

看到有的博主说是这样的

这在数学上来看是没有错的

但是在深度学习操作中,我们从来没有看到人是这么算的

2.3 深度学习中的卷积

概念辨析:

  1. **卷积核:**深度学习中的概念,执行的是深度学习中的卷积操作
  2. **深度学习的卷积:**不需要翻转的卷积
  3. **数学中的卷积:**翻转+乘积求和
  4. **深度学习的卷积:**乘积求和
  5. **深度学习的卷积:**又叫滤波
  6. **深度学习的卷积核:**又叫滤波器

1.上文可以清晰地看到数学中卷积运算的特点:

卷积核与原始的矩阵乘积,是围绕着中心元素进行180度旋转后,才是对应的元素。

2.卷积神经网络的卷积本质上是一种spatial filter(滤波)

我们来看两种图像空间滤波的常见操作

a)平滑滤波

b)边缘提取

这两种件事情,很容易通过设计特定的"卷积核",然后将其与像素矩阵的对应元素(不进行上述的旋转)相乘得到。
3.此"卷积"与彼"卷积"的联系与区别 :

**最直观的就是:是否进行翻转,然后再进行对应元素的加权求和。 **

其实本质上来说是两者的用途不同

  • 数学中卷积,主要是为了诸如信号处理、求两个随机变量和的分布等而定义的运算,所以需要"翻转"是根据问题的需要而确定的
  • 卷积神经网络中"卷积",是为了提取图像的特征,其实只借鉴了"加权求和"的特点
  • 还有一点一定要说的是:数学中的"卷积核"都是已知的或者给定的,卷积神经网络中"卷积核"本来就是trainable的参数,不是给定的,根据数据训练学习的,那么翻不翻转还有什么关系呢?因为无论翻转与否对应的都是未知参数!

3. 总结

  1. **卷积核:**深度学习中的概念,执行的是深度学习中的卷积操作
  2. **深度学习的卷积:**不需要翻转的卷积
  3. **数学中的卷积:**翻转+乘积求和
  4. **深度学习的卷积:**乘积求和
  5. **深度学习的卷积:**又叫滤波
  6. **深度学习的卷积核:**又叫滤波器

如果想要学习更多深度学习知识,大家可以点个关注并订阅,持续学习、天天进步

你的点赞就是我更新的动力,如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~

相关推荐
不去幼儿园1 小时前
【MARL】深入理解多智能体近端策略优化(MAPPO)算法与调参
人工智能·python·算法·机器学习·强化学习
想成为高手4991 小时前
生成式AI在教育技术中的应用:变革与创新
人工智能·aigc
YSGZJJ2 小时前
股指期货的套保策略如何精准选择和规避风险?
人工智能·区块链
无脑敲代码,bug漫天飞2 小时前
COR 损失函数
人工智能·机器学习
HPC_fac130520678163 小时前
以科学计算为切入点:剖析英伟达服务器过热难题
服务器·人工智能·深度学习·机器学习·计算机视觉·数据挖掘·gpu算力
小陈phd5 小时前
OpenCV从入门到精通实战(九)——基于dlib的疲劳监测 ear计算
人工智能·opencv·计算机视觉
Guofu_Liao6 小时前
大语言模型---LoRA简介;LoRA的优势;LoRA训练步骤;总结
人工智能·语言模型·自然语言处理·矩阵·llama
ZHOU_WUYI10 小时前
3.langchain中的prompt模板 (few shot examples in chat models)
人工智能·langchain·prompt
如若12310 小时前
主要用于图像的颜色提取、替换以及区域修改
人工智能·opencv·计算机视觉
老艾的AI世界11 小时前
AI翻唱神器,一键用你喜欢的歌手翻唱他人的曲目(附下载链接)
人工智能·深度学习·神经网络·机器学习·ai·ai翻唱·ai唱歌·ai歌曲