프로그래머를 위한 선형대수 Review (1)

프로그래머를 위한 선형대수를 읽고 정리해보자!

0. 책 소개

기초 수학 지식을 쌓기 위해서 선형대수학 책을 읽고 Review를 해보려고 한다.
이 책은 선형대수학을 처음 접하는 분들에겐 다소 난이도가 있을 수 있다고 생각한다.
선형대수학을 한 번 들었으나, 그 개념을 다시 한 번 상기시키고 싶은 분들에게 추천한다.

1. 벡터, 행렬, 행렬식

이 책에서 선형대수학을 배워야 하는 이유에 대해서 공간을 설명하는데 편리하기 위해서라고 이야기한다.

직관을 활용하기 위해서 벡터, 행렬, 행렬식을 공간이라는 무대에서 생각해보자.

선형대수학에서는 좌표 그 자체보다는 공간에 더 Focus를 하자!

  • 벡터 : 수치의 조합을 정리하여 나타내는 기법, 공간 안에서는 점 또는 화살표로 표현이 가능

  • 기저 : 기준이 되는 한쌍의 벡터

  • 기저의 조건
    1. 임의의 수를 기저 벡터로 표현이 가능하다.
    2. 임의의 수를 기저 벡터로 표현할 수 있는 방법이 한 가지 뿐이다.
  • 만약 좌표에 기저가 없다면, 그 좌표는 의미가 없다!
    예를 들어 어떤 수치를 표현하는데 단위가 없는 것이다 마찬가지이다.

  • 차원 : 기저 벡터의 갯수 = 차원을 결정!
    즉, 차원 = 기저 벡터의 갯수 = 좌표의 성분 수

  • 행렬 : 수를 직사각형 형태로 나열한 것

  • 정방행렬 : 행 수와 열 수가 같은 행렬

책에서 행과 열을 구분하는 팁에 대해서도 알려준다.

영어로 행 = row, 열 = column도 잘 알아두자!

이 책에서는 행렬을 사상으로 보는 것을 굉장히 중요하게 생각한다!

행렬 = 사상

사상이란, 변환보다 조금 더 넓은 의미로 n차원 공간에서 m차원 공간으로의 세계로 옮기는 것을
변환보다 조금 더 넓은 의미의 언어로 사상이라고 부른다.

사실 사상보단 변환이라는 단어가 조금 더 와닿는 것 같다. 😏

행렬 = 사상이라고 생각을 하면, 행렬의 곱은 사상의 합성이다.

예를 들어, Input $x$에 대해서 행렬 $B,A$에 대해 $BAx$를 한다고 했을 때,
$x$를 행렬 $A$를 통해 사상(변환)을 진행하고, 그 다음 $B$를 통해 사상(변환)을 진행한다.

행렬의 곱에서는 당연히 $A$의 행 수와, $B$의 열 수가 같아야 곱셈이 진행된다.

또다른 방법으로 행렬의 거듭제곱은 사상의 반복이다.
거듭제곱은 행렬이 무조건 정방향행렬이여야 한다. 행렬의 곱을 생각하면 이유를 바로 알 수 있다.

비슷한 말을 계속 반복하고 있는데 필자는 행렬 = 사상을 굉장히 강조하고 있다.

또 하나의 팁을 주자면 보통 $A^0 = I$(단위행렬)이라고 약속해둔다.

기본적인 행렬의 용어에 대해 다시 한 번 정리를 해보자.

  • 영행렬 $O$ : 모든 성분이 0인 행렬
  • 단위행렬 $I$ : 정방행렬에서 대각선 \의 방향으로만 성분이 1이고, 나머지는 모드 0인 행렬
  • 대각행렬 : 비대각성분(대각성분 이외의 값)이 모두 0인 행렬

대각 행렬에 관한 팁을 주면, \(\begin{pmatrix} a_1 & 0 & 0 \\ 0 & a_2 & 0 \\ 0 & 0 & a_3 \end{pmatrix}\) $= diag(a_1,a_2,a_3)$

이라고도 쓴다.

대각행렬의 특징어떤 성분의 출력이 어떤 성분에 영향을 미치는지 일대일 대응으로 표현이 가능하다는 것이다.

  • 역행렬 $A^{-1}$ : 정방행렬 $A$에 대해 그 역사상(역변환)에 대응되는 행렬 - 원래대로 되돌려 놓는다.

역행렬은 무조건 하나이다, 그리고 $A$는 무조건 정방행렬이다.

  • 블록행렬 : 큰 문제를 작은 부분 문제로 분할하는 방법으로 행렬의 종횡에 단락을 넣어 각 구역을 작은 행렬로 간주하는 것

단락의 종횡은 딱 맞춰서 써야한다.

수열과 미분도 약간의 트릭을 이용해서 행렬로 표현할 수 있다!
$x_t = -0.7 x_{t-1} -0.5x_{t-2}+0.2x_{t-3} + 0.1x_{t-4}$라는 식을 행렬로 표현하면,

처럼 행렬의 곱으로 표현할 수 있다.

$y = Ax + b$처럼 ‘$+b$’를 처리할 때에는 약간의 트릭을 이용하여 행렬의 곱처럼 표현할 수 있다.
아래의 그림을 참고해보자.

좌표 변환을 이용해서 행렬을 표현할 때는 기저가 중요하다.

주어진 문제에 따라 적절한 기저로 바꾼 후 다시 원래 기저로 돌려놓으면 답을 얻을 수 있다.

  • 전치행렬 $A^T$ : $A$의 행과 열을 바꿔넣는 것을 말한다.

전치행렬과 관한 특징으로는 $(A^T)^T = A$, $(AB)^T = B^TA^T$가 있다.

행렬의 결과가 어떤 크기인지 한 번 생각해보자! 수인가? 벡터인가? 행렬인가? 등등…


댓글남기기