検索
ニュース

ディープラーニングの学習で「世界最高速度」実現1カ月かかる処理を1日で

富士通研究所は2016年8月9日、スーパーコンピュータのソフトウェア並列化技術を応用し、複数のGPUを用いてディープラーニングの学習速度を高速化するソフトウェア技術を開発したと発表した。

Share
Tweet
LINE
Hatena

「世界最高速度を達成」

 富士通研究所は2016年8月9日、スーパーコンピュータのソフトウェア並列化技術を応用し、複数のGPUを用いてディープラーニングの学習速度を高速化するソフトウェア技術を開発したと発表した。同技術をオープンソフトウェアの「Caffe」に適用し、画像認識用多層ニューラルネットの1つである「AlexNet」を用いて評価したところ、GPU1台の学習速度に対して16台で14.7倍、64台では27倍を実現。同技術適用前と比べて、GPU16台で46%、64台で71%の学習速度の向上を実現している。

 これにより、コンピュータ1台では約1カ月かかる学習処理を、GPUを64台並列動作させることで、1日程度で処理することが可能になったという。2016年8月5日時点での、富士通研究所による調べでは、「世界最高速度を達成した」としている。

2つの開発技術を適用

 ディープラーニングの高速化手法は従来、GPUを搭載したコンピュータをネットワークで結合した並列化では、10数台を超えてしまうとデータ共有時間が増加するため、次第に並列化の効果が得られにくくなることが課題だった。

 富士通研究所は今回、2つの技術を開発した。1つ目は、データ共有のスケジューリング技術だ。連続的に続く複数の演算で、次の学習処理の開始に必要となるデータが先に、それぞれのコンピュータで共有されるように転送の優先順序を自動的に制御する。

 従来技術では、次の学習処理の初めに必要となる1層のデータ共有処理が最後に行われるため、データ共有処理が最後に行われるため、遅延が長くなってしまう。今回の開発技術では、2層目のデータ共有処理途中に1層目のデータ共有処理を行うことで、次の学習処理の開始までの待ち時間を短縮できたとする。


データ共有のスケジューリング技術 (クリックで拡大) 出典:富士通研究所

 2つ目は、データサイズに応じた演算最適化処理技術だ。元となるデータ量が少ないときは、各コンピュータでデータを共有して同じ演算を実行し、結果を転送する時間を削減する。データ量が多いときは処理を分割し、他のコンピュータと算出した結果を共有して、後の演算で利用する。データの量に応じて最適な演算方法を行うように自動で振り分けることによって、全体の演算時間を最小にしている。


共有データサイズによる処理の違い (クリックで拡大) 出典:富士通研究所

富士通のAI技術として実用化へ

 富士通研究所では今後、今回開発した技術を富士通のAI技術「Human Centric AI Zinrai(ジンライ)」の1つとして、2016年度中の実用化を目指すとした。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る