首页 > 编程知识 正文

怎么求卷积(解析法求卷积的方法)

时间:2023-05-05 18:51:53 阅读:83418 作者:1476

你有没有想过卷积有什么特别的地方? 在这篇文章中,我从第一性原理导出卷积,展示了其平移对称性。

有些东西本质上是支持其本质的。 (云增益集健康)

在本科学习期间,我在以色列的Technion参加了电气工程。 一个令人惊讶的重要概念是卷积[1]的突然出现。 就像沙粒落在眼睛里一样,打乱了信号处理世界本来美好的影像。 如果卷积来自第一原则,该多好啊! 如本文所示,这里的第一原则是平移不变性或对称性。

首先,根据在基本信号处理课程中教授的公式,定义两个n维向量x和w :的离散卷积[2] :

为了方便起见,假设所有的索引都是从零到n-1并且都是n模式,自然会想到圆上定义的向量。 将上式写入矩阵向量乘法,可以得到一个叫做循环矩阵的非常特殊的矩阵:

循环矩阵具有多对角结构,各对角线上的元素具有相同的值。 通过重叠矢量w的位移(模n ),可以生成[3]。 因此,用c(w )表示是指由向量w形成的循环矩阵。 交替使用这两个术语,因为任何卷积xw都可以等效地表示为循环矩阵c(w ) x的乘法。

线性代数学的第一件事是矩阵乘法不满足交换率。 也就是说,一般情况下,ABBA。 但是,循环矩阵是一个非常特殊的例外。

循环矩阵满足交换定律,即c(w ) c ) u )=c ) u ) c ) w )。 这对于任何循环矩阵,或者u和w的任何选择都是正确的。 同样,卷积是满足交换率的运算,可以说是xw=wx。

如果选择特定的w=[ 0,1,0…,0],则会生成将向量向右移动一个比特的特殊循环矩阵。 这个矩阵被称为[右]移位算子[4],用s表示。 右移位算子的倒置是左移位算子。 很明显,左移或右移都没有任何效果。 也就是说,s是正交矩阵。

循环矩阵满足交换率,足以表示移位的交换性([5]中引理3.1 ) :

而且,据说只有在其移位满足交换率的情况下,矩阵才会循环。

首先,“当且当”是指平移或移位等差这一非常重要的性质[6] :卷积和移位的交换性意味着无论是先移动向量后卷积,还是先卷积后移位,结果都是相同的。

其次,卷积可以定义为移位等变线性运算。 为了使班次符合交换率,矩阵必须具有循环结构。 这就是我们期待的从平移对称[7]的第一性原理导出卷积。 不是给出卷积公式来证明其位移的等差性质,它通常是在信号处理书籍中推导出来的,我们可以根据位移等差的要求得出卷积公式,作为满足它的唯一可能的线性运算。

信号处理课程教学的另一个重要事实是卷积与傅立叶变换[8]的联系。 其中,傅立叶变换从天而降,然后进行其对角化卷积操作,在频域执行两个向量的卷积,成为它们傅立叶变换的元素积。 没有人说明过这些签名和余弦是从哪里来的,还有什么特别的地方。

为了弄清真相,让我们回忆一下线性代数的一个事实:

交换矩阵为联合对角。

换言之,满足AB=BA的两个矩阵具有相同的特征向量[9]。 因为所有循环矩阵都满足交换率,所以可以选择其中一个进行计算

其特征向量-上述定理保证了这些矩阵的特征向量也将是所有循环矩阵的特征向量。

由于S是正交矩阵,所以我们期望它的特征向量也是正交的[10]。 一个简单的计算(见[5]第4.1节)得出了这样的结论

移位算子通过傅里叶变换对角化。

在这一点上,可以有今天的第二个“啊哈”时刻:这便是sines和cosines的来源! 它们是移位算子的特征向量;我将它们表示为矩阵Φ的列。 注意特征向量是复杂的,所以在转置Φ时需要采取复共轭。和Φ*进行的乘法(从左)称为傅里叶变换,并通过Φ实现傅里叶逆变换。

由于所有循环矩阵都是对角的,所以它们也由傅里叶变换[11]对角化,只在特征值上有所不同。 最后还要认识到这一点

其中C(w)的特征值为w的傅里叶变换。

现在可以把图中的所有部分导出卷积定理:卷积x∗w可以通过计算原始坐标系统中x(有时称为“空间域”卷积)的循环矩阵C(W)来实现,也可以通过傅里叶(在频域)变换来实现:首先计算Φ*x的傅里叶变换,再将其和w [12]的傅里叶变换相乘之后,计算傅里叶逆变换。

由于Φ具有特殊的冗余结构,Φ*x和Φx的乘积可以用快速傅里叶变换(FFT)算法的复杂度 (n log n)计算。

为什么要这样来定义卷积?在这里我将重复Helvetius的名言:“对某些原则的了解很容易弥补对某些事实的缺乏”。对于卷积而言,它从第一原则的推导更加容易推广到其他领域。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。