線性變換表示矩陣

本文的閱讀等級:初級

矩陣是線性代數處理分析的基本數學物件,但是幾乎沒有任何教科書曾經給出嚴格的公理化定義。儘管矩陣允許非常多不同面貌的解釋方案,我們對矩陣的認知大致可以區分為兩種觀點:矩陣是數字組合的矩形陣列,例如,一幅影像包含的像素,或一頁試算表所儲存資料;另一種位階較高的觀點是將矩陣視為介於兩向量空間的線性變換表達形式,而矩陣之所以對處理線性問題極其重要也正是因為這個緣故。本文將解釋何謂線性變換表示矩陣,並由線性變換基本性質推演出一套合理且自然的矩陣運算規則。

 
我們從一個簡單的例子說起。定義向量空間 \mathcal{P}_2 為所有的二次函數 p(t)=a_0+a_1t+a_2t^2 形成的集合,令 \mathcal{P}_2 的標準基底為 \boldsymbol{\beta}=\{\mathbf{v}_1,\mathbf{v}_2,\mathbf{v}_3\}\mathbf{v}_j=t^{j-1}j=1,2,3。為了強調基底 1,t,t^2 是廣義向量,我們使用粗體字來表示它們。考慮下面這個線性變換

q(t)=T(p(t))=p(t+1)

譬如,T(t^2-4t+3)=(t+1)^2-4(t+1)+3=t^2-2t。給定 p(t)=a_0+a_1t+a_2t^2,如何計算 T(p(t))?將 p(t) 表示為 \mathbf{v}_1,\mathbf{v}_2,\mathbf{v}_3 的線性組合,p(t)=a_0\mathbf{v}_1+a_1\mathbf{v}_2+a_2\mathbf{v}_3,運用線性變換的基本性質 T(\mathbf{x}+\mathbf{y})=T(\mathbf{x})+T(\mathbf{y})T(c\mathbf{x})=cT(\mathbf{x}),就有

\begin{aligned}  q(t)&=T(a_0\mathbf{v}_1+ a_1\mathbf{v}_2+a_2\mathbf{v}_3)\\ &=a_0T(\mathbf{v}_1)+a_1T(\mathbf{v}_2)+a_2T(\mathbf{v}_3).\end{aligned}

換句話說,一旦得到每個基底向量 \mathbf{v}_jT 的映射結果 T(\mathbf{v}_j),稱為 \mathbf{v}_j 的像,即可解出 q(t)。基底 \boldsymbol{\beta}=\{\mathbf{v}_1,\mathbf{v}_2,\mathbf{v}_3\} 的像分別是

\begin{aligned}  T(\mathbf{v}_1)&=T(t^0)=(1+t)^0=1=\mathbf{v}_1\\  T(\mathbf{v}_2)&=T(t)=1+t=\mathbf{v}_1+\mathbf{v}_2\\  T(\mathbf{v}_3)&=T(t^2)=(1+t)^2=1+2t+t^2=\mathbf{v}_1+2\mathbf{v}_2+\mathbf{v}_3.\end{aligned}

這時候我們可能會有收集上面三個式子的組合係數並依序置入矩形陣列的念頭,於是寫下

[T(\boldsymbol{\beta})]=\begin{bmatrix}  1&0&0\\    1&1&0\\    1&2&1    \end{bmatrix}

並用 [T(\boldsymbol{\beta})] 來代表儲存了所有基底向量的像的係數矩陣。不過,這個矩陣並不符合以矩陣乘法實現線性變換的要求,原因在於上面的關係式仍舊沒有給出簡明的計算方式。

 
我們需要新的想法:在目前的基礎上運用基底的孿生概念──座標──來建立運算架構。令 p(t)=a_0+a_1t+a_2t^2 參考基底 \boldsymbol{\beta}=\{\mathbf{v}_1,\mathbf{v}_2,\mathbf{v}_3\} 的座標向量是

[p]_{\boldsymbol{\beta}}=\begin{bmatrix}  a_0\\    a_1\\    a_2    \end{bmatrix}

