卷积通俗解释以及应用

1卷积是什么

首先,卷积是一种数学运算,本质和数学中的加减乘除运算没有区别,只不过比较复杂而已

卷积,顾名思义,就是又"卷"又"积",积是积分的意思,那卷是什么呢?简单说,"卷"包括翻折和滑动

在卷积运算中,一个函数(通常称为卷积核或滤波器)会先被翻折(或称为反褶),然后在另一个函数(通常称为输入或信号)上进行滑动。在每次滑动到新的位置时,两个函数在该位置的对应点相乘,然后将这些乘积进行累加(在连续情况下是积分,在离散情况下是求和)。这个过程反复进行,从而得到卷积的结果。

好了,上面是卷积的形象化解释,下面我们看卷积的严格数学定义,卷积公式

如果卷积的变量是函数 和 ,则卷积的计算变为

其中p是积分变量,积分也是求和,t是使函数h(-p)位移的量,星号*表示卷积。

我们一起来分析一下这个公式

首先,卷积是一种积分运算,它涉及到两个函数的相乘,并对结果进行积分。每个相乘的结果实际上代表了在某一时间点或位置上,两个函数值的乘积。这个乘积可以被视为一个权重,反映了两个函数在该时间点或位置上的相对重要性。

卷积运算涉及以下步骤:

  1. 函数翻转 :首先,其中一个函数(在此为)需要进行翻转。在数学上,这通常意味着将其关于y轴对称。
  2. 滑动:翻转后的函数h(t-p)在另一个函数x(p)上进行滑动。这里,p是积分变量,表示当前滑动的位置。
  3. 相乘与积分:在每次滑动中,函数f(p)和g(t-p)在相同位置的点上进行相乘,并对所有位置的结果进行积分。积分是对相乘结果的累加,反映了两个函数在重叠区域的相互作用

2卷积的离散数值运算

例一 假设有两枚骰子, 点数i出现的概率分别是f(i),g(i) 其中i=1,2,3,4,5,6, 求同时投掷这两枚骰子得到的点数和为h(i)的概率.

由题意可知, 两枚骰子的点数和有2,3,⋯,12共11种情况. 对应的概率分别为

ℎ(2)=f(1)g(1)

ℎ(3)=f(1)g(2) + f(2)g(1)

ℎ(4)=f(1)g(3) + f(2)g(2) + f(3)g(1)

ℎ(5)=f(1)g(4) + f(2)g(3) + f(3)g(2) + f(4)g(1)

以此类推...... 如果将所有的点数和的概率一一计算, 可以发现, 就是将下面两个向量

(f(1),f(2),⋯,f(6)) 和 (g(1),g(2),⋯,g(6))

进行"翻转平移相乘"运算.

例二 小明每年年初都往某银行存入100+50x元(x=1,2,3,4,5), 假设银行年化利率为r, 其中每年存入的钱到年底结算一年利息后, 本息和自动存入下一年. 那么第1,2,3,4,5年年底小明能拿到多少钱?

第1年年底有150(1+r)

第2年年底有150(1+r)^2+200(1+r)

第3年年底有150(1+r)^3+200(1+r)^2+250(1+r)

⋯以此类推

如果记f(x)=100+50x, g(x)=(1+r)^x, 那么第1到5年年底能拿到的钱就是将下面两个向量

(f(1),f(2),⋯,f(5)) 和 (g(1),g(2),⋯,g(5))

进行"翻转平移相乘"运算

3卷积的连续数值运算

例一 假设有两个函数 f(t) = t(在区间 0, 1 上)和 g(t) = 1(在区间 0, 2 上)。我们要求这两个函数的卷积。

首先,确定积分范围。由于 f(t) 在 0, 1 上有定义,g(t - τ) 在 τ, τ+2 上有定义,因此积分范围应为这两个区间的交集,即 max(0, τ), min(1, τ+2)。

然后,对于每一个 t 值,计算积分 ∫ f(τ)g(t - τ) dτ。由于 g(t) = 1,积分简化为 ∫ f(τ) dτ。

最后,对于每一个 t 值,在对应的积分范围内计算该积分,得到 h(t)。在这个例子中,由于 f(τ) = τ,积分结果为 h(t) = 0.5t^2(在区间 0, 1 上),当 t 在 0, 1 之外时,h(t) 为 0。

4卷积核介绍

卷积核(Convolution Kernel)是卷积神经网络(CNN)中的核心组件,它实际上是一个小的矩阵,其大小通常为3x3或5x5。在卷积神经网络中,一个卷积层可以有多个不同的卷积核,而每个卷积核都会在输入数据上进行滑动,以执行卷积操作并产生对应的特征图(Feature Map)。

卷积核的主要作用是提取输入数据(如图像)中的局部特征。这些特征可能包括边缘、角点、纹理等,具体取决于卷积核的设计。通过训练过程,卷积核的参数(即矩阵中的数值)会被优化,以更好地提取对任务有用的特征。

卷积核的滑动过程是通过与输入数据中的局部区域进行点积运算,并加上偏置项后,通过激活函数得到输出。这个过程会在输入数据的所有位置上重复进行,从而生成一个完整的特征图。

不同的卷积核可以提取到不同的特征,因此,在卷积神经网络中,通常会使用多个卷积核来捕捉输入数据的多种特征。这些特征图随后会被送入下一层进行进一步的处理和抽象。

总的来说,卷积核是卷积神经网络中用于提取局部特征的重要工具,通过训练和优化,它们能够帮助网络更好地理解和处理输入数据。

5图片卷积

图像卷积就是卷积核在图像上按行滑动遍历像素时不断的相乘求和的过程 .

相关推荐
xixichensh几秒前
前端转做AI程序员第一步——开发一个AI流式对话Demo
前端
小羊没烦恼!14 分钟前
系统内部模块(子系统)之间的耦合以及模块(子系统)划分
java·开发语言·前端·数据库·算法·c#
Leslie16517 分钟前
聚合不只是 GROUP BY:HashAggregate 与 SortAggregate 的内存账本
前端
ITOM运维行者44 分钟前
PHP性能监控怎么做?从响应时间到慢函数的6个关键指标
前端·javascript·后端
成旭先生1 小时前
AI 文本审核 API:一段中文文本判风险等级、命中标签与处置建议
java·前端·人工智能·api接口·内容风控·文本审核·ugc审核
liangshanbo12151 小时前
前端面试题:AI 对话中超长消息导致内存溢出,怎么解决?
java·开发语言·前端
静默回滚1 小时前
PDF能打开却不能复制,原来是权限密码
前端
律宏阔1 小时前
Dart FFI 内存管理:用 using + Arena 替代嵌套 try-finally
前端·flutter
guslegend1 小时前
脚手架入门:必要性、核心功能与执行原理
前端·架构·node.js·脚手架·前端工程化
律宏阔1 小时前
Flutter 调用 Go:从 c-shared + ffigen 到 @Native + Native Assets 踩坑记录
前端·flutter