NIPS2015読み会に参加しました

#NIPS2015読み会に参加しました

Deep Learning を含む機械学習関連の国際学会NIPS2015

NIPS2015読み会
http://connpass.com/event/24620/
日時: 2016年1月20日
場所: 銀座松竹スクエア13F
[#nips_yomi](https://twitter.com/hashtag/nips_yomi?src=hash "#nips_yomi)

## (NIPS概要)

比戸将平さん(Preferred Networks) [[スライド](http://www.slideshare.net/shoheihido/nips2015-57261600 "スライド")]

NIPSについて、10年前はKernel法が主流だったが、いまはDeep Learningが主流である。 
NIPSはどんなものが注目されているのか、概要を知る機会になる。 
次回はバルセロナ。 

## Learning Continuous Control Policies by Stochastic Value Gradients  
論文: http://papers.nips.cc/paper/5796-learning-continuous-control-policies-by-stochastic-value-gradients.pdf 
藤田康博さん(Preferred Newtorks) [[スライド](http://www.slideshare.net/mooopan/learning-continuous-control-policies-by-stochastic-value-gradients "スライド")]

- 自己紹介  
強化学習やゲームAIをやってる。  
- 論文概要  
物理シミュレーションで様々なタスクを与えて、ニューラルネットを使って学習する。  
虫が動く、ロボットアームがボールを動かす、チーターが走る、二足歩行する、など  
https://www.youtube.com/watch?v=PYdL7bcn_cM  
Markov Decision Process  
報酬関数  
報酬の和の期待値を最大化  
- 価値観数  
状態行動価値観数  
(確率的)Bellman方程式  
- 行動が連続値  
DQNではダメ？→状態行動価値Q(s, a, θ)のaが連続値だとargmaxQが求められない  
- Policy Gradient Methods  
- Likelihood Ratio Methods  
スコア関数を使えば求まる  
バリアンスが大きくなる
- Deterministic Value Gradients  
Backpropagationで価値観数の勾配を求める  
決定的なBellman方程式ならRNNのようにできる  
確率的な場合は？→Reparameterization Trickを使う  
- Stochastic Value Gradients  
- アルゴリズム  
SVG(∞)  
SVG(1)  
SVG(0)  
- まとめと質問  
行動が離散的だと微分できない場合がある  
従来法との違いは、gradientの計算の仕方  

## Deep Generative Image Models using a ￼Laplacian Pyramid of Adversarial Networks 
論文: http://arxiv.org/pdf/1506.05751v1.pdf 
濱田晃一さん(DeNA) 

- 自己紹介  
理論物理、DeNAの機械学習、TokyoWebMining  
- Generative Adversarial Network (GAN)
生成器と識別器を戦わせて生成精度を向上させる  
SGDで交互に学習  
- Conditional Generative Adversarial Network (CGAN)  
- Laplacian Pyramid of GAN (LAPGAN)  
- Class Conditional LAPGAN  (CCLAPGAN)  
- Visual Turing Test  
人に画像を見せて本物か生成画像か  
40%本物と見間違う  
- Deep Convolutional GAN (DCGAN)  
笑顔の男性-男性+女性=笑顔の女性  
word2vecのようなことができる  
- その他の画像生成  
Deep Visual Analogy Making  

## Hessian-free Optimization for Learning Deep Multidimensional Recurrent Neural Networks
論文: http://arxiv.org/pdf/1509.03475.pdf 
瀬戸山幸大郎さん(早稲田大学) [[スライド](http://www.slideshare.net/hanakusounkomimikuso/hessianfree-optimization-for-learning-deep-multidimensional-recurrent-neural-networks-57262065 "スライド")]

- 自己紹介  
早稲田の学生、研究は音声合成、PFIのバイトは音声認識  
- Agenda  
MDRNN, Hessian-free for MDRNN, CTC  
MDRNNは多次元の学習効率が良い  
CTCと組み合わせるともっと良い  
RNNとの違いは、隠れ層の帰管路が複数  
Hessian-freeは、Hessianを計算しない  
5層以上のMDRNNをHessian-free  
CTCを凸近似することでMDRNNに組み込んで入出力長の違うデータに対応  
手書き文字認識  
- MDRNN  
RNNが多次元になっただけ  
Backward Passのnが増えた  
- LSDM  
- Hierarchical Subsampling Netowrks  
4方向×縦×横  
- Hessian-free for MDRNN  
Generalised Gauss Newton (GGN)  
GGNで表せば、行列×ベクトルは簡単になる  
GGNはある条件下でヘシアンを近似でき、出力層にソフトマックスを用いることで  
$H_L$ は半正定値になるので、$G_{L○N}$ も半正定値になり、結果、L○Nが凸になる。  
- CTC  
HMMと同じでforward backwardを使う。  
最終的に、凸部と非凸部の合成関数になる。  
CTCのパスは複数の経路が考えられるが、ほとんどの場合同じ経路をたどる。  
非凸部は、凸関数に近似できるので、凸な損失関数のGNNを考えられる。  
しかしGNNはコストが大きいので、ヘシアンフリーで計算する。  

## Sparse PCA via Bipartite Matching
論文: http://arxiv.org/pdf/1508.00625.pdf 
加藤公一さん(シルバーエッグテクノロジー) [[スライド](http://www.slideshare.net/hamukazu/sparse-pca-via-bipartite-matching "スライド")]

- 自己紹介  
レコメンドシステム、自然言語  
数学的な論文を選びました。  
- 概要  
スパースな主成分分析  
- Sparse PCA  
- Multi-component Sparse PCA  
- 現状のアルゴリズム  
主成分を見つけたら、元データから割り引いて次の主成分を見つける。  
- 本論文のアルゴリズム  
bipartie matchinを用いた近似アルゴリズム  
PTAS -> Additive PTAS  
- まとめ  
理論上、改善できることを示した。  
実験でも改善できていることを示した。  

## Semi-Supervised Learning with Ladder Networks
論文: http://arxiv.org/pdf/1507.02672.pdf 
松元叡一さん(Preferred Newtorks) [[スライド](http://www.slideshare.net/eiichimatsumoto106/nips2015-ladder-network "スライド")]

- 自己紹介  
ロボット、画像の生成  
- アジェンダ  
半教師あり真相学習の最先端  
Ladder Network  
- 半教師あり学習(semi-supervised learning)  
ラベル無しデータもあればよくなる  
- mnistをやる
100個のラベル付きデータと残りはラベルなしが何万件  
- 半教師あり学習のアイディア  
1. 似ているデータは同じラベル（次元の呪い？）  
2. きれいな中間表示（確率分布）  
3. 分離面をデータから遠ざける（仮ラベルをふる、ノイズを入れる）  
- mnistの精度  

|             | 100 labels | 60000(all) |
|:-----------|------------:|:------------:|
| Feed-forward NN | 25.8% | 1.18% |
| ... | | |
|Virtual adversal training | 2.12% | 0.64% |
| Ladder network (Original) | 1.06% | 0.61% |
| Ladder network (AMLP) | 1.00% | 0.67% |
|Auxiliary deep generative model | 0.96% | - |

- Auxiliary deep denerative model  
なぜこれでうまくいくのか？  
- Virtual Adversarial Training  
実用上とてもよい  
- Ladder network (Original, AMLP)  
Noiseを加えて、Decoderを作る  
中間層もつなぐ、そして中間層にもNoiseを加える  
NoiseはDrop outに似てる？かも  
一種の工芸品みたいなもの（笑）  
- github  
https://github.com/mattya/chainer-semi-supervised  

## Automatic Variational Inference in Stan
論文: http://papers.nips.cc/paper/5758-automatic-variational-inference-in-stan.pdf 
柏野雄太さん(バクフー) [[スライド](http://www.slideshare.net/yutakashino/automatic-variational-inference-in-stan-nips2015yomi20160120 "スライド")]

- 自己紹介  
宇宙物理を研究してました。  
pythonの本とか書いてます。   
- ADVI in Stan  
すごい人たちが書いてます。  
変分ベイズの自動化できるのでは？  
結論からいうと、ADVIを使うと速い  
- 何ができて何ができてないか？  

（このあと家庭の事情で退席したため聴講できず...）  

## End-To-End Memory Networks
論文: http://arxiv.org/abs/1503.08895 
海野裕也さん(Preferrd Infrastructure) [[スライド](http://www.slideshare.net/unnonouno/nip2015endtoend-memory-networks "スライド")]

- (Twitterから内容を想像)  
文書ベクトルと単語ベクトルの内積をとって softmax を文の重要度とする  
記憶用ベクトルと重要度ベクトルで重み付き和を線形変換する  
期待する解とのcross entropyでlossを得る→これをbackward  
Memory Networksを系列文字の予測の言語モデルにも適用できるらしい  
Chainer 実装の説明があったらしい  

## まとめ（感想）

NIPSでは Deep Learning 界隈がにぎやか
手書き文字認識は急速に進化してるっぽい
今後さらに言語モデルへの応用の可能性を感じる
やっぱ Chainer 使ってみたほうがいいかな？