卷积定理和卷积公式-卷积定理及公式
作者:佚名
|
2人看过
发布时间:2026-06-06 15:58:03
卷积定理这东西,说白了就是三个矩阵乘法能偷懒。平时做卷积图,咱们脑子里像过筛子一样,拿一个就是化简,再拿一个再化简,但这俩直接叠在一起乘?那是啥?那是直接扔掉一个个卷积核,最终用一个高斯卷积核跟整个图
卷积定理这东西,说白了就是三个矩阵乘法能偷懒。平时做卷积图,咱们脑子里像过筛子一样,拿一个就是化简,再拿一个再化简,但这俩直接叠在一起乘?那是啥?那是直接扔掉一个个卷积核,最终用一个高斯卷积核跟整个图卷积一下。
这就变得特别简洁,反正最终只跟一个卷积核打交道。 拿一个卷积核跟整个图卷积一遍,然后再跟另一个卷积核卷积,那结局就是跟两个卷积核卷积,最终跟第三个卷积核再卷积。
这操作多了去了,但实际画图的时候,我们压根儿不会如此搞。 比如我要算两个卷积层的输出。
第一个卷积层有个 3x3 的核,第二个卷积层又有 5x5 的核。传统的做法是,先对原图做第一个卷积拿到中间图,再把中间图送给第二个卷积层。
这时候,要是我想直接算“中间图的卷积加上原图的卷积”,那就要先把原图和第二层卷积核都“中心化”,再跟中间图卷积。
这活儿量大,对精度影响也不小。 但卷积定理兜兜转转后告诉我们,实际上不用如此费事。中间图的卷积,跟原图的卷积,最终结局都是一样的。
为啥?出于中间图实际上是原图和第一个卷积核的“混合态”,它和原图共用同一个卷积核。
故此,中间图卷积 + 原图卷积,直接等同于“混合态卷积”和“原图卷积”的混合。 这就好比做菜。
第一个卷积层是把粗料(原图)和一种调料(卷积核 A)拌在一起,生成成品“混合态”。
第二个卷积层呢,是把成品“混合态”和另一种调料(卷积核 B)拌在一起。
要是你直接对原图拌 A,然后对混合态拌 B,这和“先把原图拌 A,拿到混合态,再对混合态拌 B"的操作结局一模一样。 故此,当你看到两个要么更多卷积核的时候,你根本不用一一去卷积,直接把它们卷成一个大数组,再跟最终一个卷积核卷一遍,就能拿到最终结局。 为了更直观,咱们拿个具体例子试试。假设原图是 8 行 8 列的灰度图。
第一个卷积核是 3x3 的,第二个是 2x2 的。 传统算法里,我会先拿 3x3 的核在 8x8 图上扫一圈,算出中间图。
这一扫,8x8 的全图就被处理完了。
然后,拿这个中间图去跟 2x2 的核扫一圈,算出第二次卷积结局。 但卷积定理告诉咱们,实际上不需求显式地算出中间图。
既然中间图和原图共用那个 3x3 的核,那只要把原图也“中心化”一下,跟 3x3 核一起扫,算出的结局和中间图彻底一样。
这时候,你再拿这个“等价的原图”跟 2x2 的核扫一遍,直接拿到最终结局。 举个例子,假设图里有个 3x3 的块被标记为“需求放大”。
第一次卷积(3x3 核)扫那会儿时,这个块会被平均处理,输出值为 50。
第二次卷积(2x2 核)扫那会儿时,这个块会被细分处理,输出值变成 60。 要是走传统路线,第一次卷积时,为了兼容 2x2 核,我会把整个图向上移一格,向下移一格,这样 3x3 核的中心正好对准那个“需求放大”的 3x3 块。
然后第二次卷积时,我也同样把图移上移下,让 2x2 核的中心对准同一个块。
这样算出来的结局确实是 60。 但要是我直接套用卷积定理,我不需求把图移。出于 3x3 核本身就是“平均处理”的模板,它自己的行为就是移上移下。我不需求显式地移动 3x3 核,我只需求把图移动,让 3x3 核的中心对准目标块即可。
同样地,我不需求显式地移动 2x2 核,我只需求让它的中心对准同一个块。 这样看来,卷积定理看似绕,实际上只要心里有个数,就能省掉所有图移动的操作。它让卷积变成了纯粹的数学运算,而不是复杂的几何变换。 再深入一点,要是图挺大,比如 1000 像素宽,卷积核忒大,比如 10x10。
这时候,传统算法就要把图多次移位,每次移位都要重新计算,效率低。卷积定理直接告诉你,这两个操作能够合并。你只需求对原图做一次“大卷积”,拿到中间图。
然后,再用中间图和另一个卷积核做“小卷积”。 中间图实际上已经包含了你原图的所有信息,只是被卷积核“润色”过了。小卷积实际上就是拿“润色过”的版本,再跟剩下的卷积核滚一遍。
这逻辑特别顺。 举个数据具体的例子。假设我们处理一张 640x640 的图像,有两个卷积层。卷积核 A 是 5x5,卷积核 B 是 3x3。 传统做法:先拿 A 卷积整张图,拿到中间图。
这一步得扫 64x64 次(出于行高 640/5=128 步,列宽 640/5=128 步,加上边界处理,大约 130 次迭代)。
然后把中间图拿给 B 卷积,扫 64x64 次。总共扫了 260 次。 卷积定理做法:直接拿原图拿 B 卷积一次(3x3 核),拿到中间图 B。
这一步扫 64x64 次。
然后把 B 卷积后的图拿给 A 卷积一次(5x5 核),拿到最终结局。总共扫了 128 次。 效率高了不止一倍。并且,这里有个细节,中间图 B 就是原图经过 3x3 核卷积后的结局,它和原图共用同一个 3x3 核,故此它的信息量理论上是一样的。A 卷积就是拿这个 B 卷积后的图,再用 5x5 核滚一遍。 这也解释了为啥大量深度学习框架里,卷积层内部会实现这种“融合”要么“链式”计算。出于本质上就是利用这个定理,削减重复的移位和计算。 自然,理论完美,实际落地还得看情况。
要是图里有空洞,比如空洞卷积,那卷积定理也得小心用。
不过大局部常规卷积,这定理还是真香。它把一堆复杂的置换、索引计算,简化成了两个标准的矩阵乘法运算。 最终总结一下,卷积定理就是告诉你,卷积操作实际上挺灵活。你不用一件件去算,直接把一堆卷积核卷起来,再跟最终一个卷积核卷,就能搞定。
这玩意儿省事儿,省脑子,直接让数学运算接管所有计算量。赶明儿做卷积图,脑子里就记住这点了,其他那些复杂的公式就不用硬背了。
这就变得特别简洁,反正最终只跟一个卷积核打交道。 拿一个卷积核跟整个图卷积一遍,然后再跟另一个卷积核卷积,那结局就是跟两个卷积核卷积,最终跟第三个卷积核再卷积。
这操作多了去了,但实际画图的时候,我们压根儿不会如此搞。 比如我要算两个卷积层的输出。
第一个卷积层有个 3x3 的核,第二个卷积层又有 5x5 的核。传统的做法是,先对原图做第一个卷积拿到中间图,再把中间图送给第二个卷积层。
这时候,要是我想直接算“中间图的卷积加上原图的卷积”,那就要先把原图和第二层卷积核都“中心化”,再跟中间图卷积。
这活儿量大,对精度影响也不小。 但卷积定理兜兜转转后告诉我们,实际上不用如此费事。中间图的卷积,跟原图的卷积,最终结局都是一样的。
为啥?出于中间图实际上是原图和第一个卷积核的“混合态”,它和原图共用同一个卷积核。
故此,中间图卷积 + 原图卷积,直接等同于“混合态卷积”和“原图卷积”的混合。 这就好比做菜。
第一个卷积层是把粗料(原图)和一种调料(卷积核 A)拌在一起,生成成品“混合态”。
第二个卷积层呢,是把成品“混合态”和另一种调料(卷积核 B)拌在一起。
要是你直接对原图拌 A,然后对混合态拌 B,这和“先把原图拌 A,拿到混合态,再对混合态拌 B"的操作结局一模一样。 故此,当你看到两个要么更多卷积核的时候,你根本不用一一去卷积,直接把它们卷成一个大数组,再跟最终一个卷积核卷一遍,就能拿到最终结局。 为了更直观,咱们拿个具体例子试试。假设原图是 8 行 8 列的灰度图。
第一个卷积核是 3x3 的,第二个是 2x2 的。 传统算法里,我会先拿 3x3 的核在 8x8 图上扫一圈,算出中间图。
这一扫,8x8 的全图就被处理完了。
然后,拿这个中间图去跟 2x2 的核扫一圈,算出第二次卷积结局。 但卷积定理告诉咱们,实际上不需求显式地算出中间图。
既然中间图和原图共用那个 3x3 的核,那只要把原图也“中心化”一下,跟 3x3 核一起扫,算出的结局和中间图彻底一样。
这时候,你再拿这个“等价的原图”跟 2x2 的核扫一遍,直接拿到最终结局。 举个例子,假设图里有个 3x3 的块被标记为“需求放大”。
第一次卷积(3x3 核)扫那会儿时,这个块会被平均处理,输出值为 50。
第二次卷积(2x2 核)扫那会儿时,这个块会被细分处理,输出值变成 60。 要是走传统路线,第一次卷积时,为了兼容 2x2 核,我会把整个图向上移一格,向下移一格,这样 3x3 核的中心正好对准那个“需求放大”的 3x3 块。
然后第二次卷积时,我也同样把图移上移下,让 2x2 核的中心对准同一个块。
这样算出来的结局确实是 60。 但要是我直接套用卷积定理,我不需求把图移。出于 3x3 核本身就是“平均处理”的模板,它自己的行为就是移上移下。我不需求显式地移动 3x3 核,我只需求把图移动,让 3x3 核的中心对准目标块即可。
同样地,我不需求显式地移动 2x2 核,我只需求让它的中心对准同一个块。 这样看来,卷积定理看似绕,实际上只要心里有个数,就能省掉所有图移动的操作。它让卷积变成了纯粹的数学运算,而不是复杂的几何变换。 再深入一点,要是图挺大,比如 1000 像素宽,卷积核忒大,比如 10x10。
这时候,传统算法就要把图多次移位,每次移位都要重新计算,效率低。卷积定理直接告诉你,这两个操作能够合并。你只需求对原图做一次“大卷积”,拿到中间图。
然后,再用中间图和另一个卷积核做“小卷积”。 中间图实际上已经包含了你原图的所有信息,只是被卷积核“润色”过了。小卷积实际上就是拿“润色过”的版本,再跟剩下的卷积核滚一遍。
这逻辑特别顺。 举个数据具体的例子。假设我们处理一张 640x640 的图像,有两个卷积层。卷积核 A 是 5x5,卷积核 B 是 3x3。 传统做法:先拿 A 卷积整张图,拿到中间图。
这一步得扫 64x64 次(出于行高 640/5=128 步,列宽 640/5=128 步,加上边界处理,大约 130 次迭代)。
然后把中间图拿给 B 卷积,扫 64x64 次。总共扫了 260 次。 卷积定理做法:直接拿原图拿 B 卷积一次(3x3 核),拿到中间图 B。
这一步扫 64x64 次。
然后把 B 卷积后的图拿给 A 卷积一次(5x5 核),拿到最终结局。总共扫了 128 次。 效率高了不止一倍。并且,这里有个细节,中间图 B 就是原图经过 3x3 核卷积后的结局,它和原图共用同一个 3x3 核,故此它的信息量理论上是一样的。A 卷积就是拿这个 B 卷积后的图,再用 5x5 核滚一遍。 这也解释了为啥大量深度学习框架里,卷积层内部会实现这种“融合”要么“链式”计算。出于本质上就是利用这个定理,削减重复的移位和计算。 自然,理论完美,实际落地还得看情况。
要是图里有空洞,比如空洞卷积,那卷积定理也得小心用。
不过大局部常规卷积,这定理还是真香。它把一堆复杂的置换、索引计算,简化成了两个标准的矩阵乘法运算。 最终总结一下,卷积定理就是告诉你,卷积操作实际上挺灵活。你不用一件件去算,直接把一堆卷积核卷起来,再跟最终一个卷积核卷,就能搞定。
这玩意儿省事儿,省脑子,直接让数学运算接管所有计算量。赶明儿做卷积图,脑子里就记住这点了,其他那些复杂的公式就不用硬背了。
上一篇 : 奥肯定理名词解释-奥肯定理名词解释
下一篇 : 三角形重心定理求最值-三角形重心求最值
推荐文章
Hahn 定理这东西,听着挺学术,实际上说白了就是个“只有坏才抓不到,好人全抓了”的判定器。在函数分析的这片泥潭里,它算是个活化石,别看年轻时候被拉去修修补补,目前又出于那个著名的正交多项式难题上了热
2026-06-05
22 人看过
勾股定理:看着像公式,实际上是人的一生 勾股定理,也就是那个 $a^2 + b^2 = c^2$ 的等式,听起来多么抽象又冷冰冰。但在咱们中国人的历史里,这事儿可不是哪位都能理解。在商朝,商高就算过
2026-06-06
3 人看过
三角形内接圆定理这事儿,实际上有点意思,别整那些虚的理论,咱们就直说,看着心算图就懂了。 画个最好办的正三角形吧,边长两,高就有点高了。它的外心、重心、垂心、内心,这四个点四舍五入全重合在一起,像个铁
2026-06-08
3 人看过
想象一下,你手里有一堆沙子,你想把它化掉一半。在宇宙里,沙子是无限的,你总能在手里多捞一点,要么少吐一点。但我们的逻辑游戏里有个规则的怪圈:你试图把“无限多”的东西切成“一半”,然后剩下的那局部再切成
2026-06-06
3 人看过



