최소 제곱 근사 문제


11

나는 과학 계산에 대한 과정을 밟고 있으며, 우리는 최소 제곱 근사치를 넘어갔습니다. 내 질문은 특히 다항식을 사용하여 근사하는 것입니다. n + 1 데이터 포인트가있는 경우 이러한 모든 포인트를 설명하는 n 차의 고유 다항식을 찾을 수 있습니다. 그러나 이것이 왜 항상 이상적인 것은 아닌지 알 수 있습니다. 이러한 접근 방식을 사용하면 데이터 포인트간에 많은 노이즈가 발생할 수 있습니다. 귀하의 데이터를 충분히 추정하는 낮은 다항식을 얻는 것이 좋습니다.

내 질문은 : 당신은 실제로 어느 정도의 다항식을 사용할 것인지 어떻게 결정합니까? 경험의 규칙이 있습니까, 아니면 현재의 문제에만 의존합니까? 어느 정도의 학위를 결정할 때 다양한 장단점을 고려해야합니까? 아니면 내가 뭔가를 오해하고 있습니까?

미리 감사드립니다.


2
실제로 사람들은 스플라인 보간 en.wikipedia.org/wiki/Spline_interpolation 과 같은 것을 사용 하여 하위 폴리를 사용하지만 전체 영역에서 서로 잘 맞습니다. 이런 식으로 전체 다항식 순서를 추측 할 필요가 없습니다.
Nasser

링크 주셔서 감사합니다. 우리는 아직 스플라인을 다루지 않았으므로 흥미로운 독서입니다.
Uday Pramod

정확히하고 싶은 것은 무엇입니까? 포인트를 보간하려고하거나 주어진 데이터에 적합합니까? 예를 들어 잡음이있는 정규 분포로 구성된 데이터를 보간하는 것은 쓸모가 없습니다. 전자의 경우 Nasser의 대답이 좋습니다. 후자의 경우, 적합 함수는 당면한 문제에만 의존하며 많은 경우에 다항식이 아닙니다.
Hauntergeist

교차 검증 된이 질문에 대한 답변에 관심이있을 수 있습니다 .
Bort

답변:


18

보간 및 곡선 피팅의 가장 중요한 측면은 고차 다항식 피팅이 문제가 될 수 있는지와 다른 옵션이 무엇인지 이해하고 그들이 좋은 선택이 아닌 경우를 이해할 수 있다는 것입니다.

고차 다항식의 몇 가지 문제 :

  • 다항식은 자연적으로 진동하는 함수입니다. 다항식의 차수가 증가함에 따라 진동 수가 증가하고이 진동은 더욱 심해집니다. 여기에서 단순화하고 있습니다. 복수의 가상 루트가 가능하면 조금 더 복잡하지만 요점은 동일합니다.

  • 다항식은 x가 +/- 무한대에 갈 때 다항식과 같은 속도로 +/- 무한대에 접근합니다. 이것은 종종 바람직한 행동이 아닙니다.

  • 고차 다항식에 대한 다항 계수 계산은 일반적으로 조건이 좋지 않은 문제입니다. 즉, 컴퓨터의 반올림과 같은 작은 오류로 인해 답변이 크게 변경 될 수 있습니다. 해결해야하는 선형 시스템에는 쉽게 조절할 수 있는 Vandermonde Matrix 가 포함됩니다 .

아마이 문제의 핵심은 커브 피팅보간 사이의 구별이라고 생각합니다 .

보간 은 데이터가 매우 정확하다고 판단 될 때 사용되므로 함수가 데이터 포인트와 정확히 일치하도록해야합니다. 데이터 포인트간에 값이 필요한 경우 일반적으로 데이터의 로컬 추세와 일치하는 부드러운 기능을 사용하는 것이 가장 좋습니다. 입방체 또는 은자 스플라인은 종종 이러한 유형의 문제에 적합한 선택입니다. 데이터의 로컬이 아닌 (지정된 지점에서 멀리 떨어진 데이터 지점을 의미) 변경 또는 오류에 훨씬 덜 민감하고 다항식보다 진동이 적기 때문입니다. 다음 데이터 세트를 고려하십시오.

x = 1   2   3   4   5   6   7   8   9  10
y = 1   1 1.1   1   1   1   1   1   1   1

