信號處理中的一個重要運算是卷積.初學卷積的時候,往往是在連續的情形,
兩個函數f(x),g(x)的卷積,是∫f(u)g(x-u)du當然,證明卷積的一些性質並不困難,比如交換,結合等等,但是對於卷積運算的來處,初學者就不甚了了。
其實,從離散的情形看卷積,或許更加清楚,
對於兩個序列f[n],g[n],一般可以將其卷積定義爲s[x]= ∑f[k]g[x-k]
卷積的一個典型例子,其實就是初中就學過的多項式相乘的運算,
比如(x*x+3*x+2)(2*x+5)
一般計算順序是這樣,
(x*x+3*x+2)(2*x+5)
= (x*x+3*x+2)*2*x+(x*x+3*x+2)*5
= 2*x*x*x+3*2*x*x+2*2*x+ 5*x*x+3*5*x+10
然後合併同類項的係數,
2 x*x*x
3*2+1*5 x*x
2*2+3*5 x
2*5
----------
2*x*x*x+11*x*x+19*x+10
實際上,從線性代數可以知道,多項式構成一個向量空間,其基底可選爲
{1,x,x*x,x*x*x,...}
如此,則任何多項式均可與無窮維空間中的一個座標向量相對應,
如,(x*x+3*x+2)對應於
(1 3 2),
(2*x+5)對應於
(2,5).
線性空間中沒有定義兩個向量間的卷積運算,而只有加法,數乘兩種運算,而實際上,多項式的乘法,就無法在線性空間中說明.可見線性空間的理論多麼侷限了.
但如果按照我們上面對向量卷積的定義來處理座標向量,
(1 3 2)*(2 5)
則有
2 3 1
_ _ 2 5
--------
2
2 3 1
_ 2 5
-----
6+5=11
2 3 1
2 5
-----
4+15 =19
_ 2 3 1
2 5
-------
10
或者說,
(1 3 2)*(2 5)=(2 11 19 10)
回到多項式的表示上來,
(x*x+3*x+2)(2*x+5)= 2*x*x*x+11*x*x+19*x+10
似乎很神奇,結果跟我們用傳統辦法得到的是完全一樣的.
換句話,多項式相乘,相當於係數向量的卷積.
其實,琢磨一下,道理也很簡單,
卷積運算實際上是分別求 x*x*x ,x*x,x,1的係數,也就是說,他把加法和求和雜合在一起做了。(傳統的辦法是先做乘法,然後在合併同類項的時候才作加法)
以x*x的係數爲例,得到x*x,或者是用x*x乘5,或者是用3x乘2x,也就是
2 3 1
_ 2 5
-----
6+5=11
其實,這正是向量的內積.如此則,卷積運算,可以看作是一串內積運算.既然是一串內積運算,則我們可以試圖用矩陣表示上述過程。
[ 2 3 1 0 0 0]
[ 0 2 3 1 0 0]==A
[ 0 0 2 3 1 0]
[ 0 0 0 2 3 1]
[0 0 2 5 0 0]' == x
b= Ax=[ 2 11 19 10]'
採用行的觀點看Ax,則b的每行都是一個內積。
A的每一行都是序列[2 3 1]的一個移動位置。
---------
顯然,在這個特定的背景下,我們知道,卷積滿足交換,結合等定律,因爲,衆所周知的,多項式的乘法滿足交換律,結合律.在一般情形下,其實也成立.
在這裏,我們發現多項式,除了構成特定的線性空間外,基與基之間還存在某種特殊的聯繫,正是這種聯繫,給予多項式空間以特殊的性質.