全3618文字
PR
この記事は日経Robotics 有料購読者向けの過去記事ですが
日経Robotics デジタル版(電子版)』のサービス開始を記念して、特別に誰でも閲覧できるようにしています。
本記事はロボットとAI技術の専門誌『日経Robotics』のデジタル版です
本記事はロボットとAI技術の専門誌『日経Robotics』のデジタル版です

 現在のディープラーニングで使われるモデルは過剰パラメータ(Over Parameterized)表現、つまり訓練データ数よりもずっと多くのパラメータ数を持つモデルが使われている。例えば100万枚からなるImageNetを学習データに使い、数億のパラメータからなるモデルを使うことは一般的である。過剰パラメータ表現は効率が悪いだけでなく、従来の機械学習の理論からすれば、過学習しやすいと思われていた。

著者の岡野原大輔氏
著者の岡野原大輔氏

 一般に$n$個の方程式が与えられた時、$n$個の未知数を決定すれば良い。同様に$n$個の訓練データが与えられた時、$n$個のパラメータを持つモデルを使えば訓練データを完全に予測できるようなモデルを作ることができる。そのため、パラメータ数が訓練データ数よりはるかに多いモデルは冗長なようにみえる。

 一方で、最近の実験結果や機械学習の新べき乗則(2021年3月号の本欄で紹介)が示すように、教師情報が豊富である(自己回帰問題など)などいくつかの条件を満たせば、パラメータ数が多いモデルであるほど学習効率が高く、汎化性能が高いことが分かっている。これはパラメータ数が多ければ多いほど、初期値から汎化性能が高いフラットな解に到達しやすいためと考えられている。

 機械学習モデルの重要な性能要件として、汎化性能のほかに頑健性がある。これは入力に多少摂動を加えたとしても予測結果が大きく変わらないというものである。しかし、特に工夫をせず学習したモデルは、入力にほんのわずかな、狙って設計された摂動(敵対的摂動)を加えただけで予測結果が大きく変わってしまう。例えば、パンダの画像に対し、人には気づかれないようなノイズを加えて、任意の予測結果に変えることができる。

 このような敵対的摂動に対する頑健性は、機械学習のモデルを現実世界にデプロイする際に必要不可欠である。例えば、自動運転車やロボットの画像認識に対する敵対的摂動を使った攻撃などが既に多く実証されている。

 この頑健性においても過剰パラメータ表現が重要であることがわかってきた。過剰パラメータ表現を使うことは頑健なモデルを作るための必要条件であり、さらに現在のモデルはそこで示唆される必要な数に比べてまだかなり少ないことが示唆された1)。この研究はNeurIPS 2021のOutstanding Paper Award(Best Paper相当)の1つに選ばれた。今回はこの結果について紹介する。

関数のリプシッツ性

 はじめに、必要な知識としてリプシッツ性(Lipschitzness)とIsoperimetryについて説明する。リプシッツ性は関数の滑らかさを示す。関数$f$が定数$L \in R^{+}$、任意の入力$\mathbf{x}, \mathbf{y}$に対し常に

\[|f(\mathbf{x}) - f(\mathbf{y})| \leq L||\mathbf{x} - \mathbf{y}||\]

が成り立つ時、$f$は$L$-リプシッツ性を持つとよび、$L$をリプシッツ定数とよぶ。これは入力が$u$離れたとしても関数の出力が高々$Lu$しか変わらないことを意味する。

 機械学習モデル$f$が訓練データに対し完全な予測をし、かつ(少なくとも)その訓練データの周辺でも訓練データと同じ結果を出力するためには、関数$f$はリプシッツ性を持ち、そのリプシッツ定数は小さいことが必要である。

Isoperimetry

 また、データ分布$\mu$がIsoperimetryを満たすとは、任意の$L$-リプシッツな有界関数$f$に対し、関数の出力が関数の期待値と$t$より大きく異なる確率がガウシアンと同じかそれよりも急速に小さくなることをいう。例えばガウシアンや単位球面上の一様分布、また多様体仮説として知られる低次元のデータが高次元データに埋め込まれている場合はIsoperimetryを満たす。

