NeurIPS 2018のTest of Time AwardはThe Trade-Offs of Large Scale Learning

  • 2018.12.07
  • AI
NeurIPS 2018のTest of Time AwardはThe Trade-Offs of Large Scale Learning

1.NeurIPS 2018のTest of Time AwardはThe Trade-Offs of Large Scale Learningまとめ

・NeurlIPSのTest of Time Awardは現在に大きな影響を及ぼした過去の論文を表彰
・NeurlIPS 2018ではデータ量と計算量の関係性について研究した論文が受賞
・この論文はディープラーニングの興隆を支える確率的勾配降下法の有用性を示した

2.確率的勾配降下法の有用性の照明

以下、ai.googleblog.comより「The NeurIPS 2018 Test of Time Award: The Trade-Offs of Large Scale Learning」の意訳です。元記事は2018年12月4日、Anna Ukhanovaさんによる投稿です。

機械学習の進歩は急速であり、2年以上前のアイデアやアルゴリズムはすでに時代遅れであるか、何かもっと優れたものによって代替されているように感じることがあります。しかし、古いアイデアは、科学コミュニティの大半がそれを意識しなくなったとしても、時には関連性があります。これはコンテキスト(状況や場面)の問題です。特定のコンテキストでは終わってしまったように思えるアイデアが、別のコンテキストでは大成功を収める場合があります。ディープラーニングも、巨大なデータと沢山のコンピューティングパワーを利用できるようになったために改めて脚光を浴び、直近の研究の方向性に大きな影響を与えています。

Léon Bottou(発表当時はNEC laboratories of America所属、現在ではFacebook AI Research所属)とOlivier Bousquet(Google AI、Zürich所属)のNIPS 2007論文「The Large-Scale Learning of Large Scale Learning」はこの現象の良い例です。NeurIPS 2018 Test of Time Awardを受賞したこの独創的な研究は、機械学習のデータ量と計算機量の相互作用についての研究でした。

大量のデータを利用可能だけれども利用できる計算機パワーに制限がある時、元データの一部を使って長時間計算を実行するのではなく、元データを小分けして複数の少量データに対して短時間計算を実行する方が良い結果が得られると言う事です。この論文は、現在の全てのディープラーニングアプリケーションで使用されている確率的勾配降下法の有用性を実証しました。

最適化と規模の問題
多くの機械学習アルゴリズムは、2つの主要な要素の組み合わせと考えることができます。

1)モデルとは、データを表現するために使用可能な関数のセットです。
2)その関数セット内で最適な関数を見つける方法を指定するのが最適化アルゴリズムです。

90年代に機械学習で使用されていたデータセットは、現在使用されているデータセットよりもずっと小さく、アーティフィカルニューラルネットワークはすでにいくつかの成功を収めていましたが、訓練が難しい手法だと考えられていました。

2000年代初頭、カーネルマシン(特にサポートベクターマシン)の興隆により、ニューラルネットワークは流行遅れになりました。 同時に、最適化アルゴリズムもニューラルネットワークを訓練するために使用されていた最適化アルゴリズム(確率的勾配降下法:stochastic gradient descent)から、カーネルマシンに使用されるアルゴリズム(2次計画法)に注目が移りました。1つの重要な違いは、前者の場合、トレーニングサンプルを1つずつ使用してステップを実行し(これは「確率的」と呼ばれます)、後者の場合は全てのトレーニングサンプルを何度も繰り返し使用することです(「バッチ」と呼ばれます)。

データセットのサイズが増加するにつれて、大規模データを処理する最適化アルゴリズムの効率がボトルネックになっていきました。例えば、2次計画法の場合、実行時間はサンプルの数が増えれば二次関数的に増加します。つまり、トレーニングデータの量が2倍になると、トレーニングの時間が少なくとも4倍以上長くなります。したがって、これらのアルゴリズムをより大きなデータセットで実行しようとする試みには、多くの努力が払われました。

ニューラルネットワークを訓練した経験のある人は確率的勾配降下法が大規模なデータセットに比較的容易に適用できることを知っていましたが、残念ながらその収束は非常に遅いです。(バッチアルゴリズムに匹敵する精度を得るには多くの反復、つまり長時間の計算が必要です)。そのため、確率的勾配降下法が大規模データ問題の解決策であることに気付いている人はいませんでした。

確率的勾配降下法によるスケールの改善
機械学習のコンテキストでは、最適化のために必要な反復計算の回数は実際には心配する必要がありません。機械学習はトレーニングデータに本質的に「オーバーフィット(過学習)」するので、モデルを完全に最後まで最適化する必要はないのです。それだったら、モデルの最適化に費やす計算を減らし、代わりにより多くのデータを処理する事に時間を費やす方がベターではないですか?

LéonとOlivierは、このアイディアを正式に研究しました。大量のデータが利用可能で計算機パワーに制限がある状況を仮定し、計算可能な量のデータに対して沢山の計算を実行するのではなく、データを小分けしてにそれぞれのデータに最小限の計算(にもかかわらず、ほとんどのデータを処理します)を実行する方が良い事を示したのです。

これにより、さまざまな最適化アルゴリズムの中で、確率的勾配降下法が最良であることも示されました。これは多くの実験で確認され、現在機械学習で幅広く使用されているオンライン最適化アルゴリズムに新たな関心が寄せられました。

まだ残る謎
翌年以降、確率的勾配降下法の多くの変形が、凸の場合と非凸の場合の両方で(特にディープラーニングに関連して)開発されました。最も普及したものは、いわゆる「ミニバッチSGD」で、少数(10-100)のサンプルデータを用いて反復処理を行う等、データを適切にスケーリングするための巧妙なトリックをいくつか行います。ほとんどの機械学習ライブラリは、このようなアルゴリズムをデフォルトで実装しており、間違いなく現在のディープラーニングの興隆を支える柱の1つです。

上記の分析はこのアルゴリズムの特性を理解するための確かな基礎を提供しましたが、ディープラーニングが示す驚異的な、時には驚くべき能力は科学界により多くの疑問を引き起しています。特に、ディープネットワークの一般化能力におけるこのアルゴリズムの役割は、繰り返し実証されているにも関わらず、依然として十分に解明されていません。これは、現在使用されているアルゴリズムの理解を深め、将来的にはさらに効率的なアルゴリズムを開発することにつながる多くの魅力的な謎がまだ探究されていないことを意味します。

10年前にLéonとOlivierが協力して提案した考え方は、現在の日常生活に有益な機械学習システムの主役であるアルゴリズムの開発に重要な助けとなりました。私達は、この賞にふさわしい両著者に心からお祝いを申し上げます。

3.NeurIPS 2018のTest of Time AwardはThe Trade-Offs of Large Scale Learning関連リンク

1)ai.googleblog.com
The NeurIPS 2018 Test of Time Award: The Trade-Offs of Large Scale Learning

2)leon.bottou.org
The Tradeoffs of Large Scale Learning(PDF)