logo

ベクトルと行列の演算/表記法テーブル 📂行列代数

ベクトルと行列の演算/表記法テーブル

概要

ベクトルと行列に関する様々な記法や演算をまとめた文書だ。

ベクトル

ベクトルは主に小文字のボールド体で表記され、特に説明がない場合はn×1n\times 1 行列、すなわち列ベクトルを指す。ベクトル x\mathbf{x}ii番目の成分はxix_{i}のように示される。

x=[x1x2xn],y=[y1y2yn] \mathbf{x}=\begin{bmatrix} x_{1} \\ x_{2} \\ \vdots \\ x_{n} \end{bmatrix},\quad\mathbf{y}=\begin{bmatrix} y_{1} \\ y_{2} \\ \vdots \\ y_{n} \end{bmatrix}

行ベクトルはxT\mathbf{x}^{T}のように表記し、T{}^{T}転置と呼ぶ。

xT=[x1x2xn],yT=[y1y2yn] \mathbf{x}^{T}=\begin{bmatrix} x_{1} & x_{2} & \cdots & x_{n} \end{bmatrix},\quad\mathbf{y}^{T}=\begin{bmatrix} y_{1} & y_{2} & \cdots & y_{n} \end{bmatrix}

ベクトルのノルム

ベクトルのノルムは次のように定義され、3次元空間でのベクトルの大きさと同じ概念である。

x=i=1nxi2,x2=i=1nxi2 \left\| \mathbf{x} \right\| =\sqrt{\sum \limits _{i=1} ^{n} x_{i}^{2} },\quad \left\| \mathbf{x} \right\|^{2}=\sum \limits _{i=1} ^{n} x_{i}^{2}

二つのベクトルの内積

同じ大きさの行ベクトルと列ベクトルの行列積内積という。内積の結果はスカラー(定数)である。

xTy=[x1x2xn][y1y2yn]=x1y1+x2y2++xnyn=i=1nxiyi \begin{align*} \mathbf{x}^{T}\mathbf{y}&=\begin{bmatrix} x_{1} & x_{2} & \cdots & x_{n} \end{bmatrix}\begin{bmatrix} y_{1} \\ y_{2} \\ \vdots \\ y_{n} \end{bmatrix} \\ &=x_{1}y_{1}+x_{2}y_{2}+\cdots+x_{n}y_{n} \\ &=\sum \limits_{i=1}^{n} x_{i}y_{i} \end{align*}

ノルムはスカラーなのでxTy=yTx\mathbf{x}^{T}\mathbf{y}=\mathbf{y}^{T}\mathbf{x}が成り立ち、内積で表すと次のようになる。

x=xTx,x2=xTx \left\| \mathbf{x} \right\| =\sqrt{\mathbf{x}^{T} \mathbf{x} },\quad \left\| \mathbf{x} \right\|^{2} =\mathbf{x}^{T} \mathbf{x}

二つのベクトルの外積

次のように列ベクトルと行ベクトルの行列積を二つのベクトルの外積outer productと言い、(cross productではない)。外積の結果はn×nn \times n行列である。

xyT=[x1x2xn][y1y2yn]=[x1y1x1y2x1ynx2y1x2y2x2ynxny1xny2xnyn]=[x1[y1y2yn]x2[y1y2yn]xn[y1y2yn]]=[x1yTx2yTxnyT] \begin{align*} \mathbf{x}\mathbf{y}^{T} &= \begin{bmatrix} x_{1} \\ x_{2} \\ \vdots \\ x_{n} \end{bmatrix} \begin{bmatrix} y_{1} & y_{2} & \cdots & y_{n} \end{bmatrix} \\ &= \begin{bmatrix} x_{1}y_{1} & x_{1}y_{2} & \cdots & x_{1}y_{n} \\ x_{2}y_{1} & x_{2}y_{2} & \cdots & x_{2}y_{n} \\ \vdots & \vdots & \ddots & \vdots \\ x_{n}y_{1} & x_{n}y_{2} & \cdots & x_{n}y_{n} \end{bmatrix} \\ &= \begin{bmatrix} x_{1}\begin{bmatrix} y_{1} & y_{2} & \cdots & y_{n} \end{bmatrix} \\ x_{2}\begin{bmatrix} y_{1} & y_{2} & \cdots & y_{n} \end{bmatrix} \\ \vdots \\ x_{n}\begin{bmatrix} y_{1} & y_{2} & \cdots & y_{n} \end{bmatrix} \end{bmatrix} \\ &= \begin{bmatrix} x_{1}\mathbf{y}^{T} \\ x_{2}\mathbf{y}^{T} \\ \vdots \\ x_{n}\mathbf{y}^{T} \end{bmatrix} \end{align*}

交換法則は成り立たない。

xyTyxT \mathbf{x} \mathbf{y}^{T} \ne \mathbf{y} \mathbf{x}^{T}

また、外積の対角和が内積と同じであることがわかる。

xTy=i=1nxiyi=Tr(xyT)=Tr(yxT) \mathbf{x}^{T}\mathbf{y} =\sum \limits _{i=1} ^{n} x_{i}y_{i} =\text{Tr}\left( \mathbf{x}\mathbf{y}^{T} \right) =\text{Tr}\left( \mathbf{y}\mathbf{x}^{T} \right)

したがって、次の式が成り立つ。

x=i=1nxi2=xTx=Tr(xxT)x2=i=1nxi2=xTx=Tr(xxT) \begin{align*} \left\| \mathbf{x} \right\| &=\sqrt{\sum \limits _{i=1} ^{n} x_{i}^{2}}=\sqrt{\mathbf{x}^{T}\mathbf{x}}=\sqrt{\text{Tr}\left( \mathbf{x}\mathbf{x}^{T} \right)} \\ \left\| \mathbf{x} \right\|^{2} &=\sum \limits _{i=1} ^{n} x_{i}^{2}=\mathbf{x}^{T}\mathbf{x}=\text{Tr}\left( \mathbf{x}\mathbf{x}^{T} \right) \end{align*}

行列

一般に大文字で表記され、任意の行列は通常m×nm\times n行列と表記される。行ベクトルを上下に積み重ねたり、列ベクトルを左右に並べた形を意味する。この文書では、行列を列ベクトルの行ベクトルとして扱う。ii番目の列ベクトルをxi=[x1ix2ixmi]T\mathbf{x}_{i} = \begin{bmatrix} x_{1i} & x_{2i} & \cdots & x_{mi} \end{bmatrix}^{T}と表記する場合、