- 가우스 소거법(Gauss 소거법)
- 선형대수(linear algebra)의 목표는 어떤 연립일차방정식, 즉, linear system(선형시스템) 문제라도 정형적인 방법으로 표현하고 해결하는 방법을 배우는 것이다.
- $Ax = b$
- linear란 선의 형태라는 뜻. 평면이거나 왜곡되지 않은 공간. 올곧은 공간(?)
아래와 같은 식이 있을때,
- 이 방정식들을 각각 선형방정식(linear equation)이라고 한다.
- 또 여기서 각각의 미지수 x,y,z를 unknown, 혹인 variable이라고 한다.
- 위 처럼 3개의 linear equation과 3개의 unknown으로 구성된 연립일차방정식을 3 x 3 linear system이라고 한다.
- 비선형이란 말은 곡선이라 생각하면됨.
- 미지수의 승수가 1로만 구성 되있는 경우(선형)
- 선형 시스템의 표현: Ax = b (연립일차방정식의 대수적 표현)
위의 식을 Ax=b꼴로 나타내는 방법.
- 선형시스템의 unknowns(미지수)를 모아 column vecor(열벡터) x로 표현한다.
- 선형시스템의 linear equation(선형 방정식)에 대해 다음을 수행한다.
- coeffiencts(계수)를 모아 A의 row vector(행벡터)로 표현한다.
- constant(상수)를 모아 b를 표현한다.
- m x n 선형시스템의 Ax = b를 정리하면
- A = m x n 행렬이다.
- x는 n-벡터이다.
- b는 m-벡터이다.
- 수학에서 벡터는 일반적으로 세워져 있는 열벡터를 기본으로 한다. 근데 프로그래밍 상에서는 세로로 길게 죽 늘어서면 너무 출력이 많아져 보기 힘드므로 가로로 적는다. 수학적으로 열벡터랑 동일하게 생각해도 된다고 한다.
- 넘파이 행렬 역행렬 구하기
A_inv = np.linarg.inv(A)
# 역행렬을 이용해 Ax = b의 해 구하기
x = np.matmul(A_inv,b)
x = A_inv @ b
'프로그래머스 AI 데브코스 5기 > Math' 카테고리의 다른 글
기계학습과 수학 III (0) | 2023.04.17 |
---|---|
기계학습과 수학 II (2) | 2023.04.17 |
기계학습과 수학 I (0) | 2023.04.17 |
LU분해 (0) | 2023.03.24 |
[인공지능 데브코스 TIL]가우스 소거법 (0) | 2023.03.24 |