[인공지능 데브코스] 2주차 day1 - 선형 시스템, 가우스소거법
12월 07일 월
2주차에는 선형대수학과 같은 AI에 필요한 수학을 공부한다. 수학은 대학교때 자주 했었고 선형대수학 수업을 들은 적이 있어서 그런지 큰 어려움은 없었다. 오늘은 선형시스템에 대해서 공부했고 중요해 보이는 부분을 정리했다.
선형 시스템 (Linear System)
$Ax = b$ 꼴로 표현되며 $A$는 matrix, $x$와 $b$는 vector로 표현할 수 있다. $A$의 모양에 따라 $A$가 ${m} \times {n}$ 행렬이라면 ${m} \times {n}$ 선형 시스템이라고 부른다.
- A의 역행렬이 존재하지 않는 경우 singular라고 한다.
- 해가 있을 때 선형 시스템을 consistent 아닐때 inconsistent라고 한다.
가우스 소거법 (Gaussian Elimination)
임의의 ${m} \times {n}$ 선성시스템의 해를 구하는 가장 대표적인 방법이다.
가우스 소거법은 전방소거법과 후방대입법으로 구성되어 있다.
Forward Elimination (전방소거법)
주어진 선성시스템을 아래로 갈수록 더 단순한 형태의 선형방정식을 가지도록 번형한다.
- 첫 번째 식을 기준으로 첫 번째 미지수가 사라지도록 나머지 모든 식에 적당한 값을 곱한 후 뺀다.
- 두 번째 식부터 마지막 식까지 같은 방법으로 해당하는 미지수가 사라지도록 반복한다.
- 반복하다가 만약 기준이 되는 식의 계수가 0이 된다면 0이 아닌 식을 찾아서 위치를 바꿔준다.
세 가지 기본 행연산 사용
- Replacement(치환): j번째 행을 기준행인 i번째 행에 m배 하고 빼서 업데이트 한다.
- Interchange(교환): j번째 행과 i번째 행의 위치를 서로 바꾼다.
- Scaling: j번째 행에 s만큼 곱해준다.
전방소거법의 가치
- 주어진 선형시스템을 가장 풀기 쉬운 꼴로 변형해 준다. (upper triangular form)
- 주어진 선형시스템의 rank를 알려준다. (rank: 의미있는 식의 개수, 모든 항의 계수가 0이면 의미가 없다고 한다.)
- 선형시스템의 해가 있는지(consistent) 아니면 해가 없는지(inconsistent) 알려준다.
Back Substitution (후방대입법)
아래에서부터 위로 미지수를 실제 값으로 대체한다.
미지수의 값을 쉽게 구할 수 있다.
- 전방소거법 이전의 식
$ \begin{bmatrix} a_1 & a_2 & a_3 \cr a_4 & a_5 & a_6 \cr a_7 & a_8 & a_9 \end{bmatrix} * \begin{bmatrix} x_1\cr x_2\cr x_3 \end{bmatrix} = \begin{bmatrix} b_1\cr b_2\cr b_3 \end{bmatrix} $
- 전방소거법 이후의 식
$ \begin{bmatrix} A_1 & A_2 & A_3 \cr 0 & A_4 & A_5 \cr 0 & 0 & A_6 \end{bmatrix} * \begin{bmatrix} x_1\cr x_2\cr x_3 \end{bmatrix} = \begin{bmatrix} b_1\cr b_2\cr b_3 \end{bmatrix} $
=> 미지수를 구하기가 쉬워진다.