二次函數 p(t) 與其座標向量 [p]_{\boldsymbol{\beta}} 具有一對一的對應關係 (見“同構的向量空間”),同樣道理,只要算出座標向量 [q]_{\boldsymbol{\beta}} 也就等於就得到 q(t)。因此,我們的目標是將 q(t) 表示為基底向量 \mathbf{v}_1,\mathbf{v}_2,\mathbf{v}_3 的線性組合。延續前面的計算步驟,將 T(\mathbf{v}_j) 的表達式代回 q(t),整理可得

\begin{aligned}  q(t)&=a_0\mathbf{v}_1+a_1(\mathbf{v}_1+\mathbf{v}_2)+a_2(\mathbf{v}_1+2\mathbf{v}_2+\mathbf{v}_3)\\  &=(a_0+a_1+a_2)\mathbf{v}_1+(a_1+2a_2)\mathbf{v}_2+(a_2)\mathbf{v}_3.\end{aligned}

所以,q(t) 的座標向量為

[q]_{\boldsymbol{\beta}}=\begin{bmatrix}  a_0+a_1+a_2\\    a_1+2a_2\\    a_2    \end{bmatrix}

自然地,我們可以設計下列「矩陣乘法」來實現線性變換 q(t)=T(p(t))

[q]_{\boldsymbol{\beta}}=\begin{bmatrix}  1&1&1\\    0&1&2\\    0&0&1    \end{bmatrix}\begin{bmatrix}    a_0\\    a_1\\    a_2    \end{bmatrix}=[T]_{\boldsymbol{\beta}}~[p]_{\boldsymbol{\beta}}

上式中 [T]_{\boldsymbol{\beta}} 稱為線性變換 T 參考基底 \boldsymbol{\beta} 的表示矩陣。我們之所以不厭其煩地標記 \boldsymbol{\beta} 是為了強調如果改變基底 \boldsymbol{\beta},則線性變換表示矩陣和座標向量也將隨之改變。觀察發現 [T]_{\boldsymbol{\beta}} 恰為 [T(\boldsymbol{\beta})] 的轉置矩陣,進一步分析確認基底經映射後的座標向量

[T(\mathbf{v}_1)]_{\boldsymbol{\beta}}=\begin{bmatrix}  1\\    0\\    0\\    \end{bmatrix},~[T(\mathbf{v}_2)]_{\boldsymbol{\beta}}=\begin{bmatrix}    1\\    1\\    0\\    \end{bmatrix},~[T(\mathbf{v}_3)]_{\boldsymbol{\beta}}=\begin{bmatrix}    1\\    2\\    1\\    \end{bmatrix}

正是 [T]_{\boldsymbol{\beta}} 的行向量:

[T]_{\boldsymbol{\beta}}=\begin{bmatrix}  ~&~&~\\    [T(\mathbf{v}_1)]_{\boldsymbol{\beta}}&[T(\mathbf{v}_2)]_{\boldsymbol{\beta}}&T[(\mathbf{v}_3)]_{\boldsymbol{\beta}}\\    ~&~&~    \end{bmatrix}=\begin{bmatrix}    1&1&1\\    0&1&2\\    0&0&1    \end{bmatrix}

 
推廣至一般情況,線性變換表示矩陣根據以下規則產生:令 T:\mathcal{V}\rightarrow\mathcal{W} 為一線性變換,\mathrm{dim}\mathcal{V}=n\mathrm{dim}\mathcal{W}=m,且 \boldsymbol{\beta}_{\mathcal{V}}=\{\mathbf{v}_1,\ldots,\mathbf{v}_n\} 為向量空間 \mathcal{V} 的基底,\boldsymbol{\beta}_{\mathcal{W}}=\{\mathbf{w}_1,\ldots,\mathbf{w}_m\}\mathcal{W} 的基底。線性映射 \mathbf{y}=T(\mathbf{x}) 對應矩陣乘法 [\mathbf{y}]_{\boldsymbol{\beta}_\mathcal{W}}=A[\mathbf{x}]_{\boldsymbol{\beta}_\mathcal{V}},其中 m\times n 階線性變換表示矩陣 A 的第 j 行即為 T(\mathbf{v}_j) 參考 \boldsymbol{\beta}_\mathcal{W} 的座標向量 [T(\mathbf{v}_j)]_{\boldsymbol{\beta}_\mathcal{W}}

