最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

天天短讯!什么是卷积

来源:博客园

什么是卷积

1.卷积

公式


(资料图)

举例:

如果一个人特别喜欢吃东西,假设其24小时都是在吃东西,那么吃东西这件事情就可以用抽象的方式画图体现出来,横坐标代表了进食的时间,纵坐标代表了进食的多少。

吃完东西总是要进行消化的,消化的速率和吃的什么以及吃了多少没有关系,只和时间有关,横坐标是时间,纵坐标是剩余食物的比例在某个时间还剩多少比例(并不是在胃里还有多少的食物)。

若要问某个时间胃里还有多少食物,就要用到卷积公式。在公式中:

用f函数表示进食

用g函数表示消化

如果不考虑消化,则只需要把某时刻之前吃的所有食物都相加,即对函数进行积分即可。

但现实问题是,吃掉的东西还是会被消化的,也就是说假设在中午12点吃了一碗米饭,当到下午两点的时候,米饭已经被消化了一部分,如果想直到被消化了有多少,只看f函数是不够的,还要参考消化函数

考虑到米饭从12点进入胃里到14点一共被消化了2个小时,这两个小时消化之后,米饭在胃里还剩的比率就是g(2)这个点代表的纵坐标,所以用这个比例乘以12点摄入的食物的多少就可以代表14点此时食物还有多少。(就比如两个小时米饭还有40%,那么就用一开始的总量f(12)乘40%就是剩下的有多少米饭)

同样的道理,假设在其他时刻也吃了很多不同的食物,那么在14点剩下多少,也是用同样的方法进行计算

若将胃里还有多少食物的计算方法进行推广,得到一般情况下的公式。在t时刻,胃里还剩下多少食物。

注意:但凡是卷积,两个函数中的自变量相加之后就会消掉其中一个,剩下另外一个

x和t-x可以代表着f函数和g函数的连线,可以是f函数上的点对应着的g函数上的点,这两个点相乘,得到的是t时刻还剩下多少x时刻吃下去的食物,将这些食物相加,也就是所有的f函数和g函数对应点的相乘再相加,得到的就是胃里剩下的所有食物。

总结一下:在此案例上理解一下狭义的卷积的物理意义就是,如果有一个系统的输入是不稳定的(不稳定输入函数f),输出是稳定的(稳定输出函数g),那么就可以用卷积来求这个系统的存量

如果将上图的g函数翻转一下,就可以发现,看起来没有那么别扭了,因为反转,所以叫卷积。

2.卷积图像操作

卷积神经网络的一个主要用途就是去识别图片里的内容,比如把图片里的猫给挑出来,之所以叫做卷积神经网络,就是因为在把图片交给神经网络之前,先要对图像进行卷积操作。那么,什么是图像的卷积操作?

电脑中的图片,可以看作是一个一个的像素点

也可以当作是一个大的表格,表格里就是这个像素的具体信息,比如灰度值、RGB值等

卷积操作其实就是用一个3*3的点阵和图像进行操作,这个3*3的点阵就被叫做卷积核

将卷积核扣在图像的点阵上,然后对应的两个数进行相乘,3*3的点阵,应该是有九个数进行相乘,最后还要把这9个结果相加保存到一起,这就相当于得到了一个新的像素值。

接下来,只需要用卷积核把整个图像都扫一遍,之后得到的就是卷积操作后的新图像了。

但是发现卷积操作之后得到的新图像总是少一圈,所以需要在处理之前在图像外面加一圈都是0的像素,这样就能够得到一个同样大小的图片了

卷积和图像的卷积操作有什么联系呢?

什么是函数f什么是函数g呢?

图像卷积操作时是将图片与卷积核先相乘再相加,所以图象和卷积核一个是f一个是g,图像上的像素点是在不断变化的,卷积核是一个不变的点阵,所以图象是函数f,卷积核是函数g

在图像卷积时,一个图片对应的f函数应该是一个和横纵坐标有关的二元函数,其图像应该是一个平面波

如果此时还是用前文讲狭义的卷积定义去理解,那么将不能将卷积核和g函数连接起来,所以应该重新理解卷积是什么?

假设是在t时刻发生了飓风,而发生飓风的原因,是引因为在之前有很多蝴蝶扇动了翅膀,比如在x时刻一只蝴蝶扇动了翅膀,而这件事情会对t时刻发生的飓风产生影响,但是这个影响会随着时间的变化而改变,其影响的变化是由g函数来体现的。所以右侧方框里的卷积处理的是之前蝴蝶扇动翅膀,对现在发生的飓风产生了多少影响。所有可以重新理解卷积:在某一时刻发生了一件事,而这件事情的产生会受到之前很多事情的影响,具体怎么影响还要看之前事情发生的时刻x和此事件发生的的时刻t之间的时间。而规定这段时间事情影响力的变化的就是g函数

