Deep Mutual Learning (arxiv)
[1706.00384] Deep Mutual Learning
手法
- distillationの進化系
- 2つのネットワークを同時に学習させる
- 通常通りのsupervised learning lossに加え、mimicry lossを使う
- mimicry lossとは2つのネットワークの出力を似せたい(KLダイバージェンス)
実験結果
- distillationよりも精度が上がる
- 明確にteacher-studentではなく同じネットワークを2つ用いた場合でも精度が上がる
- 同時に学習させるネットワークの数を2から増やしてみるともっと精度が上がる
- 直感としては、教師にアンサンブルを使うと良くなる気がするが、実験してみるとそれよりも複数のネットワーク同士のmimic lossを使う方が良くなるらしい
ただし、小規模なデータでしか実験されていない。著者らも考察しているが、どちらかというとunderfitの場合の話ではなくoverfitの場合の話であるようだ。普通に学習させてもtrain accuracyが100%に行くようなデータを用いているため、regularizationとして働いているっぽい気がする。そうなると、underfitな小規模ニューラルネットワークのoptimization difficultyを改善しモデルのキャパシティの限界を上げるというようなdistillationの話とはちょっと違う気がする。