Skip to main content
QUICK REVIEW

[論文レビュー] Sparse evolutionary Deep Learning with over one million artificial neurons on commodity hardware

Shiwei Liu, Decebal Constantin Mocanu|TU/e Research Portal|Jan 26, 2019
Evolutionary Algorithms and Applications参考文献 73被引用数 6
ひとこと要約

この論文は、コンsumer CPUでGPUアクセラレーションなしに100万個以上のニューロンを持つモデルのエンドツーエンド学習を可能にする、真にスパースなSparse Evolutionary Training(SET)の実装を紹介する。スパースデータ構造とCython最適化演算を活用することで、99.9%のスパarsityを達成しながら、サンプル数が少ない高次元のマイクロアレイデータセットにおいて、密なモデルやプルーニング済みモデルを上回る性能を発揮する。

ABSTRACT

Artificial Neural Networks (ANNs) have emerged as hot topics in the research community. Despite the success of ANNs, it is challenging to train and deploy modern ANNs on commodity hardware due to the ever-increasing model size and the unprecedented growth in the data volumes. Particularly for microarray data, the very-high dimensionality and the small number of samples make it difficult for machine learning techniques to handle. Furthermore, specialized hardware such as Graphics Processing Unit (GPU) is expensive. Sparse neural networks are the leading approaches to address these challenges. However, off-the-shelf sparsity inducing techniques either operate from a pre-trained model or enforce the sparse structure via binary masks. The training efficiency of sparse neural networks cannot be obtained practically. In this paper, we introduce a technique allowing us to train truly sparse neural networks with fixed parameter count throughout training. Our experimental results demonstrate that our method can be applied directly to handle high dimensional data, while achieving higher accuracy than the traditional two phases approaches. Moreover, we have been able to create truly sparse MultiLayer Perceptrons (MLPs) models with over one million neurons and to train them on a typical laptop without GPU, this being way beyond what is possible with any state-of-the-art techniques.

研究の動機と目的

  • メモリ制限のあるコンsumerハードウェア上でGPUアクセラレーションなしに、大規模かつスパースなディープニューラルネットワークを学習する課題に対処すること。
  • 二値マスクや事前学習モデルに依存する既存のスパース学習手法の限界を克服し、実用的な学習効率を向上させること。
  • 効率的なスパースデータ構造を用いて、CPU上で直接にエンドツーエンドで学習可能な、極めてスパースで大規模なMLP(100万ニューロン以上)の学習を可能にすること。
  • 次元の呪いのため従来の手法が苦戦する高次元・小サンプルのマイクロアレイデータセットにおいて、優れた性能を示すこと。
  • テーブル形式やグリッドでないデータ(例:遺伝子発現データなど)向けに、スケーラブルでメモリ効率の良い深層ネットワークの学習ソリューションを提供すること。

提案手法

  • SciPyのネイティブスパースデータ構造とCython最適化カーネルを活用し、二値マスクを回避する真のスパースなSparse Evolutionary Training(SET)の実装を提案する。
  • 学習中にパラメータ数とスパarsityを固定するスパース行列演算を設計し、メモリと計算の効率的使用を実現する。
  • 適応的スパース接続性を採用:学習中にフィットネス基準に基づき接続が動的に再構築され、プルーニングと再訓練のサイクルを回避する。
  • スパース重み行列をCompressed Sparse Row(CSR)形式で保存することで、効率的なフォワードおよびバックワードパスを実現したSET-MLPを実装する。
  • 深層学習フレームワークに依存せず、標準ライブラリ(SciPy、Python 3)のみを用いた純粋なPython/CythonパイプラインにスパースSET-MLPを統合する。
  • 特にGLI-85(85サンプルのみ)のようなデータセットで過学習を緩和するため、ドロップアウト正則化を適用する。

実験結果

リサーチクエスチョン

  • RQ1GPUなしのコンsumerラップトップ上で、100万個以上のニューロンを持つ真にスパースでエンドツーエンド学習可能なMLPを効率的に学習できるか?
  • RQ2提案手法のスパースSET実装は、高次元・小サンプルのマイクロアレイデータセットにおいて、精度と効率の面で密モデルやプルーニング済みモデルを上回るか?
  • RQ3極めて高次元のテーブル形式データでラベル付き例が極めて少ない状況において、過学習やデータシフトの問題を効果的に緩和できるか?
  • RQ4スパース実装により、パラメータ数とメモリ使用量をどの程度削減できるか、かつモデル性能を維持または向上できるか?
  • RQ5並列化をCPUコアに拡張した場合、GPUサポートがなくても数千万ニューロン規模にまでスパースSETアプローチがスケーラブルか?

主な発見

  • 提案されたスパースSET-MLPは、2層の隠れ層を有するLeukemiaデータセットで88.12%の精度を達成し、密モデルやプルーニング済みモデルを上回った。
  • CLL-SUB-111データセットでは、2層の隠れ層を持つSET-MLPが81.11%の精度に達したが、1層または3層のモデルは性能を発揮しなかった。
  • 85サンプルしかないGLI-85データセットでは、2層のSET-MLPは初期に100%の精度に達したが、200エポック後に約80%に低下した(過学習の兆候)。
  • ドロップアウト率0.5を適用することで性能が安定化し、劣化を防ぎ、過学習への耐性が高いことが確認された。
  • 1層のSET-MLPでは100%の精度に到達できず、高次元入力に対して十分なモデル容量が必要であることが示された。
  • 大規模なMLPにおいて、約99.9%のスパarsityを達成しながら、4つのマイクロアレイデータセットで最先端の性能を維持または上回った。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。