图像的卷积操作,或许就是在看很多像素点对某一个像素点是如何产生影响的。

卷积核的作用是什么?卷积核点阵里的数字不同,最后处理的图像效果也是不同的,下图卷积核就是找到一个像素点,然后把其周围的像素点全都加起来,然后求平均,这样处理完图像可以让图像变得更平滑,更朦胧,所以这个叫做平滑卷积操作

平滑卷积操作的效果也如图所示,什么是平滑操作?就是让周围的像素点和选定像素点相差不要太大。由此卷积核的作用便已知晓:就是规定了周围的像素点是如何对选定的当先像素点产生影响的

卷积核的数学运算 ,加入我们想知道左下角的像素点对中心像素点产生了什么样的影响,就可以类比成x时刻发生的事情对t时刻发生的事情产生的影响,就可以知道g函数的参数变量是t-x,就可以轻易的算出来左下角的像素点应该乘g(1,1)

当计算出所有的周围像素点应该乘的数就可以发现,卷积核是刚好反着的,于是将卷积核旋转180°可以发现,刚好对应。

也就是说,g函数并不等于卷积核,二者刚好相差旋转的180°,我们前面看到的卷积核是可以直接扣在图像上,直接相乘再相加,已经省去了旋转的步骤

总结来说:卷积可以被看作过去对现在的影响,也可以是周围像素点对中心选定像素点的影响,g函数就是规定了如何影响的关键

3.卷积神经网络

卷积操作是卷积神经网络第一层的关键,相当于视网膜看到图片后先进行预处理,在交给大脑。所以问题变成了卷积神经网络第一层在干什么?和卷积有什么关系?

卷积神经网络一般是用来做图像识别的,比如输入的图像中有x有o,通过卷积神经网络,可以将其识别出来

但重点不是识别规规整整的情况,而是一些歪歪扭扭的x和o

对于人类来说很好识别的图像,对于计算机来说,进行识别的时候会把像素点挨个进行比较,会发现在计算机看来这其实是两种东西

但如果仔细观察发现,两边的图像尽管并不相同,但是如果只看局部的话,会发现局部是有相同地方的

所以卷积神经网络识别图像的第一步就是把图像的局部特征挑选出来,把局部特征交给神经网络,由神经网络去判断。计算机提取局部特征就是通过对图像进行卷积操作来进行。

前面学到卷积核是用来处理周围像素和中心像素点的关系,那是如何来提取特征呢?因为卷积核并不是只有一种平滑卷积核,比如下面两个卷积核,第一个是把图像的垂直边界提取出来,忽略了水平边界,第二个是把水平边界提取出来,忽略了垂直边界,此时可以发现,利用卷积核将图片里的特征提取了出来

卷积操作还有个功能:如果挑选的卷积核合适,那么就可以对图片进行过滤,把某些特征保存下来,过滤掉其他特征。这样的卷积核也叫做过滤器,所以上图的两个卷积核分别叫做垂直边界过滤器和水平边界过滤器

图像和卷积核的相乘再相加,可以看作是周围像素点对当前像素点的影响,也可以看作当前像像素点对周围像素点的试探,卷积核就是试探的模板当不想考虑某个位置,就可以把他设置为0,当想考虑某个位置,就可以把卷积核上对应的数值拉高,卷积操作就是对周围像素点的一个主动的试探和选择,通过卷积核把周围有用的特征给保留下来

回到上图的识别x的问题,通过三个卷积核则可以过滤出来被框出来的三个特征

将整个图像分别和三个卷积和进行匹配之后,就可以明显地看出与某个特征匹配的全部信息

最终总结:

卷积的含义:

  • 不稳定输入,稳定输出,求系统存量

  • 在图像处理中,一个卷积核就是规定了周围像素点对当前像素点会产生怎么样的影响

  • 在卷积神经网络中,一个过滤器的卷积核就是规定了,一个像素带点,会如何试探周围像素点,并选择周围像素点,如何筛选图像的特征

以上笔记出自b站up主:王木头学科学

https://space.bilibili.com/504715181/video?tid=36&keyword=&order=pubdate

关键词: 神经网络 局部特征