본문 바로가기
Math/선형대수학 Linear Algebra

[3-1] Inverse Matrix

by ju_nope 2023. 3. 13.

목차

    역행렬 Inverse Matrix

    역행렬이 왜 필요한가?

    우리가 연립 일차 방정식을 $Ax = b$ 꼴로 나타낼 때의 장점은 비단 손이 덜 아프다는 것만 있는 것이 아니다. 우리는 저런 간단하고 상징적인 포맷을 통해, 방정식의 해를 구하는 새로운 아이디어를 얻을 수 있다. 

    일반적인 간단한 방정식 $ax= b$ 는 양변에 $\frac{1}{a}$ 를 곱해서 $x = \frac{b}{a}$를 얻는데, 이때 $\frac{1}{a}$라는 수는, a에 곱해서 "곱셈의 항등원 1"을 만드는 수이다. 

    그렇다면 $Ax= b$ 꼴에서도, A의 행렬에 어떤 수를 곱해서, 행렬의 곱셈 항등원(Identity matrix)이 되도록 하면 구할 수 있지 않을까? 그 어떤 수를 바로 역행렬(Inverse matrix)이라고 부른다.

    $$Ax = b \to x = A^{-1}b$$


    Left Inverse 와 Right Inverse

    Left inverse : 어떤 행렬 A의 좌측에 곱했을 때 Identity 가 되는 행렬 $BA = I$

    Right inverse : 어떤 행렬 A의 우측에 곱했을 때 Identity 가 되는 행렬 $AB = I$

    여기서 우리는 3가지 질문을 던질 수 있다.

    1. Left Inverse와 Right Inverse는 같은가 다른가? (A = B ?)
    2. Left Inverse와 Right Inverse는 유일한가?
    3. Left Inverse가 존재는 Right Inverse의 존재를 암시하는가? (반대도 마찬가지) 

    일반적인 $m \times n$ 행렬 A에 대해서는 위의 세 질문 모두 No 이다. 심지어 3번째 질문에 대해서는 Never이다. mutually exclusive하게 존재한다.  

    다시 말해, Square Matrix가 아니더라도 일반적인 $m \times n \: (m \neq n)$ 행렬에 대해 역행렬은 존재할 수 있다. 하지만 그건 Left Inverse또는 Right Inverse 둘 중 하나의 형태로만 존재할 수 있고, 유일하지도 않다. 

    예를 들어 아래와 같은 상황에서 둘의 곱은 x,y와 무관하게 항상 Identity matrix가 된다. 

    $$ \begin{bmatrix}
     1& 0 & x\\ 
     0&1  &y 
    \end{bmatrix}
    \begin{bmatrix}
    1 &0 \\ 
    0 &1 \\ 
    0 &0 
    \end{bmatrix}
    =
    \begin{bmatrix}
    1 &0 \\ 
    0 &1 
    \end{bmatrix}
    $$

    그 이유는 행렬곱을 이해하는 3가지 관점 중 세번째인, 앞 행렬의 column과 뒷 행렬의 row의 곱으로 행렬곱을 이해할 때, 뒤 행렬의 3번째 row가 0 이므로, 앞 행렬의 x,y 가 무엇이 되던 의미가 없어지기 때문이다. 


    Square Matrix의 Inverse matrix

    하지만 만약 A가 square matrix 라면, 세 질문에 대한 답은 모두 Yes 가 된다.

    즉, 만약 Left Inverse와 Right Inverse가 존재한다면 둘은 같으며, 그 역행렬은 유일하게 존재한다. $$AB = BA = I$$

    이때 B를 A의 Inverse라고 부르고 다음와 같이 나타낸다(Inverse of A is denoted as below). $$B = A^{-1} $$

    역행렬이 존재할 때, A를 Invertible(가역적)하다고 이야기한다. (짧게 inv 로도 쓴다.) 

    Square matrix의 Inverse가 만족시키는 Properties 

    • $A^{-1}$ 도 Invertiable하다. $$(A_{-1})^{-1} = A$$
    • $A \cdot B$ 도 Invertible하다. $$(AB)^{-1} = B^{-1}A^{-1}$$
    • $A^T$ 도 Invertible하다. $$(A^T)^{-1} = (A^{-1})^T$$
    • 0이 아닌 상수 k 에 대해 kA 도 Invertible하다. $$(kA)^{-1} = \frac{1}{k}A^{-1}$$
    • $A^{m}$ 도 invertible 하다. $$(A^{m})^{-1} = (A^{-1})^m$$

    How to Compute Inverse 

    A의 Inverse가 A에 곱해졌을 때, Identity 를 만들어야하는것은 알겠다. 그렇다면 이제 어떻게 구해야하는가? 가장 Naive한 방법은 $A^{-1}$의 각 성분을 미지수로 두고 연립 1차 방정식을 풀어버리는 것이다 . 하지만 이렇게 되면 연산량이 어마어마해진다. 

    우리는 Gauss-Jordan Elimination을 사용할 것인데, 지금까지 해왔던 것과는 조금 다른 관점에서 바라보기로 한다. 바로 각 ERO를 하나의 행렬곱이라 생각하는 것이다.


    EROs as a matrix

    우리는 각 기본 행 연산 (1) Row exchange (2) Scaling (3) Addition by a multipled row 세 가지를 각각의 Matrix에 대응 시켜보겠다. 

    Row Exchange 

    2행과 3행을 바꾼다고 해보자. 어떤 행렬의 2행과 3행을 바꾼다는 것은 다르게 보면 아래 행렬을 곱하는 것과같다. 

    $$\begin{pmatrix}
    1 &0  &0 \\ 
    0 &0  &1 \\ 
    0 &1  &0 
    \end{pmatrix}
    \begin{pmatrix}
    1 &2  &3 \\ 
    4 &5  &6 \\ 
    7 &8  &9 
    \end{pmatrix} 
     =
    \begin{pmatrix}
    1 &2  &3 \\ 
    7 &8  &9 \\ 
    4 &5  &6 
    \end{pmatrix} $$

    그 이유는 우리가 행렬곱을 row 벡터끼리의 곱이라 생각했을때, 왼쪽 행렬의 두번째 열 중 유일하게 0이 아닌 셋째 성분이 우측 행렬의 셋째 행에 곱해진 뒤, 그 형태를 그대로 출력의 두번째 행에 출력하기 때문이다. 반대로 좌측 행렬의 셋째 행의 유일하게 0이 아닌 두번째 성분이 우측 행렬의 두번째 항을 출력되는 함수의 셋째 행에 출력한다. 이를 통해 Row exchange가 일어나게 된다. 

    Scailing

    Scailing은 다음과 같이 표현한다. 

    $$\begin{pmatrix}
    1 &0  &0 \\ 
    0 &k  &0 \\ 
    0 &0  &1 
    \end{pmatrix}
    \begin{pmatrix}
    1 &2  &3 \\ 
    4 &5  &6 \\ 
    7 &8  &9 
    \end{pmatrix} 
     =
    \begin{pmatrix}
    1 &2  &3 \\ 
    4k &5k  &6k \\ 
    7 &8  &9 
    \end{pmatrix} 
    $$

    Addition by a multipled row 

    첫째 행에 k배 하여 둘째 행에 더하는 조작은 다음과 같이 표현한다. 

    $$\begin{pmatrix}
    1 &0  &0 \\ 
    -k &1  &0 \\ 
    0 &0  &1 
    \end{pmatrix}
    \begin{pmatrix}
    1 &2  &3 \\ 
    4 &5  &6 \\ 
    7 &8  &9 
    \end{pmatrix} 
     =
    \begin{pmatrix}
    1 &2  &3 \\ 
    4-k &5-2k  &6-3k \\ 
    7 &8  &9 
    \end{pmatrix} 
    $$


    EROs로 역행렬 구하기

    우리는 행렬 A의 역행렬을 구하기 위해 A를 RREF로 만들고자 한다. 그 이유는 $AA^{-1}$로 나오는 Identity Matrix 또한 하나의 RREF 이기 때문이다. 다시 말하면, 우리가 ERO를 이용해 A를 RREF 형태로 바꿔준 결과, 그 RREF가 Identity가 된다면, 우리가 A를 RREF(Identity)로 만들기 위해 곱해준 일련의 Elementary matrix들의 곱이 바로 A의 역행렬이 된다. 

    구체적인 방법으로는, A의 옆에 Identity matrix를 augmented 해주고, 여기에 EROs를 쭉 곱해주며 왼쪽 A를 RREF로 만들어주고, 그 결과 Identity matrix가 되면, 역행렬은 존재하며, 그 역행렬은 우측에 붙여주었던 행렬이 된다. 

    만약 RREF로 만들어 주었는데, Identity matrix가 되지 않는다면 (Rank가 full ranked 되어있지 않고, zero row가 발생) 역행렬이 존재하지 않는다. 

    이 방법은 역행렬의 존재성 증명과 구체적인 역행렬 계산을 동시에 진행할 수 있다는 장점이 있다.

    위의 예시처럼, RREF를 구해보니 Identity (full ranked) 가 나오면 역행렬이 존재하고, 아래처럼 Identity가 되지 않거나 그 전에 이미 모든 성분이 0인 row가 나오면 Invertible 하지 않다. 


    "A 가 Invertible 하다" 의 동의어 (Equivalent) 

    1. A 의 Left Inverse 가 존재한다. 
    2. A는 Invertible 하다. 
    3. $Ax = b$ 의 해가 유일(unique)하다. 
    4. $Ax = 0$ (Homogeneous) 의 해는 오직 $x = 0$ (trivial solution) 뿐이다. 
    5. A의 RREF는 Identity matrix이다. 
    6. A는 elementary matrix들의 곱으로 나타낼 수 있다. 

     

    우선 $2 \to 3$은 $x = A^{-1}b$ 이므로 성립한다. 역으로 $3 \to 2$는 우리가 RREF로 만들었을 때, 그것이 Identity 행렬이어야만 unique solution을 갖는다. A의 RREF가 I 라면 Invertable 하므로 $3 \to 2$가 성립한다.

    $3 \to 4$는 당연히 성립한다(b=0) 

    $4 \to 5$는, 우리가 A를 가우스 조던 소거법으로 RREF로 만들었을때, RREF가 Identity(Full ranked)여야만 trivial solution 하나로 Unique하게 결정되기 때문에 보장된다. (이 부분 이해가 부족함, $3 \to 5$ 가 일반적으로 맞는 표현 아닌가)

    $5 \to 6$는 우리가 A에 기본행 연산행렬을 쫙 곱해서 RREF로 만들어줬더니 Identity matrix가 되었다는건, 그 기본행연산들의 역행렬을 차례대로 곱한다면 $$A = E^{-1}E^{-1} ... I $$ 꼴로 나타낼 수 있다. (아래 필기 참조)

    또, $1 \to 3,4$ 는 $$ Ax = b \to A^{-1}Ax = A^{-1}b$$ 이고 $$x =  A^{-1}b $$ 이므로 성립한다.  

    댓글