王木头课程

发布时间 2023-08-20 22:55:12作者: 诸葛村夫CC

卷积

 

右下角是卷积公式

形象的讲,f(x)表示我的进食量,即左上角这张图,每一个时刻都在吃进不同量的食物,g(t)表示某食物经过t小时后,在肚子里还剩下多少(比例)。那么卷积实际上就是求每一个时刻都在进食,且肚子里的食物在不断消化的情况下,任意时刻时,肚子里还剩下的食物。f(x)g(t-x)相乘表示之前某一时刻吃下的食物现在还剩下多少,因为g表示比例,所以相乘。然后再求积分表示求过去所有时刻的总和。

判断该公式是否是卷积的一个重要标志是,f()g()两个函数中变量相加后,是否能消去一个,x+(t-x)=t

下面我们看看x和t-x在图像上对应的是什么:

可以看到,x和t-x对应的是f()与g()的连线,T时刻的食物刚刚下肚,所以f(T)对应的是g(0),以此类推,越往前吃下的食物对应g的越往后的位置。按我的理解,这个图画的好像不严谨,因为现在是T时刻,所以f(0),下面对应的应该是g(T)。

卷积:如果有一个系统,其输入时不稳定的,但响应输出是稳定的,那么就可以用卷积公式来求该系统的存量。

如果要理解图像处理(注意这里是数字图像处理,而非卷积神经网络)中的卷积核对图像的操作具体代表什么,还需要对卷积有一个更宏观的定义:实际上卷积运算是求某一件事情发生时,不同时刻发生的事情对他的影响(贡献),或者说某一点发生了一件事情,其他位置上所有点对他的影响。

那么卷积核其实就是规定了某一个像素点它周围一圈像素点对它的影响,3*3的卷积核对九个数进行处理,然后得到下一层的输出,但注意这个输出位置在最中心的那个点上,具体如何影响,就是由卷积核的数值规定。

所以卷积核就是g函数,图像输入就是f,如果用公式严谨描述的话,卷积核实际上是g函数的翻转,因为从卷积操作的公式定义上看,g函数的操作与输出其实是一百八十度翻转的,但我们看到的卷积核是直接扣在图像上计算的。

到了卷积神经网络这,卷积核的作用是挑选和过滤特征,通过神经网络学习的过程,卷积核的参数学习实际上是中间像素点对周围像素点的试探和选择,保留有用的特征剔除没有用的。其实这都是老生常谈了,也没有什么深入和新颖的东西,ann rnn cnn transformer做的不都是这件事情吗