공학/선형대수학

[선형대수학] Curve fitting

슬기나무 2021. 7. 31. 17:56
반응형

이번 포스팅에서는 선형대수방정식을 통해

 

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+...+an2xn2+an1xn1y=a0+a1x+a2x2+...+an2xn2+an1xn1

 

미지수가 3개인 2차함수의 경우 ffiting하면 아래와 같은 모습일겁니다.

2차함수 curve fitting

 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을 곱하여 첫번째, 세번째 행에 더해줍시다.

 

[102:9013:3002:2]

 

세번째 행을 2로 나누면

 

[102:9013:3001:1]

 

마지막으로 세번째 행에 2를 곱하여 첫번째 행에 더하고, -3을 곱하여 두번째 행에 더합니다.

 

[100:11010:6001:1]

 

따라서 a0=11,a1=6,a2=1 이므로

 

세 점 (1,6),(2,3),(3,2)를 지나는 2차함수는 아래와 같습니다.

 

y=116x+x2

 

 

 

여기까지 선형대수방정식을 통한 curve fitting법에 대해 알아보았습니다.

반응형