A=\begin{bmatrix}  ~&~&~&~&~\\    [T(\mathbf{v}_1)]_{\boldsymbol{\beta}_{\mathcal{W}}}&\cdots&[T(\mathbf{v}_j)]_{\boldsymbol{\beta}_{\mathcal{W}}}&\cdots&[T(\mathbf{v}_n)]_{\boldsymbol{\beta}_{\mathcal{W}}}\\    ~&~&~&~&~    \end{bmatrix}

L_V:\mathcal{V}\to\mathbb{R}^nL_W:\mathcal{W}\to\mathbb{R}^m 為對應基底 \boldsymbol{\beta}_{\mathcal{V}}\boldsymbol{\beta}_{\mathcal{W}} 的座標映射,即 L_V(\mathbf{x})=[\mathbf{x}]_{\boldsymbol{\beta}_{\mathcal{V}}}L_W(\mathbf{y})=[\mathbf{y}]_{\boldsymbol{\beta}_{\mathcal{W}}},則 T 與線性變換表示矩陣 A 的關係可圖示如下:

線性變換表示矩陣1

接著我們說明原委。對於 j=1,\ldots,n,將基底向量 \mathbf{v}_j 表示為

\mathbf{v}_j=0\mathbf{v}_1+\cdots+1\mathbf{v}_j+\cdots+0\mathbf{v}_n

顯然,座標向量 [\mathbf{v}_j]_{\boldsymbol{\beta}_\mathcal{V}} 的第 j 元為 1,其他元皆為 0,因此

A[\mathbf{v}_j]_{\boldsymbol{\beta}_\mathcal{V}}=\begin{bmatrix}  a_{1j}\\    a_{2j}\\    \vdots\\    a_{mj}    \end{bmatrix}

然而,我們要求 [T(\mathbf{v}_j)]_{\boldsymbol{\beta}_\mathcal{W}}[\mathbf{v}_j]_{\boldsymbol{\beta}_{\mathcal{V}}} 滿足

[T(\mathbf{v}_j)]_{\boldsymbol{\beta}_\mathcal{W}}=A[\mathbf{v}_j]_{\boldsymbol{\beta}_\mathcal{V}}=\begin{bmatrix}  a_{1j}\\    a_{2j}\\    \vdots\\    a_{mj}    \end{bmatrix}

也就是說,T(\mathbf{v}_j) 以基底 \mathbf{w}_1,\ldots,\mathbf{w}_m 的線性組合表達式必為

\begin{aligned}  T(\mathbf{v}_j)&=a_{1j}\mathbf{w}_1+a_{2j}\mathbf{w}_2+\cdots+a_{mj}\mathbf{w}_m=\displaystyle\sum_{i=1}^ma_{ij}\mathbf{w}_i\end{aligned}

我們還必須注意組合權重 a_{1j},\ldots,a_{mj} 是唯一存在的,這也說明了線性變換 T 與其表示矩陣 A 兩者有一對一的關係。

 
上面這個關係式不但生成了線性變換表示矩陣,也是推演矩陣運算規則的基礎。以下為方便說明,假設所有的線性變換定義於相同的向量空間 \mathcal{V} 而且都參考同一個基底 \boldsymbol{\beta}=\{\mathbf{v}_1,\ldots,\mathbf{v}_n\}。給定線性變換 T_1T_2,對應的 n\times n 階表示矩陣分別為 A=[a_{ij}]B=[b_{ij}]。顯然,T_1+T_2 也是一線性變換,如何求得 T_1+T_2 的表示矩陣 C=[c_{ij}]?寫出