頑健性とパラメータ数の関係

 これを踏まえた上で、2021年6月に米Microsoft ResearchのSébastien Bubeck氏らは次を証明した1)。なお、数学的に高度な知識が必要となる部分を省略しているので、正確な結果を知りたい場合は文献1)を確認してほしい。

 $p$個のパラメータからなる関数$f$を使ってi.i.d.(独立同分布)である$n$個の学習データ$(x_i,y_i)_{i=1}^n$を多少のノイズを許してフィッティングする。入力は$d$次元ベクトルであり、出力は$y_i \in \{+1, -1\}$とする。また、入力分布はIsoperimetryを満たすとする。この時、関数$f$のリプシッツ定数$\text{Lip}(f)$は

\[\text{Lip}(f) \geq \sqrt{nd/p}\]

となる。

 この結果が示すのはリプシッツ定数を小さくする、特に定数にするためにはパラメータ数$p$を$p \sim nd$とする必要があることである。そして、モデルサイズと、そのモデルの頑健性の間にはトレードオフの関係があるということである。小さいモデルは頑健にすることはできず、大きなモデルの方が頑健にできる。小さなモデルではどのように工夫しても(リプシッツ性という観点で)頑健なモデルを作ることはできない。

簡単な例

 ここでは単純な問題設定において頑健なモデルを$nd$個のパラメータを使って構成する例を説明する。

 入力分布が、単位球面上の一様分布と考える。この場合、異なるサンプル$\mathbf{x}_i,\mathbf{x}_j$は高い確率で$||\mathbf{x}_i - \mathbf{x}_j|| \geq 1$を満たす。この時、$g(0)=1$、$z \geq 1$の時$g(z)=1$となるような滑らかな関数$g$を用意し、この関数を動径基底関数として使った

\[f(\mathbf{x}) = \sum_{i=1}^n g(||\mathbf{x} - \mathbf{x}_i||) y_i\]

という関数は訓練データに完全にフィットし、かつリプシッツ定数が$\mathcal{O}(1)$となるような関数である。このパラメータ数は$p = n(d + 1)$($n$個の$x_i$と$y_i$)であり、先程の下限と一致する。

現在のモデルはまだ小さい

 この理論が実際の結果にどのぐらい一致するのかをみてみる1)。MNISTデータセットは$n = 6 \times 10^4$枚の画像からなり、次元数は$28^2=784$である。このデータセットに対して、様々なサイズのニューラルネットワークを使って学習させると、パラメータ数が$10^5 \sim 10^6$のあたりでモデルの頑健性が大きく変わる。このことから、MNISTの実効次元数は$15 \sim 150$($n/p$)程度ではないかと予想される。

 また、ImageNetデータセットの場合、$1.4 \times 10^7$枚の画像からなり、各画像の次元数は大体$2 \times 10^5$($256 \times 256$)となる。画像の場合の有効次元数は実際の次元数の1/10、1/100程度と推測されることから、頑健なモデルを実現するにはパラメータ数を$10^{10} \sim 10^{11}$にすることが必要と予想される。これは現在使われているモデルサイズ$10^8 \sim 10^9$個とは100倍近くの差がある。

 現在、ニューラルネットワークは敵対的攻撃に弱いことが報告されており、頑健なモデルにするために様々な研究が進められているが、大きなデータセットにおいて頑健なモデルがまだ存在していないのは、単に現在のモデルサイズが小さすぎるためという可能性がある。

大きなモデルとどのように付き合うか

本記事はロボットとAI技術の専門誌『日経Robotics』のデジタル版です
本記事はロボットとAI技術の専門誌『日経Robotics』のデジタル版です

 今回の結果はこれまでの統計や機械学習で考えられていたサンプル数とパラメータ数は同程度必要という常識を破る結果である。実用的な観点からいえばパラメータ数は少ない方がよいが、必要条件となれば、ハードウエアやアルゴリズムで大きなモデルをサポートできるようにするか、もしくは表現学習などを工夫し実効次元($d$)を下げ、小さなモデルでも頑健性を持てるようにする必要がある。

1)S. Bubeck et al., “A Universal Law of Robustness via Isoperimetry,” NeurIPS 2021, https://arxiv.org/abs/ 2105.12806
岡野原 大輔(おかのはら・だいすけ)
Preferred Networks 代表取締役 最高研究責任者
岡野原 大輔(おかのはら・だいすけ) 2006年にPreferred Infrastructureを共同創業。2010年、東京大学大学院博士課程修了。博士(情報理工学)。未踏ソフト創造事業スーパークリエータ認定。東京大学総長賞。