3주차에서는 본격적으로 행렬이 등장한다. 여담으로 고등학교 때 행렬을 별로 좋아하지 않았고 다시 볼 일 없을 거라고 생각했는데 대학교 가서 다시 만날 줄이야... 그래도 공학수학 수강했을 때에는 그나마 잘 이해했던 부분이 가우스 소거법이었어서 3주차는 수월하게 지나간 것 같다. 앞 부분 빼고
DISCLAIMER: 아래 내용은 오로지 Coursera 강의를 토대로 제가 이해한 대로 정리한 것이기 때문에 부정확하거나 설명이 그닥 친절하지 않은 부분이 있을 수도 있습니다.
행렬의 곱셈 및 변환
행렬 A와 벡터 r가 있을 때, 이 둘의 곱을 r′이라고 하자.
Ar=r′
벡터 r에 스칼라 n을 곱하면 다음과 같다.
A(nr)=Anr′
또한 벡터의 합에서 적용됐던 규칙들도 여기서 성립된다.
A(r+s)=Ar+As
A(nr+ms)=nAr+mAs
행렬의 여러가지 변환에 대해 알아보자.
1. identity matrix
basis vector로만 이루어진 행렬. 곱하면 아무것도 안 한다.
I=[1001]
2. inversion/mirror
[−100−1]은 모든 좌표를 반대로 뒤집는(inversion) 변환이다.
[0110]은 45°로 반전(mirror)시키는 변환이다.
3. shear
음... 솔직히 이 부분은 강의를 들으면서 이해가 잘 안 됐다. 대충 모양을 틀어버리는 변환인 것 같은데 내 기준에서는 설명이 조금 모호하다고 생각했다. 이 부분은 이 영상을 참고해보자.
4. rotation
2차원 공간에서 어떠한 각 θ에 대해 행렬을 회전시키는 행렬변환은 다음과 같이 표현할 수 있다
[cosθ−sinθsinθcosθ]
행렬곱셈(matrix multiplication)
행렬곱셈의 특징은 다음과 같다.
-
교환법칙이 성립하지 않는다.
- A1A2=A2A1
- A1=[0−110], A2=[−1001]라는 두 행렬이 있을 때,
A1A2=[0−110][−1001]=[0110]이다.
하지만 순서를 뒤바꾸어서 곱한 A2A1=[−1001][0−110]=[0−1−10]이므로 순서를 바꾸면 곱셈의 결과 값이 달라진다는 것을 알 수 있다.
-
결합법칙이 성립한다.
- A3(A2A1)=(A3A2)A1
역행렬(identity matrix)
[21031][ab]=[813]
위와 같은 행렬이 있다고 하자. Ar=s로 표현했을 때, r값을 구하기 위해서 역행렬을 활용할 수 있다. 행렬 A의 역행렬은 A−1로 표현한다.
역행렬 A−1은 다음과 같은 특징을 가진다.
AA−1=I
즉 행렬 A와 그 역행렬 A−1을 곱하면 단위행렬(identity matrix) I가 된다. 이 점을 이용해서 r값을 구하면 다음과 같다.
A−1Ar=A−1s
r=A−1s
가우스 소거법(Gaussian Elimination)
역행렬을 구하는 한 가지 방법으로는 가우스 소거법(Gaussian Elimination)이 있다.
⎣⎢⎡111121342⎦⎥⎤⎣⎢⎡abc⎦⎥⎤=⎣⎢⎡152113⎦⎥⎤
우선 위와 같은 식에서 가우스 소거법을 이용하여 a, b, c의 값을 구하는 과정은 다음과 같다.
1. elimination
첫 번째 행을 그대로 두고, 두 번째 행은 기존의 두 번째 행에서 첫 번째 행을 뺀 값을, 그리고 세 번째 행에는 기존의 세 번째 행에서 첫 번째 행을 뺀 값으로 교체한다. 이러한 과정을 거치면 다음과 같은 형태가 된다.
⎣⎢⎡10011031−1⎦⎥⎤⎣⎢⎡abc⎦⎥⎤=⎣⎢⎡156−2⎦⎥⎤
이러면 대각선 아래 모든 값이 0인 triangular matrix의 형태가 되는데, 이를 echelon form이라고 부른다.
2. backsubstitution
echelon form으로 변환된 상태를 보면 c=2임을 바로 알 수 있다. 이렇게 얻은 값을 다시 행렬에 대입해보자.
⎣⎢⎡100110001⎦⎥⎤⎣⎢⎡abc⎦⎥⎤=⎣⎢⎡942⎦⎥⎤
이 과정을 한번 거치면 b=4라는 것을 알 수 있다. 다시 행렬에 대입하면 a=5까지 구할 수 있다.
이와 같이 가우스 소거법을 이용하면 굳이 역행렬을 구하지 않아도 식을 풀 수 있고, 계산적이 더 효율적(computationally efficient)이다.
만약에 가우스 소거법을 이용하여 역행렬을 구하고자 한다면 위와 똑같은 과정을 거치면 된다.
행렬식(determinant)
A=[acbd]일 때, A의 determinant는 ad−bc이며, 역행렬은 A−1=ad−bc1[d−c−ba]이다.
만약에 ad−bc=0이면 A는 역행렬이 존재하지 않는다.
필기 첨부
![3주차 필기-1](https://velog.velcdn.com/images%2Fwltjscow%2Fpost%2F5a88ab9b-7851-40cc-8f43-8075b161552e%2Fimage.png)
![3주차 필기-2](https://velog.velcdn.com/images%2Fwltjscow%2Fpost%2F45fc0000-bab0-40a9-b6b3-95a365270a09%2Fimage.png)