\begin{aligned}  (T_1+T_2)(\mathbf{v}_j)&=T_1(\mathbf{v}_j)+T_2(\mathbf{v}_j)\\  &=\displaystyle\sum_{i=1}^na_{ij}\mathbf{v}_i+\sum_{i=1}^nb_{ij}\mathbf{v}_i\\  &=\sum_{i=1}^n(a_{ij}+b_{ij})\mathbf{v}_i,\end{aligned}

因此斷定 c_{ij}=a_{ij}+b_{ij},這就是我們熟知令各對應元相加的矩陣加法 C=A+B 的計算規則。矩陣的純量乘法 \alpha A\alpha 為一純量,可由線性變換 \alpha T_1的表示矩陣得到,如下:

(\alpha T_1)(\mathbf{v}_j)=\alpha T_1(\mathbf{v}_j)=\alpha\sum_{i=1}^na_{ij}\mathbf{v}_i  =\sum_{i=1}^n(\alpha a_{ij})\mathbf{v}_i

運用相同方法也可以導出矩陣乘法運算規則,但先要知道矩陣乘法 C=AB 對應線性複合變換 T_1\circ T_2。令 T_1\circ T_2 的表示矩陣為 C=[c_{ij}]。利用線性變換性質可得

\begin{aligned}  (T_1\circ T_2)(\mathbf{v}_j)&=T_1(T_2(\mathbf{v}_j))=\displaystyle T_1\left(\sum_{k=1}^nb_{kj}\mathbf{v}_k\right)\\  &=\sum_{k=1}^nb_{kj}T_1(\mathbf{v}_k)=\sum_{k=1}^nb_{kj}\left(\sum_{i=1}^na_{ik}\mathbf{v}_i\right)\\  &=\sum_{i=1}^n\left(\sum_{k=1}^na_{ik}b_{kj}\right)\mathbf{v}_i.\end{aligned}

所以,

\displaystyle  c_{ij}=\sum_{k=1}^na_{ik}b_{kj}

此即以「元」作為計算單元的矩陣乘法規則 (見“矩陣乘法的現代觀點(一)”)。最後,從線性變換表示矩陣也不難解釋零矩陣 0,單位矩陣 I 和逆矩陣 A^{-1} 的意義,這個工作就留給讀者當作練習。

相關閱讀:
This entry was posted in 線性變換, 線性代數專欄 and tagged , , , . Bookmark the permalink.

3 則回應給 線性變換表示矩陣

  1. aocwind 說:

    我很喜歡Linear algebra這本書,對於矩陣表示法的引導,以前的我很不明瞭為啥明明是在算一個linear function,最後無緣無故的都是在算一個又一個的矩陣運算。在書中,它透過了同構關係讓linear function跟矩陣表示法建立起關係,讓我們得以知道總是存在著一個linear transformation可以將任意linear function轉成一個矩陣表示法,且因為同構所以是可以逆推的。
    再來是這層linear transformation保證了我們在運算矩陣的過程中,其實也是在運算相對應的linear function,只是我們總是最後一步驟時才把矩陣計算結果轉回function的表現方式。
    當然了這麼一層關係開始讓我覺得矩陣的理論是數學家為了簡化linear function在思考過程中的抽象程度而漸漸發展出來的XD

    題外話: 這麼做的小缺點就是,Linear algebra這本書在linear transformation馬上變的相當抽象,這對一個非數學系的我來說確實是相當棘手的,唸到現在,私自以為整本來說就那章最難了。

  2. aocwind 說:

    第一段對於同構關係的部份訂正:對於任意linear function,總是存在著一個linear transformation可將其轉成矩陣表示法。

  3. ccjou 說:

    謝謝你的補充。線性變換交代了矩陣及其運算規則的由來,但如果沒有說個明白反而可能讓人更加困惑。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

你正使用 WordPress.com 帳號留言。 登出 / 變更 )

Twitter picture

你正使用 Twitter 帳號留言。 登出 / 變更 )

Facebook照片

你正使用 Facebook 帳號留言。 登出 / 變更 )

Google+ photo

你正使用 Google+ 帳號留言。 登出 / 變更 )

連結到 %s