이번 포스팅에서는 선형대수방정식을 통해
curve fitting 하는 방법에 대해 알아보겠습니다.
임의의 점을 지나는 함수를 구할 때 - curve fitting
많은 경우에 우리는 특정 점을 지나는 함수를 구하고 싶은 경우가 있습니다.
그리고 이런 경우 대부분 함수를 다항함수(Polynomial)로 가정하여 구합니다.
예를 들어
(x1,y1),(x2,y2),...,(xn,yn)(x1,y1),(x2,y2),...,(xn,yn)
위와 같은 n개의 점을 지나는 다항함수를 구할 때
미지수가 n개이므로 n-1차 다항함수로 fitting할 수 있습니다.
아래와 같이 다항함수의 경우 y절편까지가 미지수이기 때문이죠.
y=a0+a1x+a2x2+...+an−2xn−2+an−1xn−1y=a0+a1x+a2x2+...+an−2xn−2+an−1xn−1
미지수가 3개인 2차함수의 경우 ffiting하면 아래와 같은 모습일겁니다.

Curve fitting 하는 방법 및 예제
선형대수방정식을 통해 curve fitting을 손쉽게 할 수 있습니다.
이 때 gauss elimination이 필요한데, 이 부분은 아래 포스트에 설명되어있으니
필요하시면 참고하시면 좋을 것 같습니다.
[수치해석] Gaussian elimination(가우스 소거법)
이번 포스팅에서는 선형대수방정식의 해를 구하는 방법 중 하나인 Gaussian elimination(가우스 소거법)에 대해 알아보겠습니다. Gaussian elimination(가우스 소거법)이란? 가우스 소거법은 전진소거법을
study2give.tistory.com
예제를 통해 바로 알아보죠.
아래 세 점을 지나는 2차 함수를 fitting해봅시다.
(1,6),(2,3),(3,2)(1,6),(2,3),(3,2)
그럼 2차함수는 아래와 같이 가정할 수 있습니다.
y=a0+a1x+a2x2y=a0+a1x+a2x2
가정한 2차함수에 위 3점을 넣어 대수방정식을 구성해봅시다.
a0+a1+a2=6a0+a1+a2=6
a0+2a1+4a2=3a0+2a1+4a2=3
a0+3a1+9a2=2a0+3a1+9a2=2
이는 아래와 같이 나타낼 수 있죠.
[111:6124:3139:2]
이제 gauss elimination을 해봅시다.
첫번째 행에 -1을 곱하여 두번째, 세번째 행에 더해주면 아래와 같습니다.
[111:6013:−3028:−4]
이번엔 두번째 행에 -1을 곱하여 첫번째, 세번째 행에 더해줍시다.
[10−2:9013:−3002:2]
세번째 행을 2로 나누면
[10−2:9013:−3001:1]
마지막으로 세번째 행에 2를 곱하여 첫번째 행에 더하고, -3을 곱하여 두번째 행에 더합니다.
[100:11010:−6001:1]
따라서 a0=11,a1=−6,a2=1 이므로
세 점 (1,6),(2,3),(3,2)를 지나는 2차함수는 아래와 같습니다.
y=11−6x+x2
여기까지 선형대수방정식을 통한 curve fitting법에 대해 알아보았습니다.
'공학 > 선형대수학' 카테고리의 다른 글
[선형대수학] 벡터의 내적(dot product)과 성질 (0) | 2021.08.01 |
---|---|
[선형대수학] 행렬식(Determinant) (0) | 2021.05.11 |
[선형대수학] 역행렬(Inverse matrix) (0) | 2021.05.11 |
[선형대수학] 고유값(Eigenvalue)과 고유벡터(Eigenvector) (0) | 2020.11.10 |