Deep Neural Networkの共同学習
通常の教師あり学習は,ネットワークの出力と正解ラベルが一致するように,ある1つのネットワークを学習させます.これは,人間の学習に例えると,学習者(生徒)が教科書や参考書を使って練習問題を解いて学習するようなものです.一方で,私たちは一人で学習するだけではなく,先生から教えてもらったり,生徒同士で教え合いながら学習を行います.このような学習方法は,ネットワークの学習においても有効です.先生役のネットワーク(教師ネットワーク)や複数の生徒役のネットワーク(生徒ネットワーク)を用いて,ネットワーク間で知識を転移させる(ネットワーク間で教え合う)ことで,通常の教師あり学習よりも精度が向上することが知られています.我々は,このネットワークの共同学習において,従来手法よりも多様性の高い学習方法を表現可能な枠組みを考え,その枠組みの中で最適な学習方法を探索する研究に取り組んでいます.
ネットワークの共同学習の進展
ネットワークの共同学習は,ネットワークの圧縮(パラメータ数の削減)を目的として提案されたKnowledge Distillation(知識蒸留)[Hinton+, NIPS-W’14]の登場以降,様々な手法が提案されています.これらの手法は,ネットワークが持つ知識に着目した研究と,ネットワークの組み合わせ方に着目した研究に大別できます.Knowledge Distillation [Hinton+, NIPS-W’14]では,クラス分類のためのネットワークの知識として,ネットワークが出力した確率分布の使用を提案しています.ネットワークが出力した確率分布には,不正解クラスの確率値が含まれており,この値はネットワークが学習で捉えた正解クラスとその他のクラスの相関性を示しています.そのため,ネットワークが出力した確率分布を擬似的な正解ラベルとして生徒ネットワークの学習を行うことで,別のネットワークが学習で捉えた知識の転移が可能となります.このように知識に着目した研究では,ネットワークが学習で獲得した知識の表現方法と知識の転移方法について研究が行われています.ネットワークの組み合わせ方に着目した研究では,教師ネットワークから生徒ネットワークへの知識転移,生徒ネットワークから別の生徒ネットワークへの知識転移といったように,共同学習の関係を築くネットワークの組み合わせ方について,研究が行われています.また,生徒役,教師役の関係をデータセットに拡張することで,データセットの圧縮を行うDataset Distillation [Wang+, arXiv’18]も提案されています.
ネットワークの共同学習における知識転移グラフの自動最適化
従来の共同学習では,教師ネットワークから生徒ネットワークへの知識転移,生徒ネットワークから別の生徒ネットワークへの知識転移といったように,人が共同学習の関係を設計しており,様々な共同学習が提案されています.そこで本研究では,従来手法を含む様々な共同学習を統一的に表現できる知識転移グラフを設計し,ハイパーパラメータ探索によって知識転移グラフのグラフ構造を探索することで,人が設計するよりも効果的な学習方法を自動設計します.知識転移グラフでは,ネットワークをノード,損失計算をエッジ,知識の転移方向をエッジの方向で表現します.エッジで表現した損失計算では,損失値に対して重み付けを行うゲートを導入し,ゲートの種類によってエッジの接続や切断,動的な接続を表現します.そして,ある1つのネットワークの精度が最大化するように,各エッジで使用するゲートについてハイパーパラメータ探索することで,グラフ構造の探索を行います.CIFAR-100を用いて知識転移グラフの構造を探索した結果,従来手法よりも高精度になることを確認し,探索により得られたグラフ構造から新たな知見を発見しました.
知識転移グラフの探索によって効果的な共同学習が獲得できましたが,グラフ構造の探索空間(グラフ構造のバリエーション)が膨大であることから,必ずしも最適なグラフ構造が得られたとは限りません.そこで,探索で評価したグラフ構造を分析し,得られた傾向に基づいて探索空間を絞り込み,十分に小さくなった探索空間の全探索を行いました.探索空間の絞り込みでは,分析で得られた傾向に基づいて全体の0.3%まで絞り込みました.この絞り込んだ探索空間を全探索した結果,元々の探索空間をランダムに探索した場合よりも高精度になることを確認しました.
アンサンブル学習のための共同学習
深層学習におけるアンサンブル学習は,異なる初期値で学習した複数のネットワークを使用し,同一データに対する各ネットワークの確率分布の平均を用いて推論を行います.本研究では,各ネットワークの知識とアンサンブル学習による精度改善の関係を分析し,アンサンブル学習のための共同学習を設計します.分析では,ネットワーク間における知識の差が大きいほど,アンサンブル学習による改善効果が高くなることを確認しました.ネットワーク間の知識に大きな差を持たせるためには,ネットワーク間で確率分布や注目領域(アテンションマップ)を離すように学習することや,各ネットワークが異なる損失設計で学習することが考えられます.しかし,これらの適切な学習方法を人手で設計することは,学習方法のバリエーション数が膨大なことから困難です.そこで,知識転移グラフにアテンションマップを用いた知識転移,アンサンブル学習を行う機構を導入し,グラフ構造のハイパーパラメータ探索によって,アンサンブル学習のための共同学習を自動設計します.StanfordDogs(120種類の犬種分類)を用いて知識転移グラフの構造を探索した結果,各ネットワークが異なる注目領域を獲得し,従来手法よりも高精度になることを確認しました.また,詳細画像識別のデータセット(StanfordDogs)で探索したグラフ構造は,詳細画像識別のデータセット(StanfordCars, CUB-200-2011)でのみ高い精度を達成することを確認し,探索によって問題設定に応じた学習方法を獲得したことを確認しました.
半教師あり学習の共同学習
半教師あり学習は,ラベルありデータとラベルなしデータの両方を用いた学習方法です.半教師あり学習の代表的な方法に一致性正則化と擬似ラベリングがあります.これらの手法は,独立して発展してきましたが,一致性正則化と擬似ラベリングを組み合わせたFixMatchの登場以降,FixMatchに基づいた手法が数多く提案されています.しかし,FixMatchにおける一致性正則化と擬似ラベリングの組み合わせ方は人が設計しており,必ずしも最適な組み合わせ方とは限りません.そこで本研究では,一致性正則化,擬似ラベリング,FixMatchを重要な要素に分解して知識転移グラフに落とし込み,グラフ構造のハイパーパラメータ探索によって,人が設計するよりも効果的な半教師あり学習を自動設計します.また,知識転移グラフに落とし込むことで,従来の半教師あり学習を共同学習へ容易に拡張可能となります.CIFAR-100を用いて知識転移グラフの構造を探索した結果,従来手法よりも高精度になることを確認し,探索により得られたグラフ構造から新たな知見を発見しました.また,得られた知見に基づいて探索により得られたグラフ構造を人手で再設計することで,精度が改善することを確認しました.