일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- NVL
- 오차 행렬
- CASE WHEN
- 웹서비스 기획
- 데이터 전처리
- 평가 지표
- 지도학습
- layer normalization
- ifnull
- 감정은 습관이다
- Normalization
- 데이터 분석
- 강화학습
- sorted
- 결정트리
- 비지도학습
- beautifulsoup
- 재현율
- NULLIF
- Batch Normalization
- DecisionTree
- recall
- 정밀도
- SQL
- LAG
- 데이터 프로젝트
- five lines challenge
- 백엔드
- nvl2
- 빠르게 실패하기
- Today
- Total
Day to_day
[선형대수학] 역행렬(Inverse)과 전치 행렬(Transpose) 본문
❗본 포스팅은 한양대학교 이상화 교수님의 '선형대수' 강의를 기반으로 개인적인 정리 목적 하에 재구성하여 작성된 글입니다.
우리는 여전히 선형 방정식을 풀기 위한 과정을 공부하고 있다.
아래 예시의 선형 방정식이 있을 때 Ax = b 형태의 행렬로 표현할 수 있다.
$$ 2u + v + w = 5 \\ 4u - 6v \space\space \space\space\space= -2 \\ -2u + 7v + 2w = 9 $$
$$ \begin{bmatrix} 2 & 1 & 1 \\ 4 & -6 & 0 \\ -2 & 7 & 2 \\ \end{bmatrix} \begin{bmatrix} u \\ v \\ w \\ \end{bmatrix} = \begin{bmatrix} 5 \\ -2 \\ 9 \\ \end{bmatrix} $$
$$ Ax = b $$
여기서 만약 A의 역행렬을 알 수 있다면 굉장히 쉽게 변수 x 벡터를 구할 수 있을 것 이다. $x = A^{-1}b$
그래서 오늘은 역행렬과 전치 행렬에 대해서 배우고 그 특징도 함께 볼 예정이다.
역행렬 Inverse Matrix
일반적으로 역행렬은 정방행렬 n x n으로 row와 column의 크기가 동일하고, 교환 법칙이 성립한다는 특징이 있다. 그러나 행렬 A에 대해서 항상 $A^{-1}$이 존재하는 것은 아니고, Det(A) ≠ 0인 조건에서만 역행렬이 존재한다.
다시 말하면 Det(A) ≠ 0 인 경우엔 A는 Invertible Matrix이고, Det(A) = 0 이면 Singular case(해가 무수히 많거나 존재하지 않는 경우)이다.
여기서 determinant(Det)는 관련 정의는 없고, 어떤 특별한 계산식에 따라 행렬의 원소들을 대입하여 얻은 결괏값을 의미하는데 그 결과 값이 행렬의 특성을 나타내는데 중요한 값이기 때문에 determinant라고 부르는 것이다.
또 역행렬이 존재하면 그 값은 unique 한 값을 가지고 있다. 아래의 식으로 검증할 수 있다.
$A^{-1} = B, A^{-1} = C$라고 가정한다면,
$BAC = BAC$
$(BA)C = B(AC)$ # $AA^{-1} = A^{-1}A$ 교환법칙이 성립하기 때문에 둘 다 Identity matrix를 반환
$IC = BI$
$C = B$
위의 과정을 통해 역행렬은 unique 한 값을 갖는다는 것을 증명할 수 있다.
또 다른 역행렬을 계산할 때의 특징은
$(ABC)^{-1} = C^{-1}B^{-1}A^{-1}$
행렬 곱에 대한 역행렬은 각각의 역행렬을 구한 후 순서를 바꾸어 곱한 것과 같다는 것이다.
Determinant는 어떻게 구할 수 있나
행렬 A의 determinant는 가우스 소거법으로 Upper Triangular Matrix의 diagonal elements를 곱해 구할 수 있다.
먼저 가우스 소거법을 통해서 n개의 pivots을 만들어야 한다.
그리고 그 pivot은 1) diagnal elements 2) non-zero 인 조건을 만족해야 한다.
이러한 조건들을 만족시키기 위해 우리는 가우스 소거법을 하면서 pivot이 0이 되지 않도록 row exchange를 통해 계산한다. pivot이 하나라도 0이 되면 역행렬이 존재하지 않기 때문이다.
그러면 행렬 A에 대한 Determinant를 결론부터 이야기하면,
$$ Det(A) = \prod_{i=1}^{n}d_i $$
Upper Triangular Matrix의 diagnal elements를 곱한 형태(0이 아닌 diagnal elements)가 A의 determinant가 된다.
다시 한번 Ax = b를 계속해서 우리는 풀고 있음을 상기시킨다. 여기서 Matrix A에 역행렬이 존재한다는 의미는 무엇일까.
$A^{-1}Ax = A^{-1}b$ 일 때, A의 역행렬은 유니크한 값이라고 했으니 b와 $A^{-1}$의 곱은 unique 할 수밖에 없기에 x도 unique 한 값임을 의미한다.
그러면 Ax=0(b=0)의 방정식에서는 non-zero 벡터 X가 있을 때 $A^{-1}$가 존재하지 않는다.
또는 x가 0이라면? → trivial solution(모든 값이 0)으로 우리에게 의미 없는 값이다.
Diagonal Matrix
역행렬이 존재하기 위해서는 Diagonal Matrix의 대각 요소는 어느 것도 0이 되어선 안된다고 했다. 이 말은 $\prod_{i=1}^{n}d_i$도 0이 되지 않는다는 것이다.
$$ \begin{bmatrix} d_1 & 0 & 0 & ... & 0 \\ 0 & d_2 & 0 & ... & 0 \\ 0 & 0 & d_3 & ... & ...\\ 0 & 0 & 0 & ... & d_n \\ \end{bmatrix} $$
그러면 대각 행렬의 inverse matrix는 어떻게 될까?
대각 행렬은 inverse 시키기 편하다. 아래와 같이 대각 요소를 역수를 취한 것이 된다. 그렇기 때문에 우리는 Upper Triangular Matrix에서 대각 행렬로 분해를 시킨 게 계산하기 쉽기 때문이다.
$$ \begin{bmatrix} \frac{1}{d_1} & 0 & 0 & ... & 0 \\ 0 & \frac{1}{d_2} & 0 & ... & 0 \\ 0 & 0 & \frac{1}{d_3} & ... & ...\\ 0 & 0 & 0 & ... & \frac{1}{d_n} \\ \end{bmatrix} $$
행렬 A의 역행렬 구하기
가우스 소거법을 통해 찐 A의 역행렬을 구해보겠다.
Ax = b 이런 식을 가우스 소거법으로 풀었는데 역행렬을 사용하는 것은 여러 개의 연립 방정식을 한 번에 계산하는 것과 똑같다는 것은 이전에 배웠었다.
예를 들어보자.
AB ⇒ A와 B matrix의 곱을 다음과 같이 A matrix와 B의 열 벡터로 표현할 수 있다.
$$ AB = A[b_1, b_2, b_3,.. , b_n] $$
$$ =[Ab_1, Ab_2, Ab_3, ... , Ab_n] $$
그러면 A matrix와 $A^{-1}$의 곱은 Identity matrix이기 때문에 $AA^{-1}=I$를 위와 같은 형태로 바꿔볼 수 있다.
$$ A^{-1} = [x_1, x_2, x_3, ... , x_n] $$
$$ AA^{-1}=[Ax_1, Ax_2, Ax_3, ... , Ax_n] = \begin{bmatrix} 1 & 0 & 0 & ... & 0 \\ 0 & 1 & 0 & ... & 0 \\ 0 & 0 & 1 & ... & ...\\ 0 & 0 & 0 & ... & 1 \\ \end{bmatrix} $$
$AA^{-1}=I$를 증명해 볼 건데 일단 먼저 $A^{-1}$을 미지수로 보고 가우스 소거법을 진행하면, A는 U로 바뀌게 된다.
근데 U는 $L^{-1}A$로 표현가능하기 때문에 결국 가우스 소거법 이후의 $AA^{-1}=I$는 $L^{-1}AA^{-1}$형태가 되니 I에 $L^{-1}$를 똑같이 곱해주면 된다.
$$ UA^{-1} = L^{-1}I $$
정리하면 이렇게 바뀔 수 있고, 왼쪽 항에 A의 역행렬만 남기기 위해서 양쪽에 $U^{-1}$를 곱해준다.
$$ UU^{-1}A^{-1} = U^{-1}L^{-1} $$
위의 식을 유도할 수 있으므로 이제 진짜 A의 역행렬을 구해보자
전치 행렬 Transpose
전치 행렬의 성질에 대해서 알아보겠다.
$A^{\top}$ 는 행과 열의 위치가 바뀌는 것을 의미한다. ($a_{ij} \rightarrow a_{ji}$)
역행렬과 달리 Transpose는 spare matrix(정방행렬) 일 필요는 없다.
$$ \begin{bmatrix}1 & 2 \\3 & 4 \\5 & 6 \\\end{bmatrix} \space \overrightarrow{transpose} \space \begin{bmatrix} 1 & 3 & 5 \\ 2 & 4 & 6 \\ \end{bmatrix} $$
전치 행렬의 성질
역행렬과 비교하여 전치행렬의 성질을 알아보자.
역행렬은 분배법칙이 성립하지 않지만 전치 행렬은 분배 법칙이 성립한다.
$(A+B)^{\top} = A^{\top} + B^{\top}$
$(A+B)^{-1} \neq A^{-1} + B^{-1}$
하지만 곱셈법칙의 경우 역행렬, 전치 행렬 모두 다 괄호가 벗겨지면서 곱셈의 순서가 바뀐다는 것은 동일하다.
$(AB)^{\top} = B^{\top}A^{\top}$
$(AB)^{-1} = B^{-1}A^{-1}$
추가로 하나의 행렬에 역행렬과 전치행렬은 순서가 바뀌어도 상관없다. 아래와 같이 유도 될 수 있다.
$AA^{-1} = I$
$(A^{-1}A)^{\top} = I^{\top} = I$
$(A)^{\top}(A^{-1})^{\top} = I$
$(A^{\top})^{-1} = (A^{-1})^{\top}$
대칭 행렬 Symmetric Matrix
symmetric하다는 것은 $A = A^{\top}$ 이 성립한다는 것이다.
A가 symmetric이고 역행렬이 존재하면 $A^{-1}$도 symmetric 하다.
즉 $(A^{-1})^{\top} = A^{-1}$ 를 증명하기 위해서 아래의 과정을 거치면 된다.
$AA^{-1} = I$
$(AA^{-1})^{\top} = I^{\top} = I$
$(A^{-1})^{\top}A^{\top} = (A^{-1})^{\top}A = I$ ($A^{\top}$는 symmetric이니까 A라고 칭할 수 있다.)
$(A^{-1})^{\top} = A^{-1}$
결국 $(A^{-1})^{\top} = A^{-1}$가 같으니까 $A^{-1}$도 symmetric이라 할 수 있다.
여기서 LU decomposition에 따라 $A = LU = LDU$ 식으로 넘어가면 (D는 diagnal matrix로 대각선에만 요소가 있는 matrix라고 했다)
이때 A가 symmetric matrix라면 $A = A^{\top}$가 성립하게 된다.
$A^{\top} = (LDU)^{\top} = U^\top D^\top L^\top$에서 D는 대각행렬이기 때문에 transpose해도 같은 matrix가 나온다.
그러면 결국 $A = LDU = U^\top D L^\top = A^\top$ 이므로 $L = U^\top$, $U = L^\top$로 유도될 수 있다.
그러니 A가 symmetric matrix이고 L과 U 둘 중 하나를 알면 나머지 하나는 transpose를 통해 쉽게 구할 수 있다.
Correlation Matrix
correlation matrix는 $R = A^\top A$ 이렇게 정의할 수 있다. 행렬 A가 symmetric이 아니더라도 correlation matrix(R)은 symmetric matrix가 된다. 직접 계산해 보면 나온다.
R의 transpose는 $A$와 $A^\top$의 위치가 바뀌면서 $R$과 같은 형태로 나온다는 것을 알 수 있다.
$R^{\top} = (A^{\top}A)^{\top} = A^{\top}A = R$
correlation matrix는 벡터의 요소 간의 상관성을 나타내는 matrix인데
전체의 요소를 보면 결국 각 벡터들 간의 내적으로 표현할 수 있다.
그러면 내적을 한다는 것은 어떤 의미를 갖느냐?
공간으로 봤을 때 projection을 통해서 얼마나 이 벡터의 성분을 갖고 있는지에 대해 알 수 있다.
그러니 correlation은 상관성을 나타내는 것이고 상관성이 전혀 없으면 벡터 간의 수직인 경우 일 것이다. 즉 이때는 특정 벡터의 성분을 전혀 갖지 않는다는 의미이다.
Reference
'선형대수학' 카테고리의 다른 글
[선형대수학] Null space와 Span (4) | 2024.10.09 |
---|---|
[선형대수학] LU Decomposition (LU Factorization) (0) | 2024.09.03 |
[선형대수학] 가우스 소거법 (Gaussian elimination) (0) | 2024.09.02 |
[선형대수학] 선형성(Linearity)의 조건 (0) | 2024.08.31 |