「スプライン」という言葉は、職人の道具で、木や金属の柔軟な薄い帯で、滑らかな曲線を描くのに使われたものを指します。 いくつかの重りをいろいろな位置につけて、その数と位置に応じて帯が曲がるようにする。 これを、金属のピンや船の肋骨などの定点に押し当てて通過させる。 平らな面では、フック付きの錘(おもり)であることが多いので、簡単に操作することができる。 曲げられた材料の形状は、当然スプライン曲線になる。 統計学でも同様に、柔軟な形状を数学的に再現するためにスプラインが使われる。 データ範囲内の数カ所に「結び目」を設け、隣り合う機能部品が結合している箇所を特定する。 金属や木の縞模様ではなく、滑らかな関数片(通常は低次の多項式)が選ばれ、連続する2つの結び目の間でデータに適合させる。 多項式の種類とノットの数と配置が、次にスプラインの種類を定義するものである。
Motivating example 1986年の一般化加法モデル(GAM)の導入により、スプラインモデリングの使用は統計回帰分析で確立されたツールとなった。 これを説明するために、西アフリカの3つの村で収集された50歳未満の女性892人のデータ(データはAdditional file 1: Appendixで入手可能)を考える。 年齢と体脂肪の粗い指標である上腕三頭筋の皮下脂肪厚との関係を調べたい。 図1は、年齢と上腕三頭筋皮下脂肪厚の関係を対数スケールで測定したものである。 データの詳細については、.
式1の回帰モデルは、予測変数の非線形関数を与えているにもかかわらず、依然として線形モデルであることが分かる。 このモデルは係数がまだ線形であり、通常の最小二乗法を使用して適合させることができます。 基底は、Rで関数 poly(x,3) を使って、入力 x(変数を指す)、p(多項式の次数を指す)を使って作成することができます。 これは,次の形式の単純な一変量平滑モデルをもたらします: yi=f(xi)+ε ここで,f()は予測変数の何らかの関数/変換です. このようなモデルは,Rで lm(y ∼poly(x,3)) を用いて簡単に適合させることができる. 多項式回帰は単純であるにもかかわらず,いくつかの欠点があり,最も重要なのは非局所性である. つまり、与えられた値x0における適合関数は、その点から遠く離れたデータ値に依存する。 あるデータセットに多項式を当てはめ、右端付近のデータ点の1つを上下に動かすと、この現象が簡単にわかる。
グローバルな多項式をフィットさせる代わりに、xの範囲をより小さな区間に分割し、任意の数と位置のポイント、τ(ノットとも呼ばれる)を利用することを考えてみてください。 f1(x)=1,f2(x)=x,f3(x)=(x-τ1)+,f4(x)=(x-τ2)+,…, “+” と定義した関数で、単純な区分連続モデルを当てはめることができる。
これらの関数の集合は合成関数f(x)を導く。
Definition of splines
製図用金属スプラインは任意の形状、例えば飛行機の翼の断面や遠心ポンプの螺旋を仮定することができます。 統計的なアプリケーションでは、f(X) の形の曲線、すなわち、各 x に対して単一の y 値を仮定します。 ここでは、ほぼ一変量関数で、且つ、 \in ゙mathbb {R} ゙ であることを前提とする。 スプラインf(X)は後述する微分可能性を満たす滑らかな関数で、次数dの多項式となる。 しかし、統計的スプラインはそうではない。 むしろ我々は、d以下の次数の導関数はすべて連続であるという滑らかさの基準を課しています。 物理的なスプラインは最後の結び目から先は線形であり、さらに2次以上の導関数が左端と右端の結び目でゼロであるという制約を課すことができる。この追加制約を持つスプラインは「制限付き」または「自然」スプラインとして知られている。 より柔軟な曲線を得るために、結び目の数や多項式の次数を増やすことができる。 しかし、ノットの数を増やすと、データに過剰にフィットして分散が大きくなり、ノットの数を減らすと、より偏りのある硬い制限的な関数になってしまうというトレードオフがある。
基底関数による表現
未知関数fが固定ノット列、固定次数dのスプライン関数で表されるとする。後者はベクトル空間Vを形成するので、fを
ここで、BkはVを定義する基底関数の集合、βkは関連するスプライン係数である。 k個のノットでは次数dの多項式がk+1個、制約がd*k個あり、(d+1)(k+1)-d*k=d+k+1の自由パラメータとなり、自然スプラインではk個の自由パラメータとなります。 任意の非特異行列Aに対してβB=(βA)(A-1B)=γB*なので、スプラインフィットの基底セットは無限にありえます。 具体的には、(2)の式は係数ベクトルβ=(β1,…,βK+d+1)に対して線形である。 したがって、fの推定は、変換された変数B1(X),…,BK+d+1(X)において線形である最適化問題とみなすことができ、広範囲の(一般化)多変量回帰モデルにおけるスプラインの使用に関する確立した推定技術を使用できるようにする。 重要なことは、スプラインモデリングは関数f()の推定を実数値の係数の小さなセットの推定に減らすことである。
様々な著者によって指摘されているように(例えば、スプラインモデリングの高い柔軟性は、多くの調整パラメータの代償としてもたらされる。 これらのうち2つ、基底関数Bの選択と基礎となる多項式の次数dはほとんど影響を及ぼさないことが判明している。 実際、スプラインフィットは次数dに対して驚くほど頑健です。人間の目には完全に滑らかに見える曲線が得られるため、3次多項式(d=3)が通常の標準となっています。 フィットした曲線の導関数に興味がある場合は、より高い次数が適切な場合もありますが、一般にd>3のフィットは事実上区別がつきません。 d=1またはd=2でのフィットはほぼ同じ統計的特性を持つが、よりギザギザしているように見える。
2つの重要な選択は、ノットの数と間隔、そしてペナルティ関数、例えばスプラインの2階微分の積分を使用するかしないかである。 ペナルティがない場合、変換された変数の作成は個別に行うことができ、新しい変数は単に標準的なモデルの適合に含まれるだけで、基本的な回帰手順を変更する必要はありません。 この方法は、回帰スプラインと呼ばれることが多く、得られる非線形関数の柔軟性は、完全にノットの数の関数である。 一方、平滑化ペナルティを含めると、それに対応するためにフィットルーチンを修正する必要がある。 これは、各回帰関数に個別に含まれなければならない。
様々なスプラインアプローチの数学的特性を探るためにかなりの研究が行われているが(参照)、応用統計学者やデータ分析者は、実際のアプリケーションでスプラインモデリングを使うときに、これらの結果をほとんど意識していないようである。 実際、我々のウェブ検索で特定された論文の多くには、使用されるスプライン手法の選択の根拠について正当化がなされていない。
Popular spline basis
基底関数Bkの定義については多くの選択肢があり、様々なスプライン基底はその数値的特性に関して異なっている。 本節では、最もポピュラーなスプライン基底、すなわち、切断された冪級数基底、Bスプライン基底、カーディナルスプライン基底を紹介する。
切断された冪級数とキュービックスプライン
切断された冪級数基底は基底関数
上の基底関数がもたらす利点はその解釈が簡単なことである。 (式の1行目)で定義された次数dの「基本」多項式から始めて、基本多項式からの偏差をK個のノットのそれぞれの右側のスプライン関数に順次追加していく(2行目)。 切り捨てられたパワーベーススプラインは結び目でd-1倍微分可能であり、d+K個の自由度を持つ。 x が , の観測値を表すとすると、Additional file 1: Appendix の Code 1 を用いて、x の範囲に等間隔に5つのノットを持つ次数 d=3 の切断されたべき乗基底を作成することができる(Fig.2)。