NIPS2012に行ってきました

preferred

2013-01-08 10:57:31

先日、NIPS (Neural Information Processing Systems)という学会に参加してきました。今回はその報告です。

NIPSは機械学習の分野においてはトップに位置づけられる会議の一つです。今回、私は特に発表とかはなかったのですが、幸運にも参加することができました。2012年からしばらくは、アメリカ合衆国ネバダ州タホ湖湖岸にあるHarveys HotelとHarrah’s Hotelで開催されます。今回はチュートリアルからワークショップまで、6日間すべてに参加してきましたので、その印象を独断と偏見で語ります。

NIPSはシングルトラックで招待講演と口頭発表を聞いて、残りは全部ポスターセッションという構成になっているのですが、これは口頭発表で聞き逃しもないし、詳しく聞きたい奴はポスターで詳しく聞けるし、なかなかうまい方式だと感じました。代償として口頭発表は非常に数が絞られるわけですが、厳選されているとも言えるわけで、個人的にはマルチトラックで聞けない発表が大量に出るより、こちらのほうが好みです。

NIPSは名称に「Neural(神経)」と入っていることからわかるように、機械学習専門の学会ではなく、脳の構造のモデリングの研究なども含まれる幅の広い学会です。私は機械学習についてはそれなりにわかりますが、脳関係の話は正直用語が違ってまだよくわかりません。以下は機械学習関係についてのみの話になります。

招待講演は毎日あるのですが、その中でも特にScott Aaronsonの“Quantum information and the Brain”は彼の専門である量子力学の解説と、NIPSのテーマである脳についてジョーク交じりでわかりやすい解説に感銘を受けました。(しかし、それでもやはり、量子力学は難しいなと感じました…。)他にも、Computational Sustainability(計算機を使って環境保護を効率的に行う)の話など、普段ちょっと関係はないけれど機械学習の応用として興味深いものでした。

流行について

研究には流行があり、流行に乗るにせよ乗らないにせよ一家言ある人が多いですが、ともかく、流行というのものが重大であることは同意が得られるものと思います。私が受けた印象としては、Deep Learningに関しては話題にしている人が多かったように感じます。後はSpectral Learningも、ワークショップが開かれるなど、盛り上がっていたように思います。(私はSpectral Learningのワークショップに出ましたが、狭い部屋ではありましたが、立ち見が出るぐらいに盛況でした。)

NIPSにくるまで全然知らなかったけれどよく見たキーワードとしては(Partially Observed) Markov Decision Processがあります。自然言語処理の方だと強化学習というのはそれほど重要視されていない(実際、使いどころがなかなか思いつかない気がします)ので、新鮮な驚きがありました。この分野に詳しい人からしたら今年の流行というわけではないのでしょうが、そういった点が肌で感じられるのも学会の良さですね。

個別の発表について

私は理論は苦手なので、どうしても実装しやすいもの、実験があるものに評価が偏ってしまうのですが、面白かったものをいくつかかんたんに紹介します。

Volume Regularization for Binary Classification (K. Crammer, T. Wagner)

 これは二値分類のための手法です。SVMやロジスティック回帰、ナイーブベイズなど、多くの手法ではパラメーターは点推定されます。この手法では、それぞれのパラメーターに対し上限と下限を推定することで、ノイズに対してより耐性のある学習を実現します。

内容についてはkisa12012さんが既にレポートを書かれていますので、そちらに譲ります。

Dropout: A simple an effective way to improve neural networks (G. E. Hinton, G. E. Dahl)

 学習時に0.5の確率でランダムに各ノードを無効化した状態でニューラルネットを学習する。これをドロップアウトと言う。隠れニューロンの数をHとすると「学習時に0.5の確率でランダムに各ノードを無効化した2^Hのモデル」に対して、「同じフィーチャー間では同じ重みの大きさとなる」ように制約を入れた上で学習し、テスト時にはその2^Hのモデルの幾何平均を取ることになる、という話だった。アンサンブルするとなんか結果良くなるからドロップアウトも結果が良くなる。だいたいエラーレートが10%ぐらい下がる、とのこと。
 アンサンブルすると性能が上がると入っても、こんなほぼ同じモデルをアンサンブルして性能が上がるのか直感的には疑問だし、どうもイマイチ説明にもまだ得心がいかないのですが、エラーレートが下がっているのは事実みたいです。

Fast dropout training for logistic regression (S. Wang, C. D. Manning)

 この論文ではロジスティック回帰に対してドロップアウトを適用しています。面白いのは、ドロップアウトをそのまま実装するのではなく、「ドロップアウトした場合のロジスティック回帰の目的関数」を導出し、そこから閉じた形の勾配を導き出しているところです。これによって、普通のSGDでドロップアウトつきロジスティック回帰の最適化が行えます。その結果、収束も早く、エラー率も低いと、いいことずくめになっています。

 しかし、比較対象が正則化のないロジスティック回帰なので、L1/L2正則化ありの場合と比較してどうなのだろうか、というところは少し気になりました。

