1.1. 卷积算子¶
1.1.1. 普通卷积¶
在数学中, 卷积 ( Convolution ) 是一种由两个函数(\(f, g\))产生第三个函数(\(h\))的操作, 即将两个函数(\(f, g\))中的一个进行翻转和平移不同量后与另一个分别相乘后再累加. 与相关分析类似, 不同的是在相关分析中, 无需进行翻转操作.
警告
卷积神经网络中的卷积(convolution)运算实际上是互相关(cross-correlation)运算, 详见 卷积单元 小节.
一维卷积¶
设有单变量连续函数 \(f(t)\), \(g(t)\), 两者之间的卷积可以表示为
单变量离散序列 \(f[n]\), \(g[n]\), 两者之间的卷积可以表示为
一维卷积具有如下性质 (以连续卷积为例)
分配律: \(f_1(t)*\left(f_2(t)+f_3(t)\right) = f_1(t)*f_2(t) + f_1(t) * f_3(t)\) \(\Leftrightarrow\) \(h(t) = h_1(t) + h_2(t)\)
结合律: \(\left(f_1(t)*f_2(t)\right)*f_3(t) = f_1(t)*\left(f_2(t)*f_3(t)\right)\) \(\Leftrightarrow\) \(h(t) = h_1(t) * h_2(t)\)
交换律: \(f_1(t)*f_2(t) = f_2(t)*f_1(t)\)
时域卷积对应频域相乘: \(f_1(t)*f_2(t) \Leftrightarrow F_1(\omega)F_2(\omega)\)
频域卷积对应时域相乘: \(F_1(\omega)*F_2(\omega) \Leftrightarrow 2\pi f_1(t)f_2(t)\)
卷积的微分: \(\frac{{\rm d}}{{\rm d} t}\left[f_{1}(t) * f_{2}(t)\right]=f_{1}(t) * \frac{{\rm d} f_{2}(t)}{{\rm d} t}+f_{2}(t) * \frac{{\rm d} f_{1}(t)}{{\rm d} t}\)
卷积的积分: \(\int_{-\infty}^{t} f_{1}(\tau) * f_{2}(\tau) {\rm d} \tau=f_{1}(t) * \int_{-\infty}^{t} f_{2}(\tau) {\rm d} \tau=f_{2}(t) * \int_{-\infty}^{t} f_{1}(\tau) {\rm d} \tau\)
任意函数与冲击响应函数卷积的性质 (以连续卷积为例)
任意函数与单位冲激信号卷积结果为自身: \(f(t)*\delta(t) = \int_{-\infty}^{+\infty}f(\tau)\delta(t-\tau){\rm d}\tau=f(t)\)
任意函数与时延为 \(t_d\) 的单位冲激信号卷积结果为自身时延 \(t_d\) : \(f(t)*\delta(t-t_d) = \int_{-\infty}^{+\infty}f(\tau)\delta(t-t_d-\tau){\rm d}\tau=f(t-t_d)\)
任意函数与单位冲激信号导数的卷积结果为自身的导数: \(f(t)*\delta^{(k)}(t)=f^{(k)}(t)\)
任意函数与时延为 \(t_d\) 单位冲激信号导数的卷积结果为自身时延 \(t_d\) 导数: \(f(t)*\delta^{(k)}(t-t_d)=f^{(k)}(t-t_d)\)
1.1.2. 回旋卷积¶
回旋卷积 ( Circular Convolution ) 也称 循环卷积 , 即当 \(g\) 为周期函数时的卷积, 卷积结果也是周期的.
连续形式¶
设有周期为 \(T\) 的函数 \(g\) , 定义如下连续形式循环卷积
离散形式¶
设有周期为 \(T\) 的函数 \(g\) , 定义如下离散形式循环卷积