ランダムに接続されたニューラルネットワークが手動設計を上回る?
「え?ランダムに作られたものが人が作ったものよりも性能が良い?」最近多く言及されていることです。
FacebookAIが最近出した論文では、ランダムに接続されたネットワークのパフォーマンスは、手動で設計されたネットワーク(ResNet、ShuffleNetなど)よりも優れていることがわかりました。
論文 :Exploring Randomly Wired Neural Networks for Image Recognition
自動作成の背景
AutoMLをご存知でしょうか?
AutoMLは、Googleが出している「機械学習の知識が全くなくても、短時間かつ簡単に画像認識の機械学習モデルを構築できる」サービスです。これまでGoogle は、画像解析の「AutoML Vision」、テキスト分析/分類の「AutoML Natural Language」、翻訳の「AutoML Translation」などを提供してきました。
これらの技術の背景にあるのがNeural Architecture Search(以下NAS)です。ひとことで言えば、NASはニューラルネットワークの構造を自動で最適化することを目的とする手法です。
従来のニューラルネットワークでは、事前に人間がネットワークの構造(VGG、Resnet、GoogleNet等々)を設計して、ネットワークの重みを最適化しますが、NASはネットワークの構造自体を最適化します(ニューラルネットワークが自動的に構造自体やパラメータを最適化したうえで、重みを最適化します)。NASの出現で、より複雑な配線と操作の種類でモデルを最適化できるようになりました。
しかし、NASではネットワークを生成する生成器自体は手作業で設計されなければならず、このようなマニュアルで設計したネットワークは探索空間が限られていました。現在の方法では “AutoML”に到達できず、依然として多くの人手が必要です。
フェイスブックAIが出した新しい論文では、この制限を緩和する新しいネットワーク生成装置を設計しています。ランダムに配線されたニューラルネットワークを介してより多様な接続パターンのセットを探索するというものです。実験においては画像認識タスクにおいてResNetやShuffleNetのような人間がデザインしたネットワークよりも優れていることがわかりました。
つまり、まとめると、NASの登場によってネットワーク自体を自動的に最適化できるようになったが(以前は人間がデザインしていた)、ネットワーク生成器自体は人間が設計していた。このネットワーク生成器自体を人間のバイアスが入り込まないように、できるだけランダムに設計しよう。というのが今回の趣旨です。
ランダムなニューラルネットワーク
論文では、ネットワーク生成器自体をどのように設計するかがとても重要だと考えています。生成器の設計において、人間の知識に基いた事前情報が内在しないように、ランダムなグラフを通じてネットワーク生成器がネットワークを作り出すランダムなニューラルネットワーク(SNG)を提案しています。人間のバイアスができるだけかからないようにして、ネットワーク構造の自動構築においてより自由な構造を探索するというものです。
ネットワーク生成器を設計する手順としては、計算可能なニューラルネットワークにマッピングするための”グラフ”をランダムに生成することから始めます。研究者の選好による生成器への影響を少なくするために、Erdos−Renyi(ER )Barabasi−Albert(BA)、Watts−Strogatz(WS)という3つの典型的なグラフモデルを使い、方法を制限せずノードとノードを接続する一連のノードとエッジを生成します(即ちランダム)。ランダムグラフが得られると、これらのグラフを有向非巡回グラフ(情報をモデル化するのに使われる)に変換し、ノードからその機能役割(同じようなボリュームの積み重ね)が同じようなニューラルネットワークへマッピングされます。
図1 ジェネレータによってサンプリングされたランダムパターン表現
結果・まとめ
これらのランダムな生成器のいくつかの変種がImageNetに対する競争の激しいネットワークを生み出しています。WSモデルの生成器を使用して生成されたネットワークは、完全に手で設計されたネットワークまたは様々なニューラルアーキテクチャ検索方法を通じて見出されたネットワークよりも優れていました(または同等)。
画像分類において顕著な性能を発揮していますが、また、画像セグメンテーション、オブジェクト検出、および深度推定などの分類関連の視覚タスクなどにおいても有用かもしれません。
また、同一の生成器が生成する異なるランダムネットワークの精度の分散は低く、異なる生成器が生成するネットワークの精度の差は大きいことも観察されました。これらの観察結果は、ネットワーク生成器の設計が重要であることを示しています。
今回のような使い方以外にも、特定のタスクのために鋭くランダムなグラフモデルを設計するのも面白いかもしれません。
しかし、著者らは、これらのランダムに接続されたネットワークは、”完全にランダムではない”と述べています。実際、特定のノードに接続するかどうかの確率を制御するための特定の規則や分布の選択など、多くの強力な事前条件が暗黙的に生成器に組みこまれています。
この記事に関するカテゴリー