Confusion-Based Online Learning and a Passive-Aggressive Scheme (L. Ralaivola)

 二値分類は正例と負例の数が大幅に違う場合の学習は難しく、こういった問題設定をimbalanced dataといいます。imbalanced dataでは単にどちらか数が多い方を答えにしておけば正解数が稼げてしまい、特にオンライン学習だと学習が難しいのですが、この論文では混同行列(confusion matrix, true-positiveとかtrue-negativeとかが並んでるあの行列です)を最適化するという新しい目的関数を定義し、imbalanced dataに対して性能が良い、Passive-Aggressiveっぽい感じのアルゴリズムを提案しています。

 正直なところ、普通のデータに対して二値分類器の性能を上げるというのはもう何年か前から限界な感じになってきていると感じているのですが、imbalanced dataやnoisy dataへの対応という点についてはまだできることがあるのかなと、この研究を見て思いを新たにしました。

Multiclass Learning Approaches: A Theoretical Comparison with Implications (A. Daniely, S. Sabato, S. S. Shwartz)

 多クラス分類のための方法には1 vs rest (1 vs all)や1 vs 1、ECOCなどいろいろありますが、それらの理論的な解析をしています。性能のためにはMulticlass SVMのような方式が良いが、test running timeがかかるね、みたいなことが書いてありました。

Learning with Recursive Perceptual Representations (O. Vinyals, Y. Jia, L. Deng, T. Darrell)

 これはLinear SVMをstackingして性能を上げるという研究です。stackingにより、非線形識別が可能になります。第n層の学習データは、第n-1層のprediction vectorに random matrixをかけてデータを揺らしたものを用いるそうです。prediction vectorを学習に使うというあたりは誤差逆伝播っぽい感じで、random matrixをかけてデータを揺らすのはoverfit対策、というような理解で良いのでしょうか? 正直、紹介している自分もまだあまりイメージが掴めていません。
 線形識別器で非線形識別というとRandom Fourier FeatureとかNyström methodがありますので、それとの比較が欲しかったなぁと論文を読んでいて感じました。ただ、非線形識別は魅力的なのでとても興味があります。

Accuracy at the Top (S. Boyd, C. Cortes, M. Mohri, A. Radovanovic)

 Learning to Rank (機械学習で順序付けをおこなう分野)で、上位だけを重視する新しい目的関数を新しく定義しました。上位を重視するのはListNetなどListwiseアプローチ全般的な傾向であると思いますが、この新しい目的関数の方がNDCGとかで性能が高いということです。
 “Convex Optimization”を書いたBoyd先生なのに目的関数が非凸であるというところがなんとなく面白く、一人でニヤニヤしていました。

Ordered Rules for Classification: A Discrete Optimization Approach to Associative Classification (D. Bertsimas, A. Chang, C. Rudin)

 よく使われる分類アルゴリズムである決定木とSVMを比較すると、決定木の方が学習結果がわかりやすいが性能が低く、SVMはその逆であると言われます。この研究では、結果の可読性が高く、性能もSVM並の分類器を新しく提案します。学習結果としてルールのリストが得られ、ルールを順繰りに適用していくことで分類を行います。結果のわかりやすさは実用的には重要なので、実際どれぐらいわかりやすそうなのか、気になっています。

Privacy Aware Learning (J. Duchi, M. I. Jordan, M. J. Wainwright)

 プライバシー保護のため、学習用データにあらかじめノイズをのせておく。どれだけノイズをのせるとどれぐらい学習が遅くなるのか、という話です。ノイズ乗せたらそれでいいのか、病院のデータで同じ人が何回も検査に来た場合にこれで安全なのかは直感的には疑問に思える、という話を報告会とかでしていたら、それが差分プライバシの概念である、と指摘されました。

Collaborative Ranking With 17 Parameters (M. Volkovs, R. Zemel)

 協調フィルタリングを行列穴埋めじゃなくlearning to rankだと思って解こう(レコメンデーションだと結局、レートが高いやつだけが重要だよねというアイデアに基づいている)という話です。うん、こういうの、やりたかったなぁ……と、遠い目をしながらポスターを眺めました。

Tensor decompositions for learning latent variable models (A. Anandkumar, R. Ge, D. Hsu, S. M. Kakade, M. Telgarsky)

 Spectral Learningについての話です。この論文では、Spectral Learningを行う場合、HMMやLDAを含む多くのモデルがテンソル分解の特殊な場合として定式化できること、この特殊なテンソル分解は効率的に解けることを示しています。やっぱりまだ難しい感じのするSpectral Learningですが、これまでの話と比べると、だいぶ見通しが良くなってきた印象を受けました。

他にも色々面白い発表はたくさんあったのですが、あんまり長くなりすぎても読んでもらえないでしょうからこの辺で終わりにします。次回はまたなにか実装して、実験結果を報告したいと思います。

Leave a Reply