보간법은 알려진 데이터 점들 사이의 값을 추정하는 것을 뜻합니다. 구하려는 값이 이미 알고 있는 데이터의 범위 안에 있다면, 보간법으로 빠진 값을 추정할 수 있습니다.
가장 단순한 경우는 선형 보간으로, 두 점을 잇는 직선을 사용합니다. 다항식 보간은 여러 점을 정확히 지나는 하나의 다항식을 사용합니다. 라그랑주 보간은 알려진 값들이 서로 다를 때 그 다항식을 쓰는 표준적인 공식입니다.
미지의 가 알려진 범위 밖에 있으면 그것은 보간이 아니라 외삽입니다. 이는 다른 문제이며, 보통 신뢰도가 더 낮습니다.
선형 보간 공식
인 두 점 와 를 알고 있다고 합시다. 와 사이의 에 대해, 선형 보간은 다음을 사용합니다.
이 공식은 에서 까지의 가로 거리 비율을 구한 뒤, 에서 까지의 세로 변화에도 같은 비율을 적용하는 방식입니다. 실제 관계가 그 구간에서 선형이면 정확하고, 그렇지 않으면 국소적인 추정값입니다.
선형 보간 예제
알려진 점이 과 이고, 에서의 값을 구한다고 합시다.
선형 보간 공식을 사용하면,
이제 정리하면,
따라서 보간된 값은 입니다. 이는 가 에서 까지의 거리 중 정확히 지점에 있으므로, 출력값도 에서 까지의 변화 중 만큼 이동한다고 보면 자연스럽습니다.
다항식 보간은 여러 점을 정확히 지나는 맞춤식이다
서로 다른 값을 가진 점이 두 개보다 많다면, 다항식 보간은 그 모든 점을 지나는 하나의 다항식을 찾습니다. 서로 다른 값을 갖는 개의 점이 있으면, 그것들을 만족하는 차수가 최대 인 다항식은 정확히 하나 존재합니다.
예를 들어 두 점은 직선을, 세 점은 최대 2차식, 네 점은 최대 3차식을 결정합니다. 이는 표본으로 얻은 값들을 정확히 만족하는 매끄러운 공식을 원할 때 유용합니다.
하지만 정확히 맞춘다고 해서 점들 사이에서도 항상 좋은 거동을 보인다는 뜻은 아닙니다. 점이 많거나 점들 사이 간격이 넓으면, 고차 보간 다항식은 특히 구간의 양 끝에서 크게 진동할 수 있습니다.
라그랑주 보간 공식
라그랑주 보간은 보간 다항식을 직접 쓰는 방법입니다. 서로 다른 를 갖는 점 가 있을 때, 라그랑주 형태는 다음과 같습니다.
여기서
입니다.
각 기저 다항식 는 에서는 이 되고, 나머지 알려진 값들에서는 이 되도록 만들어집니다. 그래서 이 합은 각 데이터 점에서 정확한 값을 유지합니다.
보통 라그랑주 형태는 적은 수의 점으로부터 정확한 보간 다항식을 구하고 싶을 때 사용합니다. 개념적으로는 깔끔하지만, 더 큰 수치 계산 문제에서는 계산 안정성이 더 좋은 다른 형태가 자주 선호됩니다.
보간과 외삽
보간은 알려진 값 범위 안에서 값을 추정하는 것입니다. 외삽은 그 범위를 넘어 값을 연장해 추정하는 것입니다.
이 차이는 중요합니다. 보간은 가까운 데이터에 기반해 추정하지만, 외삽은 관측 구간 밖에서 기본 패턴이 바뀌면 빠르게 틀릴 수 있습니다.
보간에서 자주 하는 실수
데이터 범위 밖에서 보간하기
가 알려진 구간 밖에 있으면, 그 계산은 더 이상 보간이 아닙니다. 외삽이 되며, 대체로 신뢰도가 더 낮습니다.
정확한 적합이 현실도 정확하다고 가정하기
다항식은 측정된 데이터 점들을 정확히 지날 수 있어도, 점들 사이의 실제 상황을 잘 설명하지 못할 수 있습니다. 특히 데이터에 잡음이 있으면 더 그렇습니다.
서로 다른 조건을 잊기
표준 보간 공식에서는 알려진 값들이 서로 달라야 합니다. 두 데이터 점이 같은 를 가지면서 서로 다른 를 가지면, 하나의 함수가 둘 다 지날 수 없습니다.
너무 빨리 고차식을 선택하기
모든 데이터 점을 하나의 큰 다항식에 넣으면 불안정한 거동이 생길 수 있습니다. 실제로는 점이 많을 때 스플라인 같은 구간별 방법이 더 자주 쓰입니다.
보간법은 어디에 쓰이나요?
보간법은 수치해석, 컴퓨터 그래픽스, 표 조회, 신호 처리, 과학 계산에서 등장합니다. 선택된 몇몇 점에서의 값만 알고 있을 때, 그 사이의 합리적인 값을 구해야 하는 상황에서 유용합니다.
기초 수학 과정에서는 기울기, 함수, 다항식, 근사를 하나의 아이디어로 연결해 주기도 합니다. 즉, 알고 있는 구조를 이용해 그 사이의 미지의 값을 추정하는 것입니다.
비슷한 보간 문제를 직접 풀어 보세요
점 와 를 가지고 선형 보간으로 에서의 값을 추정해 보세요. 그리고 그 구간에서 직선을 사용하는 것이 타당해 보이는지도 생각해 보세요.
직접 식을 세운 뒤 빠르게 확인하고 싶다면, solver에서 자신만의 버전을 시도해 보고 직선의 방정식과 자신의 결과를 비교해 보세요.