3つのステップでこれに答えます(しようとします):最初に、単変量スムースが意味するものを正確に識別しましょう。次に、多変量平滑(特に、2つの変数の平滑)について説明します。最後に、テンソル積を滑らかに説明するために最善を尽くします。
1)単変量平滑
予測変数未知の関数に誤差加えたものと推測される応答データがあるとします。モデルは次のとおりです。f xyfxε
y=f(x)+ε
ここで、このモデルに適合するために、関数形式を識別する必要があります。これを行う方法は、基底関数を識別することです。基底関数は、関数全体を表すために重ね合わせられます。非常に単純な例は線形回帰であり、基底関数はとのみ。基底拡張を適用すると、ffβ2xβ1
y=β1+β2x+ε
マトリックス形式では、次のようになります。
Y=Xβ+ε
ここで、はn行1列の列ベクトル、はn行2列のモデル行列、はモデル係数の2行1列の列ベクトル、はn行1列の誤差のベクトルです。 。は2つの列があります。これは、基底展開に2つの項(線形項と切片)があるためです。YXβεX
同じ原理がMGCVの基底拡張にも適用されますが、基底関数ははるかに洗練されています。具体的には、独立変数全領域にわたって個々の基底関数を定義する必要はありません。これは、ノットベースのベースを使用する場合によくあります(「ノットベースの例を参照」x)。次に、モデルは基底関数の合計として表され、各基底関数は独立変数のすべての値で評価されます。ただし、前述したように、これらの基底関数の一部は、指定された間隔の外ではゼロの値をとるため、その間隔の外では基底の拡張に寄与しません。例として、各基底関数が独立変数の異なる値(ノット)に関して対称である3次スプライン基底を考えます。つまり、すべての基底関数は同じように見えますが、独立変数の軸に沿ってシフトします。 (これは過度の単純化であり、実用的な基礎には切片と線形項も含まれますが、うまくいけばアイデアが得られます)。
明確にするために、次元基底展開は次のようになります。i−2
y=β1+β2x+β3f1(x)+β4f2(x)+...+βifi−2(x)+ε
ここで、各関数は、おそらく、独立変数 3次関数です。fx
行列方程式を使用して、モデルを表すことができます。唯一の違いは、がn行i列の行列になったことです。つまり、基底展開のすべての項(切片および線形項を含む)の列があります。基底展開のプロセスにより、モデルを行列方程式の形式で表現できるため、線形最小二乗法を使用してモデルを近似し、係数を見つけることができます。Y=Xβ+εXβ
これはペナルティのない回帰の例であり、MGCVの主な強みの1つは、ペナルティマトリックスと平滑化パラメーターによる平滑性の推定です。つまり、次の代わりに:
β=(XTX)−1XTY
我々は持っています:
β=(XTX+λS)−1XTY
ここで、二次であり行列ペナルティマトリックスとスカラー平滑化パラメータです。ここではペナルティマトリックスの仕様については触れませんが、独立変数の任意の基底展開および2次「ウィグリネス」ペナルティ(たとえば、2次微分ペナルティ)の定義については、1つだけで十分です。ペナルティ行列計算できます。SiiλS
MGCVは、最適な平滑化パラメーターを推定するさまざまな手段を使用できます。ここでの私の目標は、単変量スムースがどのように構築されるかについての大まかな概要を説明することだったので、私はそのテーマには入りません。λ
2)多変量平滑
上記の説明は、複数の次元に一般化できます。予測子と関数として応答を与えるモデルに戻りましょう。2つの独立した変数への制限により、不可解な表記法で説明が乱雑になるのを防ぎます。モデルは次のとおりです。yfxz
y=f(x,z)+ε
さて、上記の単変量の場合と同じように、基底展開(つまり基底関数の重ね合わせでを表すことは直感的に明らかです。また、これらの基底関数の少なくとも1つ、そしてほぼ確実にもっと多くがとの両方の関数でなければならないことも明らかです(そうでなければ、暗黙的にはように分離可能です)。多次元スプライン基底の視覚的な図は、ここにあります。次元の完全な2次元基底展開は、次のようになります。f(x,z)f(x)xzff(x,z)=fx(x)+fz(z)i−3
y=β1+β2x+β3z+β4f1(x,z)+...+βifi−3(x,z)+ε
私はまだこれを行列形式で表すことができることはかなり明白だと思います:
Y=Xβ+ε
とすべての一意の組み合わせで各基底関数を評価するだけです。解決策はまだあります:xz
β=(XTX)−1XTY
二階微分ペナルティ行列の計算は、単一変数に関する各基底関数の二階微分を統合する代わりに、すべての二階微分(部分を含む)の合計をすべての独立変数に。上記の詳細は特に重要ではありません。ポイントは、ペナルティ行列を構築し、同じ方法を使用して平滑化パラメーター最適値を取得できることです。Sλ
β=(XTX+λS)−1XTY
現在、この2次元の平滑化には等方性ペナルティがあります。これは、単一の値が両方向に適用されることを意味します。これは、空間アプリケーションなど、と両方がほぼ同じスケールである場合に正常に機能します。しかし、空間変数を時間変数で置き換えるとどうなりますか?単位単位よりもはるかに大きくても小さくてもよい、我々が測定した場合、これらの誘導体のいくつかは、例えば(全体の統合に不釣合いに貢献していきますので、これは私たちの第二デリバティブの統合をオフに投げることができますナノ秒にし、λxzzttxtx光年では、に関する2階微分の積分はに関する2階微分の積分よりもはるかに大きくなる可能性があり、したがって方向に沿った「ウィグリグリネス」はほとんどペナルティを受けない可能性があります)。リンクした「スムーズツールボックス」のスライド15には、このトピックに関する詳細が記載されています。txx
基底関数をと周辺基底に分解しなかったことは注目に値します。ここでの意味は、多変量平滑化は複数の変数をサポートするベースから構築する必要があるということです。以下で説明するように、テンソル積は単変量周辺基底から多変量基底の構築をスムーズにサポートします。xz
3)テンソル積の平滑化
テンソル積平滑化は、異なるユニットとの複数の入力の相互作用に対する応答のモデリングの問題に対処します。空間変数と時間変数関数である応答あるとします。モデルは次のとおりです。yfxt
y=f(x,t)+ε
私たちがやりたいのは、変数と 2次元基底を構築することです。を次のように表現できれば、これは非常に簡単です。xtf
f(x,t)=fx(x)ft(t)
代数的/分析的な意味では、これは必ずしも可能というわけではありません。しかし、我々は、のドメイン離散化され、覚え及び(上のノットの位置によって規定される二次元の「格子」想像と「真」機能するよう軸)基底関数の重ね合わせで表され。非常に複雑な単変量関数がその領域の特定の区間で単純な3次関数で近似できると仮定したように、分離できない関数はより単純な関数の積で近似できると仮定することができますおよびxtxtff(x,t)fx(x)ft(t) 間隔で-基準次元を選択すると、これらの間隔が十分に小さくなります!
次元の基底と次元の基底が与えられると、基底展開は次のようになります。ixjt
y=β1+β2x+β3fx1(x)+β4fx2(x)+...+βifx(i−3)(x)+βi+1t+βi+2tx+βi+3tfx1(x)+βi+4tfx2(x)+...+β2itfx(i−3)(x)+β2i+1ft1(t)+β2i+2ft1(t)x+β2i+3ft1(t)fx1(x)+βi+4ft1(t)fx2(x)+...+β2ift1(t)fx(i−3)(x)+…+βijft(j−3)(t)fx(i−3)(x)+ε
テンソル積として解釈される可能性があります。および各基底関数を評価し、それによってn行i列およびn行j列のモデル行列およびをそれぞれ構築したと想像してください。次に、これら2つのモデル行列の行テンソル積を計算し、各列が一意の組み合わせ表すように列に再編成できます。限界モデル行列にはそれぞれ列と列があったことを思い出してください。これらの値は、それぞれの基本次元に対応しています。この場合、新しい2変数基底の次元はxtXTn2ij X⊗Tijijij、したがって、そのモデル行列の列数は同じです。
注:限界基底関数の積を取ることで明示的にテンソル積基底関数を構築したため、テンソル積基底は任意のタイプの限界基底から構築できることを指摘したいと思います。上記で説明した多変量スムーズとは異なり、複数の変数をサポートする必要はありません。
実際には、このプロセスでは、次元全体的な基底展開が行われます。これは、完全な乗算には、すべての基底関数にx切片を乗算(を減算)するだけでなく、t切片よる基底関数(したがってを減算します)が、それ自体で切片を追加する必要があります(したがって1を追加します)。これは、識別可能性制約の適用として知られています。ij−i−j+1tβx1jxβt1i
したがって、これを次のように表すことができます。
y=β1+β2x+β3t+β4f1(x,t)+β5f2(x,t)+...+βij−i−j+1fij−i−j−2(x,t)+ε
ここで、多変量基底関数それぞれは、との周辺基底関数のペアの積です。繰り返しますが、これを行列方程式で表すことができることは、この基礎を構築したことでかなり明確です。fxt
Y=Xβ+ε
解決策はどれですか(まだ):
β=(XTX)−1XTY
モデル行列は列があります。ペナルティ行列および、これらは次のように各独立変数に対して個別に構築されます。Xij−i−j+1JxJt
Jx=βTIj⊗Sxβ
そして、
Jt=βTSt⊗Iiβ
これにより、全体的な異方性(各方向で異なる)ペナルティが可能になります(注:の2次導関数のペナルティは、軸の各ノットで加算され、逆も同様です)。平滑化パラメーターとは、単一の平滑化パラメーターが単変量および多変量平滑化の場合とほぼ同じ方法で推定できます。その結果、滑らかなテンソル積の全体的な形状は、その独立変数の再スケーリングに対して不変です。xtλxλt
MGCV Webサイトのすべてのビネットと、「一般化された加算モデル:およびRの紹介」を読むことをお勧めします。サイモン・ウッドの長生き。