読者です 読者をやめる 読者になる 読者になる

#22 Adaptive Sparseness for Supervised Learning

機械学習 論文100本ノック ベイズ統計

ICML2011Sparse Additive Generative Models of Textという論文が出ていて、あちこちで筋がよさそうな感じじゃね?と紹介されている(こことかこことか)。

Motivation

肝となるアイデアはsparsenessで、LDAのような生成モデルだと単語毎にどの多項分布を選んでくるか決めるため、トピック毎に多項分布が生成され、どこのトピックでも"the"とか"of"のような単語は確率が高いというのを学習してきてしまって無駄が多い(論文中ではoverparametrizationと書いてある)。もちろん、Dirichlet分布のパラメータをいじってあげることでsparsenessをinduceすることは可能だが、そうすると逆に精度が落ちてしまったりということもある。そんなわけでICML2011の論文ではbackgroundになるようなモデルと他のトピック毎の特有なもの(多くが0になるようにして特徴があるところだけ値が立つ)を学習し、それらを足す(additive)ようにすればsparsenessなLDA的なものが実現できそうじゃんか、という流れ。この論文についてはまた他のところでもうちょい説明書くと思うけど、大筋はこんな感じ。

手法

ICML2011の論文のsparsenessの根幹を成すのがこの論文に書いてあるところ。ベイジアンの生成モデルでsparsenessを出したいということなので、ラプラス分布(L1正則化と思えばよい)をpriorに置けばよいのであるが、これをpriorに置くと絶対値が出てくる関係で最適化が困難になってしまう。そこで、この論文では「データをガウシアン、事前分布を指数分布にして、パラメータを周辺化してやるとラプラス分布が出てくる」という性質をうまく使っている。本当に周辺化してしまうと絶対値が出てきて意味がないが、パラメータを隠れ変数だと思いEMを回すことで最適化をかますことができる(論文ではthe most efficientではないが、実装が簡単なのがうれしいところ、と書いてある)。

「ハイパーパラメータをどう決めるか」という問題が残るが、Jefferys' priorを置いてあげるとscale-invariant(尺度不変性...だったっけ日本語)があることをいかすと実質ハイパーパラメータがないのと同じになるので調整が楽になるのがうれしいところ。ハイパーパラメータにこういう一様のpriorを置いてあげると元のパラメータはラプラス分布ではなくなってしまうが、「実験ではsparsenessがinduceできてるからいいじゃん?」というノリで説明してある(いいのかな...?)。

関連研究

関連手法や実験のところでRVM(関連ベクトルマシン。PRML参照)が出てきている。こっちはsparsenessが出てかつ経験ベイズ(パラメータで周辺化して尤度最大化)でハイパーパラメータまで自動決定できる方法。提案手法はこれと同程度の精度とsparsenessを出せているという風な結果になっている(どっちがいいとかはほとんど書いてない)。とりあえず今回はICML2011のラプラス分布関係のところが知りたかったので、この辺が分かればまあいいかな。論文自体は割と読みやすかった。Bayesian Lassoとかっていったときにはこの辺を指しているってことでいいんですかね?

@article{Figueiredo:2003:ASS:942593.942769,
 author = {Figueiredo, M\'{a}rio A. T.},
 title = {Adaptive Sparseness for Supervised Learning},
 journal = {IEEE Trans. Pattern Anal. Mach. Intell.},
 volume = {25},
 issue = {9},
 month = {September},
 year = {2003},
 issn = {0162-8828},
 pages = {1150--1159},
 numpages = {10},
 url = {http://portal.acm.org/citation.cfm?id=942593.942769},
 doi = {10.1109/TPAMI.2003.1227989},
 acmid = {942769},
 publisher = {IEEE Computer Society},
 address = {Washington, DC, USA},
 keywords = {Supervised learning, classification, regression, sparseness, feature selection, kernel methods, expectation-maximization algorithm.},
}