数値解析の分野で、多項式補間を探しているかもしれません。
多項式補間(一連の点(x、y)が与えられた場合)では、これらの点に適合する最適な多項式を見つけようとしています。これを行う1つの方法は、プログラミングがかなり簡単なニュートン補間を使用することです。
詳細な数値解析と内挿の分野は広く研究されており、多項式の誤差にいくつかの素晴らしい上限を得ることができるかもしれません。
ただし、データに最適な多項式を探しているため、関数は実際には多項式ではないことに注意してください。最初のトレーニングセットから離れたときのエラーのスケールが爆発します。
また、データセットは有限であり、データに(正確にまたはほぼ)適合することができる関数の数は無限(実際には列挙できない無限大)であることに注意してください。そのため、これらのうちどれが最適であるかは、あなたに固有である可能性があります。実際に達成しようとしています。
データに適合するモデルを探している場合は、線形回帰と多項式補間がスケールの両端にあることに注意してください。多項式補間はモデルに過剰適合している可能性がありますが、線形回帰はモデルに適合していない可能性があります。使用するのはケース固有であり、アプリケーションごとに異なります。
単純な多項式補間の例:
データとして持っているとしましょう(0,1),(1,2),(3,10)
。
ニュートン法を使用して得られる表1は次のとおりです。
0 | 1 | |
1 | 2 | (2-1)/(1-0)=1 |
3 | 9 | (10-2)/(3-1)=4 | (4-1)/(3-0)=1
ここで、取得する多項式は、最後の要素で終わる「対角線」です。
1 + 1*(x-0) + 1*(x-0)(x-1) = 1 + x + x^2 - x = x^2 +1
(そしてそれは私たちが使用したデータに完全に適合しています)
(1)テーブルは再帰的に作成されます。最初の2列はx、y値であり、次の各列は前の列に基づいています。一度取得すると、実装は非常に簡単です。完全な説明は、ニュートン補間のwikipediaページにあります。