logo

行列の演算: スカラー乗法、加法、乗法 📂行列代数

行列の演算: スカラー乗法、加法、乗法

スカラー乗算

サイズが$m \times n$の任意の行列 $A$とスカラー $k$の積は、$A$の各成分に$k$を掛けることで定義され、以下のように表記される。

$$ kA = k\begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{bmatrix} := \begin{bmatrix} ka_{11} & ka_{12} & \cdots & ka_{1n} \\ ka_{21} & ka_{22} & \cdots & ka_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & ka_{m2} & \cdots & ka_{mn} \end{bmatrix} $$

定義により、スカラーと行列の積は交換関係が成り立つ。ただし、通常はスカラーを前に書く。

$$ kA = Ak $$

加算

サイズが$m \times n$の二つの行列$A$、$B$の加算は、同じ行、列にある成分同士を足すことで定義され、以下のように表記される。

$$ \begin{align*} A+B &= \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{bmatrix} + \begin{bmatrix} b_{11} & b_{12} & \cdots & b_{1n} \\ b_{21} & b_{22} & \cdots & b_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ b_{m1} & b_{m2} & \cdots & b_{mn} \end{bmatrix} \\ &:=\begin{bmatrix} a_{11} + b_{11} & a_{12} + b_{12} & \cdots & a_{1n} + b_{1n} \\ a_{21} + b_{21} & a_{22} + b_{22} & \cdots & a_{2n} + b_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} + b_{m1} & a_{m2} + b_{m2} & \cdots & a_{mn} + b_{mn} \end{bmatrix} \end{align*} $$

定義によれば、二つの行列の加算は同じサイズの行列間でのみ定義され、交換関係が成り立つ。

$$ A+B=BA $$

乗算

行列にスカラーを掛けることや二つの行列を足すことは直感的に受け入れやすいかもしれないが、乗算の場合は少し異なる。まずは行ベクトル列ベクトルの積から見ていこう。

サイズが$1\times n$の行ベクトル$A=\begin{bmatrix} a_{1} & a_{2} & \cdots & a_{n} \end{bmatrix}$とサイズが$n \times 1$の列ベクトル$B= \begin{bmatrix} b_{1} \\ b_{2} \\ \vdots \\ b_{n} \end{bmatrix}$の積を以下のように定義する。

$$ \begin{align*} AB =\begin{bmatrix} a_{1} & a_{2} & \cdots & a_{n} \end{bmatrix}\begin{bmatrix} b_{1} \\ b_{2} \\ \vdots \\ b_{n} \end{bmatrix} &:= a_{1}b_{1}+a_{2}b_{2} + \cdots +a_{n}b_{n} \\ &= \sum \limits_{i=1}^{n}a_{i}b_{i} \end{align*} $$

この定義を言葉で表すと「同じ順序にある成分同士を掛けたものの合計」となるが、これは高校で学んだ二つのベクトルの内積と概念的に同じである。

$$ \begin{align*} \vec{a} &=(a_{1},a_{2},a_{3}) \\ \vec{b} &= (b_{1},b_{2},b_{3}) \end{align*},\quad \vec{a} \cdot \vec{b} = a_{1}b_{1} + a_{2}b_{2} + a_{3}b_{3} $$

二つの行列の積は、この概念の拡張と考えることができる。 $m\times n$行列$A$と$m\times k$行列$B$の積を以下のように定義する。

$$ \begin{align*} AB &= \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{bmatrix} \begin{bmatrix} b_{11} & b_{12} & \cdots & b_{1k} \\ b_{21} & b_{22} & \cdots & b_{2k} \\ \vdots & \vdots & \ddots & \vdots \\ b_{n1} & b_{n2} & \cdots & b_{nk} \end{bmatrix} \\ &:= \begin{bmatrix} \sum_{i=1}^{n} a_{1i}b_{i1} & \sum_{i=1}^{n} a_{1i}b_{i2} & \cdots & \sum_{i=1}^{n} a_{1i}b_{ik} \\ \sum_{i=1}^{n} a_{2i}b_{i1} & \sum_{i=1}^{n} a_{2i}b_{i2} & \cdots & \sum_{i=1}^{n} a_{2i}b_{ik} \\ \vdots & \vdots & \ddots & \vdots \\ \sum_{i=1}^{n} a_{mi}b_{i1} & \sum_{i=1}^{n} a_{mi}b_{i2} & \cdots & \sum_{i=1}^{n} a_{mi}b_{ik} \end{bmatrix} \end{align*} $$

数式が長く見えて難しそうだが、行ベクトルと列ベクトルの積を複数回行っただけである。$A$と$B$の積から得られる行列$AB$の$n$行、$k$列の成分は、$A$の$n$行と$B$の$k$列の内積と同じである。従って、$A$の列の数と$B$の行の数が同じでなければ、両者の乗算が定義されない。また、二つの行列の乗算は一般に交換法則が成り立たない。

$$ AB \ne BA $$

これは簡単な例でも確認できる。$A=\begin{bmatrix} 1 & 1 \\ 0 & 1 \end{bmatrix}$、$\begin{bmatrix} 2 & -1 \\ 1 & 1 \end{bmatrix}$とすると、

$$ \begin{align*} AB &=\begin{bmatrix} 2+1 & -1+1 \\ 0+1 & 0+1 \end{bmatrix}=\begin{bmatrix} 3 & 0 \\ 1 & 1 \end{bmatrix} \\ BA &=\begin{bmatrix} 2+0 & 2-1 \\ 1+0 & 1+1 \end{bmatrix} = \begin{bmatrix} 2 & 1 \\ 1 & 2 \end{bmatrix} \end{align*} $$

従って、

$$ AB\ne BA $$

行列の乗算過程を視覚的に表現すると、次のようになる。

性質1

$A$、$B$、$C$を任意の$m \times n$サイズの行列とする。$r$、$s$を任意のスカラーとする。行列演算について、次の性質が成り立つ。

(a) 加算に対する交換法則: $A + B = B + A$

(b) 加算に対する結合法則: $A + (B + C) = (A + B) + C$

(c) $(r + s)A = rA + sA$

(d) $r(A + B) = rA + rB $

(e) $(rs)A = r(sA)$

$A$、$B$、$C$を任意の$n\times n$サイズの行列とする。

(f) 乗算に対する結合法則: $A(BC) = (AB)C$

(g) 乗算に対する分配法則 $A(B+C) = AB + AC \quad \& \quad (A+B)C=AC + BC$

行列の乗算については、交換法則が成り立たないことを再度注意しよう。


  1. Jim Hefferon, Linear Algebra(4th Edition). 2020, p235 ↩︎