보간
다항식 피팅은 Hermite 스플라인보다 특히 데이터 세트의 가장자리 근처에서 더 큰 진동을 갖습니다.

반면에 최소 제곱 근사는 곡선 피팅입니다.기술. 곡선 맞춤은 데이터의 예상 기능에 대한 아이디어가있을 때 사용되지만 모든 데이터 포인트를 정확하게 통과하기 위해 함수가 필요하지는 않습니다. 이는 데이터에 측정 오류나 기타 부정확 한 내용이 포함되어 있거나 일반적인 데이터 추세를 추출하려는 경우에 일반적입니다. 최소 제곱 근사는 곡선 피팅에 다항식을 사용하여 코스에서 가장 자주 도입됩니다. 이는 코스에서 앞서 배운 기술을 사용하여 비교적 간단하게 선형 시스템을 생성하기 때문입니다. 그러나 최소 제곱 기법은 다항식 피팅보다 훨씬 일반적이며 원하는 함수를 데이터 세트에 맞추는 데 사용할 수 있습니다. 예를 들어 데이터 세트에 기하 급수적으로 증가하는 추세가 예상되는 경우,

마지막으로, 보간 또는 최소 제곱 계산을 올바르게 수행하는 것만 큼 데이터에 맞는 올바른 기능을 선택하는 것이 중요합니다. 그렇게하면 (주의) 외삽 가능성이 있습니다. 다음 상황을 고려하십시오. 2000-2010 년 동안 미국의 인구 데이터 (수백만 명) :

Year:  2000   2001   2002   2003   2004   2005   2006   2007   2008   2010
Pop.: 284.97 287.63 290.11 292.81 295.52 298.38 301.23 304.09 306.77 309.35

지수 선형화 된 최소 제곱 법 N(t)=A*exp(B*t)또는 10 차 다항식 보간법을 사용하면 다음과 같은 결과가 나타납니다.
인구 플롯

미국 인구 증가는 기하 급수적이지는 않지만 더 나은 적합의 판단자가되도록하겠습니다.


1
메모리에서 도메인에 잘 맞는 미국 인구의 그래프로 한 가지 요점은 그것이 잘 외삽된다는 것을 의미하지는 않습니다. 그런 점에서 데이터가있는 영역 외부에 큰 다항식 오류가 표시되는 것은 잘못된 것일 수 있습니다.
Daryl

@Daryl Agreed는 외삽 법을 신중하게 수행해야하며, 적절한 기능을 선택하는 것이 중요하다고 강조했습니다.
Doug Lipinski

@DougLipinski 통찰력있는 답변에 감사드립니다. 최소 제곱에 반하여 선형 최소 최소 제곱이 의미하는 바를 설명 할 수 있습니까?
bela83

@ bela83 댓글에 대한 답변이 너무 깁니다. 나는 당신이 그것을 원한다면 아주 좋은 새로운 질문이 될 것이라고 생각합니다.
Doug Lipinski

@ DougLipinski 시도해 볼게요!
bela83

2

매우 과학적이지 않지만 좋은 경험 법칙은 3도 다항식이 일반적으로 좋은 시작이며 실제로 6도 이상을 사용하여 좋은 결과를 얻는 것을 본 적이 없다는 것입니다.

"이상적인"다항식은 목적에 맞게 노이즈없는 데이터를 충분히 나타내는 가장 낮은 차수입니다.

데이터가 허용하기에 충분히 작 으면 (보통), 진동이 보일 때까지 고차 다항식을 적용 해 볼 수 있습니다.

대안은 스무딩 스플라인 이지만 응용 프로그램에 따라 크게 다릅니다. 스플라인 및 스무딩 스플라인은 보간에만 좋습니다. 시끄러운 데이터의 경우 평활 스플라인보다 다항식 피팅을 선호하는 경향이 있지만 작업하는 데이터는 일반적으로 다항식에 의해 대략적으로 근사됩니다.


1

다항식 근사와 함께 사용한 상당히 효과적인 접근 방법은 다양한 각도 (예 : 1에서 10까지)에 대해 최소 제곱 다항식을 계산 한 다음 연속 중간 지점 (평균 데이터 세트에서 x) 포인트로 정렬됩니다. 이것은 너무 심한 진동으로 커브를 배제하는 데 도움이됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.