DAY12 - 행렬과 벡터의 연산
1. 행렬과 행렬의 곱셈
- $C = AB$ 라고 할 때, $c_{ij} = a_i^Tb_j $ 이다.
- $ c_{ij} : C행렬의 i행-j열의 원소, a_i^T : A행렬의 i번째 행벡터, b_j : B행렬의 j번째 열벡터 $
- 단 행렬의 곱셈이 성립하기 위해서는 앞의 행렬 A의 열의 수가 뒤의 행렬 B의 행의 수와 일치해야만 한다.
$$ A \in \mathbf{R}^{N\times L}, B \in \mathbf{R}^{L\times M} \rightarrow AB \in \mathbf{R}^{N\times M} $$
ex ) A : 4 x 3 행렬 , B : 3 x 2 행렬
$$ A = \begin{bmatrix}
a_{11} & a_{12} & a_{13} \\
a_{21} & a_{22} & a_{23} \\
a_{31} & a_{32} & a_{33} \\
a_{41} & a_{42} & a_{43} \end{bmatrix},
B = \begin{bmatrix}
b_{11} & b_{12} \\
b_{21} & b_{22} \\
b_{31} & b_{32} \end{bmatrix}$$
$$ AB = \begin{bmatrix}
(a_{11}b_{11} + a_{12}b_{21} + a_{13}b_{31}) & (a_{11}b_{12} + a_{12}b_{22} + a_{13}b_{32}) \\
(a_{21}b_{11} + a_{22}b_{21} + a_{23}b_{31}) & (a_{21}b_{12} + a_{22}b_{22} + a_{23}b_{32}) \\
(a_{31}b_{11} + a_{32}b_{21} + a_{33}b_{31}) & (a_{31}b_{12} + a_{32}b_{22} + a_{33}b_{32})\end{bmatrix}$$
2. 행렬의 교환 법칙과 분배 법칙
- 행렬의 곱셈은 교환 법칙이 성립하지 않는다.
$$ AB \ne BA $$
- 행렬의 곱셈은 덧셈/뺄셈에 대한 분배 법칙이 성립한다.
$$ A(B+C) = AB + AC $$
$$ (A+B)C = AC + BC $$
- 행렬의 전치연산은 덧셈/뺄셈에 대한 분배 법칙이 성립한다.
$$ (A + B)^T = A^T + B^T $$
- 전치연산과 곱셈 연산은 분배법칙이 성립하긴 하지만 전치연산이 분배되면서 곱셈의 순서가 바뀐다.
$$ (AB)^T = B^TA^T $$
$$ (ABC)^T = C^TB^TA^T$$
3. 연속된 행렬의 곱셈
- 연속된 행렬의 곱셈은 계산 순서를 임의의 순서로 해도 상관이 없다.
$$ ABC = (AB)C = A(BC) $$
$$ ABCD = ((AB)C)D = (AB)(CD) = A(BCD) = A(BC)D $$
4. 항등행렬의 곱셈
- 어떤 행렬이든 항등행렬을 곱하면 원래 행렬과 동일하다.
$$ AI = IA = A $$
- 항등행렬은 N x N 형태의 정방행렬이고 대각성분이 모두 1, 나머지는 모두 0 인 행렬이다.
$$ I = \begin{bmatrix}
1 & \cdots & 0 \\
\vdots & \ddots & \vdots \\
0 & \cdots & 1 \end{bmatrix} $$
4. 행렬과 벡터의 곱
- 행렬의 열의 수와 벡터의 크기가 일치해야 연산이 가능하다.
$$ Av $$
- 행렬과 벡터의 곱은 열 벡터의 선형조합으로 나타낼 수 있다.
$$ A = [a_1\ a_2\ \dots\ a_N],\ a_i = column\ vector$$
$$ v = \begin{bmatrix}
v_1 \\
v_2 \\
\vdots \\
v_N \end{bmatrix} $$
$$ Av = v_1a_1 + v_2a_2 + \dots + v_Na_N $$
- 여러 개의 벡터에 대한 가중합 계산에 행렬과 벡터의 곱이 이용된다. 즉, 선형회귀 모형을 이용해 여러 데이터의 예측값을 한 번에 계산하고 싶을 때 행렬과 벡터의 곱을 활용할 수 있다.
$ \hat y = \begin{bmatrix}
\hat y_1 \\
\hat y_2 \\
\vdots \\
\hat y_M \end{bmatrix} = \begin{bmatrix}
w_1x_{1,1} + \dots + w_Nx_{1,N} \\
\vdots \\
w_1x_{M,1} + \dots + w_Nx_{M,N} \end{bmatrix} = \begin{bmatrix}
x_{1,1} & \dots & x_{1,N}\\
\vdots & \ddots & \vdots \\
x_{M,1} & \dots & x_{M,N} \end{bmatrix} \begin{bmatrix}
w_1 \\
\vdots \\
w_N \end{bmatrix}= \begin{bmatrix}
x_1^T \\
\vdots \\
x_M^T \end{bmatrix} \begin{bmatrix}
w_1 \\
\vdots \\
w_N \end{bmatrix} = Xw$