본문 바로가기
STUDY/Linear Algebra

[MIT 18.06] Lecture 3. Multiplication and Inverse Matrices

by HYUNHP 2023. 8. 4.
728x90
반응형

안녕하세요, HELLO

 

오늘은 길버트 스트랭 (Gilbert Strang) 교수님의 선형대수학 강의인 "MIT 18.06 Linear Algebra, Spring 2005"에 대해서 정리하려고 합니다. 선형대수학 강의에 대한 정리와 더불어, 딥러닝을 위한 선형대수학 관점에서도 접근하여 강의를 이해하고 분석하려고 합니다.

 

"MIT 18.06 Linear Algebra, Spring 2005" 3주차 "Multiplication and Inverse Matrices"의 강의 내용입니다.


CHAPTER 1. 'Matrix Multiplication' 

 

CHAPTER 2. 'Inverse Matrix'

 

CHAPTER 3. '딥러닝에서 행렬의 곱(Matrix Multiplication), 역행렬 (Inverse Matrix) 사용 방안'


CHAPTER 1. 'Matrix Multiplication' 

 

행렬의 곱을 다양한 관점으로 바라보면서 정리할 수 있습니다.

 

□ Column viewpoint

 

대부분의 경우에는 벡터로 표현하지만, 이처럼 행 * 열의 곱을 원소별로 계산으로 정리할 수 있습니다.

 

앞선 강의를 통해서 행렬 (matrix)과 열 (column)의 곱은 열 (column)인 것을 정리했습니다.

이를 바탕으로 새로운 행렬 (C)를 행렬 (A)과 행렬 (B)의 각 열의 순차적인 곱의 조합으로 생각할 수 있습니다.

 

이를 표준화하면, 아래처럼 표현할 수 있습니다.

 

A = m x n

B = n x p

A * B = C = (m x n) * (n x p) = m x p

 

행렬 C의 열을 다르게 표현하면 행렬 A 열 결합 (combination)의 결과물입니다.


□ Row viewpoint

 

이번에는 행 (row)의 관점에서 생각해 보겠습니다.

 

행렬 C의 행 (row)는 B의 행 (row) 결합 (combination)의 결과물입니다.


□ Column & Row viewpoint

 

세 번째 관점은 행과 열의 곱으로 표현하는 것입니다.


□ Vector viewpoint

 

네 번째 방식은 벡터 (vector)의 관점에서, 여러 개의 행과 열의 곱으로 풀어서 보여준 방법입니다.

 

 

CHAPTER 2. 'Inverse Matrix'

 

□ Singular case (= No inverse)

결론적으로 행렬 A는 역행렬이 존재하지 않습니다. 왜냐하면 두 열은 선형 독립이 아닌, 선형 결합이기 때문입니다. 

Ax = 0이 될 수 있는 유일한 x가 0밖에 없을 때만, 역행렬이 존재하게 됩니다.

 

행렬 A (Matrix A)에 대해서 역행렬의 조건은 아래와 같이 3개 등이 있습니다.

 

1. Rank(A) is full 

2. Null(A) is not existed

3. Linear dependance might not be existed in the column (or row) of A


□ Inverse Matrix Formula

 

역행렬을 계산하는 공식에는 Gaussian-Jordan 방법이 있습니다. 가우스 조던 소거법은 행 사다리꼴 행렬기약 행 사다리꼴 행렬 (Reduced Row Echelon Form of Matrix)로 바꿔주는 방법론이라고 이해하시면 됩니다.

 

소거법은 연립 방정식에서 방정식의 해가 변하지 않는 연산을 통해 구하는 방법입니다.

  • 각 식에 0이 아닌 상수를 곱하는 것 (scaling)
  • 방정식들을 더하거나 빼더는 것 (subtraction)
  • 방정식의 순서를 바꾸는 것 (permutation)

가우스 조던 소거법에 대한 내용은 공돌이 수학정리노트님의 블로그를 참고하시기 바랍니다.


■ Example

여기서는 위 행렬에서 아래 행렬을 2배 해서 뻈습니다.

이번에는 정방행렬을 구하기 위해 아래 행렬에서 3배만큼 곱해서, 위 행렬을 빼보겠습니다. 

최종적으로 나오는 우측 행렬이 A의 역행렬입니다.

 

이를 보기 쉽게 정리하면 아래와 같습니다.

 

반응형

 

CHAPTER 3. '딥러닝에서 행렬의 곱(Matrix Multiplication), 역행렬 (Inverse Matrix) 사용 방안'

 

우리는 데이터 엔지니어링 측면에서 행렬의 곱과 역행렬을 생각해 볼 수 있습니다.

Matrix A가 역행렬을 가지지 않을 조건에는 아래와 같이 3개 등이 있습니다.

 

1. Rank(A) is not full

2. Null(A) exists

3. Linear dependance might be existed in the column (or row) of A

 

이 경우에는 차원을 낮추는 오컴의 면도날(ocam's razar)을 생각해 볼 수 있습니다.

 

이는 일차종속인 차원은 버림으로써, 일차독립만 사용할 수 있도록 하는 것입니다. 이를 통해 선형 결합을 통해 생성될 수 있는 차원은 버림으로써, 놀고 있는 차원은 없앰으로써 살아있는 차원을 활용하는 것입니다.

e.g., rigisng entropy

 

간단하게 오컴의 면도날을 설명하자면, 어떤 현상을 설명할 때 불필요한 가정을 해서는 안 된다는 것이다. 좀 더 쉬운 말로 번역하자면, '같은 현상을 설명하는 두 개의 주장이 있다면, 간단한 쪽을 선택하라 (given two equally accurate theories, choose the one that is less complex)'는 뜻이다. 여기서 오캄의 면도날은 필요하지 않은 가설을 잘라내 버린다는 비유로, 필연성 없는 개념을 배제하려 한 '사고 절약의 원리(Principle of Parsimony)'라고도 불리는 이 명제로서 현대에도 과학 이론을 구성하는 기본적 지침으로 지지받고 있습니다.
 
추가적으로 오컴의 면도날로 배제한 쓸데없이 복잡한 가설들은 후에 잘못된 것이 명백해진 예가 많기 때문에 오컴의 면도날은 진위 판단에 관해 유효성을 가진다고 오해받기 쉽습니다. 오컴의 면도날은 단순히 "여러 가지 가설이 세워지게 된다면 그중 하나를 고를 때 사용하는 일종의 태도"에 지나지 않습니다. 그렇기에 오컴의 면도날로 어느 가설을 선택했다고 해서 반드시 그 가설이 옳다고 볼 수는 없습니다. 거꾸로도 마찬가지로, 어느 가설을 오컴의 면도날로 잘라내 버렸다 하더라도 그 가설이 틀렸다고 할 수 없습니다. 오컴의 면도날은 진위를 가르는 잣대가 아닙니다.


e.g., 오캄의 면도날 (Ocam's Razar)

 

1. Pluralitas non est ponenda sine neccesitate.
필요하지 않은 경우에까지 많은 것을 가정하면 안 된다.

2. Frustra fit per plura quod potest fieri per pauciora.
보다 적은 수의 논리로 설명이 가능한 경우, 많은 수의 논리를 세우지 말라.


■ REFERENCE

 

YOUTUBE LECTURE : URL


■ 마무리

 

"MIT 18.06 Linear Algebra, Spring 2005"3주차 "Multiplication and Inverse Matrices"에 대해서 정리해 봤습니다.

 

그럼 오늘 하루도 즐거운 나날 되길 기도하겠습니다

좋아요와 댓글 부탁드립니다 :)

 

감사합니다.

반응형

댓글