以分塊作為計算單元定義 AB
假設矩陣 $$A$$ 是 $$m\times n$$ 階,$$B$$ 是 $$n\times p$$ 階,則 $$AB$$ 可以相乘。同樣道理,將 $$A$$ 和 $$B$$ 以分塊矩陣形式表示,例如,$$A$$ 為 $$3\times 2$$ 分塊,$$B$$ 為 $$2\times 2$$ 分塊:
$$A=\begin{bmatrix}
A_{11}&A_{12}\\
A_{21}&A_{22}\\
A_{31}&A_{32}\end{bmatrix}$$ 和 $$B=\begin{bmatrix}
B_{11}&B_{12}\\
B_{21}&B_{22}\end{bmatrix}$$
如此 $$AB$$ 可以用分塊矩陣實現乘法運算。
分塊矩陣乘法一如傳統以元為計算單元的運算方式,將 $$A$$ 的列分塊和 $$B$$ 的行分塊以列行法則相乘,$$AB$$ 為 $$3\times 2$$ 分塊,如下:
$$AB=\begin{bmatrix}
A_{11}B_{11}+A_{12}B_{21}&A_{11}B_{12}+A_{12}B_{22}\\
A_{21}B_{11}+A_{22}B_{21}&A_{21}B_{12}+A_{22}B_{22}\\
A_{31}B_{11}+A_{32}B_{21}&A_{31}B_{12}+A_{32}B_{22}\end{bmatrix}$$
注意這個乘法方式等於也限制了 $$A$$ 和 $$B$$ 其分塊的尺寸,譬如,$$A_{12}$$ 的行數與 $$B_{21}$$ 的列數相等。
事實上,分塊矩陣乘法也可以用來解釋前述的幾種矩陣乘積運算方式。若矩陣的分塊退化為元,那麼分塊矩陣乘積也就是以元為計算單位的列行法則。若 $$B$$ 以其行向量作為分塊,就是視行為計算單位的乘法方式:
$$\mathit{A}B=A\begin{bmatrix}
\mathit{B}_{1} & \cdots &\mathit{B}_{p}
\end{bmatrix}=\begin{bmatrix}
A\mathit{B}_{1} & \cdots &A\mathit{B}_{p}
\end{bmatrix}$$
若 $$A$$ 以其列向量作為分塊,此即以列為計算單位的乘法:
$$\mathit{AB}=\begin{bmatrix}
\mathit{A}_{1}\\
\vdots \\
\mathit{A}_{m}
\end{bmatrix}B=\begin{bmatrix}
\mathit{A}_{1}\mathit{B}\\
\vdots \\
\mathit{A}_{m}\mathit{B}\end{bmatrix}$$
若 $$A$$ 以其行向量作為分塊,$$B$$ 以其列向量作為分塊,$$AB$$ 乘積就如同以行列展開的乘法方式:
$$\mathit{AB}=\begin{bmatrix}
\mathit{A}_{1} & \cdots &\mathit{A}_{n}
\end{bmatrix}\begin{bmatrix}
\mathit{B}_{1}\\
\vdots \\
\mathit{B}_{n}
\end{bmatrix}=\mathit{A}_{1}\mathit{B}_{1}+\cdots+\mathit{A}_{n}\mathit{B}_{n}$$
我們討論的各種矩陣乘法運算都是等價的,適當選擇矩陣的分塊方式便與前述的四種基本乘法運算同義。分塊矩陣乘法較少用於數值計算 (除非問題具有特殊的形式,如許多零元聚集於一處),其主要用途為提供理論發展時所需要的運算處理機制。
(全文完)
文章標題為什麼是"933"~
回覆刪除還有老師打數學公式怎麼這麼快XD~
好...我會試試xd
回覆刪除真有趣XD
回覆刪除