大器无成

大器はその大きさゆえに、決して完成することはない

世界を見るための暗黙のルール

Qiitaのこの投稿から、Invariant Information Clustering (IIC)なる方法論を知った。画像クラスター分析において「教師データ無し」でディープニューラルネットワーククラスターを学ばせる際、サンプルデータに起因するバイアスが訓練によって拡大してしまうことが問題になる。たとえば特定のクラスターだけがすごく大きくなったりしてしまうことがあるらしい。そこでこの論文では、学習則として「data augmentationによって生成された画像群間の相互情報量が最大になる」という原理を採ることで、より均一で安定な教師無し学習の実現に成功した、らしい(少なくとも彼らはそう言っている)。

Data augmentationとは、訓練データをある意味で「水増し」する方法論である。画像認識の場合だと、素材となる画像を回転させたり、拡大縮小させたり、ノイズを入れたりして、さまざまな派生画像を作ることに対応する。これは言い換えると「ここで見ている概念は、画像の回転やスケール、ある種のノイズに対して普遍なものである」というルールを暗黙のうちに導入している、ということである。ただ単にデータをかき集めてくるだけでは「本当のデータ(無限に近くある)の分布」の空間のほんの一部を再現することしかできないけれど、data augmentationを用いて訓練データに「奥行き」を加えることで、「本当のデータの分布」に少し近づけることができると考えられている。「本当のデータの分布」の予測の安定性が上がる、ということでディープラーニングでは重宝されている。

今回のIICなる方法論ではこの暗黙のルールを明示的に学習則に取り入れている、という点で興味深い。

変換によって変化しない概念の構造

個人的にはこの方法論は、構造主義で言うところの「変換」を用いた概念の構造をディープラーニングに明示的に取り入れているのだと思う。「何をもって『同じもの』とするか」というルールは無限にありうるのだけれど、それを規定するのがここでの「暗黙のルール」である。手書き文字認識なんかだと「回転やスケーリングで文字や数字の意味が変わらない」というのは自明に感じるけれど、人間の通常の物体認識では、たとえばものの角度によって見え方は大きく変わる。福笑いで眉毛だけ上下逆さまになっていることで、優しい顔のお多福さんが歌舞伎顔に見えてしまうのがその例である。そう言う意味で、「この変換によってものの意味は変わらない」というのは、人間が勝手に世界に対して抱いているバイアスに過ぎないとも言える。逆に言えばこのバイアス自体が、「それがどんな意味をもつか」ということを規定している、とも考えられる。

ひるがえって人間の脳の成長なんかを考えて見ると、明示的な答えが与えられるような機会は学校くらいでしかない(あとは金額の計算とか)。いちおう「教師信号」となる存在として報酬・罰に対応した学習則があるけれど、たぶん物体認識なんかはそういうのとは関係なく発達しているように思う。つまりおそらく人間はほとんどの場合、何らかの情報をベースにして「教師無し学習」をしていると言える。

上記の繰り返しになるけれど、教師無し学習では「何と何を同じと見るか」という視点がとても重要になる。通常のクラスター分析では、何らかの形でサンプルとサンプルとの間の「距離」を定義して、「距離が十分に近い=同じ」という捉え方でグループをつくっていくことが多い。ただその場合、最初に出てきたように安定した(あるいは期待した)結果のクラスタリングができないことも多い。そこで出てくるのがdata augmentationであり、IICである。「この方法によって変換されたものはもとのものと同じであるべき」というルールがあることによって、安定したクラスタリングが実現できる(少なくとも、著者の主張では)。

人間の発達では、何がdata augmentationにあたるか?たとえば視覚的な話に限定すると、「いろいろな方向から見てみる」「ひとつのものを見続ける」というものがあると思う(じっさい赤ちゃんはそういうことをよくしていると思う)。「自分が今見ている『それ』は、ずっと『それ』であり続ける」という暗黙的な感覚がもしあるのだとすれば、これらは全てdata augmentationの方法に当てはまる。こうした符合をもっと見つけていって、世界に対する人間の暗黙的な感覚をdata augmentation的な言葉に落とし込んでいくことで、感覚認知のトピックを超えて「神経科学的に『概念』とは何か?どのように作られるのか?」という問いに対するアプローチを見つけられるかもしれない。

でも具体的なメカニズムは?

ディープラーニング的な感覚を神経科学研究に応用する際にもうひとつ重要なのは、実際にその学習則がどのように実現されているのかということになる。

たとえば1990年代くらいだと誤差逆伝播法とかは知られていたけれど、最初の誤差を出すための多くの学習則は「全てのニューロン出力が既知で、それを何らかの形で統合する」ということを前提にしたりしていて、当時の風潮を知る神経科学者によっては「じゃあその『全ての出力』はどこで誰が知っているの?」というような疑問から「こういう考え方は現実の神経系にはそぐわない」と考える人もいた(学部時代の師匠もそうだった)。ただ最近では、(少なくとも大脳の中では)「ほとんどの領野どうしはある程度の情報疎通がある」「大まかな脳の状態は、どの領野にもある程度共有されている」という風潮になりつつあるわけで、「グローバルな情報をもとに個々のニューロンが判断する」みたいなこともそこまで突飛ではなくなってきている気がする。

ただそれでも、「相互情報量の最大化」なる概念にはまだちょっと遠い。単一ニューロン的な視点から:

といった問いに対する仮説を用意する必要がある。まあ仮説が立って、それが示されればあとは一本道という感じはしますが。なので、そういう意味で上記の論文はとても好奇心を刺激された。何かわかるといいよね。