如何計算矩陣的乘法

總結一下計算一般矩陣乘積的四種方法。

第一種方法也是最基本的,不多贅述。

(AB)_{ij}=sum_{k=1}^{p}{a_{i1}b_{1j}}

第二種方法,將AB=C看作“將A矩陣各列按B對應列中各元素進行線性組合得到C”。

column n of C = B_{n1} × column 1 of A +B_{n2}× column 2 of A +…

下方矩陣A、B相乘,計算結果矩陣C是一個2行2列的矩陣,將每一列分開計算。

left[ begin{array}{ccc} 1 & 2 \ 3 & 4 \ end{array} right] left[ begin{array}{ccc} 5 & 6 \ 7 & 8 \ end{array} right] = C

計算C第一列的過程為: 5× left[ begin{array}{ccc} 1 \ 3 \ end{array} right] +7× left[ begin{array}{ccc} 2 \ 4 \ end{array} right] = left[ begin{array}{ccc} 19 \ 43 \ end{array} right]

計算C第二列的過程為: 6× left[ begin{array}{ccc} 1 \ 3 \ end{array} right] +8× left[ begin{array}{ccc} 2 \ 4 \ end{array} right] = left[ begin{array}{ccc} 22 \ 50 \ end{array} right]

C= left[ begin{array}{ccc} 19 & 22 \ 43 & 50 \ end{array} right]

第三種方法和第二種方法類似,將AB=C看作“將B矩陣各行按A對應行中各元素進行線性組合得到C”。

row n of C = A_{n1} × row 1 of B +A_{n2}× row 2 of B +…

同樣的,計算下方矩陣乘法AB=C,將每一行分開計算。

left[ begin{array}{ccc} 1 & 2 \ 3 & 4 \ end{array} right] left[ begin{array}{ccc} 5 & 6 \ 7 & 8 \ end{array} right] = C

計算C第一行的過程為: 1× left[ begin{array}{ccc} 5 &6\ end{array} right] +2× left[ begin{array}{ccc} 7 &8\ end{array} right] = left[ begin{array}{ccc} 19 &22\ end{array} right]

計算C第二行的過程為: 3× left[ begin{array}{ccc} 5 &6\ end{array} right] +4× left[ begin{array}{ccc} 7 &8\ end{array} right] = left[ begin{array}{ccc} 43 &50\ end{array} right]

C= left[ begin{array}{ccc} 19 & 22 \ 43 & 50 \ end{array} right]

第四種方法是把A、B矩陣分割成各個子矩陣,將子矩陣看作單個元素進行乘法計算,此處不多做贅述。

left[ begin{array}{ccc} a& b&c &d \ e& f&g &h \ end{array} right] left[ begin{array}{ccc} i& j&k &l \ m& n&o &p \ end{array} right] = left[ begin{array}{ccc} D& E\ end{array} right] left[ begin{array}{ccc} F& G\ end{array} right]

其中 D= left[ begin{array}{ccc} a& b \ e& f \ end{array} right] E= left[ begin{array}{ccc} c &d \ g &h \ end{array} right] F= left[ begin{array}{ccc} i &j\ m &n \ end{array} right] G= left[ begin{array}{ccc} k &l \ o& p \ end{array} right]

赞(0)