SpAM


 SpAM (sparse additive models) というのは良いかも。


Sparse Additive Models
Pradeep Ravikumar, John Lafferty, Han Liu, Larry Wasserman
arXiv:0711.4555v2 Wed, 9 Apr 2008


Y_{i}=\sum_{j}^Pf_{j}(X_{ij})+\epsilon_{i} \hspace{20} (i=1...N)


というモデル化をして、説明変数の行列 (NxP) と目的変数ベクトル (Nx1) が与えられたときに、任意のスムーズな非線形関数 f_j を学習できる。ほとんどの f_j は0という仮定(sparseness)を置くことで、説明変数の数がサンプル数より多いような場合でもそれなりの結果を出してくれる。しかも彼らの提案した学習アルゴリズムは convex optimization らしいので、局所最小解に落ちることもない。


 free parameter としては sparseness の度合いを決定する定数が1つと、あとスムーズな非線形関数を生成できる関数(とたぶんそれに付随する定数)を選択するだけ。


 要するに GAM (generalized additive models) に sparseness prior をくっつけたというようなもの*1で、言われてみればなんで今までなかったんだろうというぐらいストレートな拡張。でも convex optimization に出来るということを示してくれた点が素晴らしい。実装も見た感じではそんなに難しくなさそうなので、ちょっと時間を見つけて試してみたい。

*1:あるいはGLM (generalized linear models) + coordinate descent (+ sparseness prior) に非線形関数フィットをくっつけた。