大規模なニューラルネットワークを大規模な学習データにより結合荷重などのパラメータを最適化して目的となる機能を実現します。大量のデータを用いが学習には時間がかかるため、複数のCPU(中央演算装置)、GPGPU(グラフィック用演算装置による汎用演算)やTPU(グーグルの開発したテンソル演算装置)などを利用してニューラルネットワーク内部の演算を並列化して高速化することがよく行われます。ニューラルネットワークの学習における高速化を達成するため、GPUなどを搭載した複数の計算機ノードを高速の通信回線で結合したスーパーコンピュータにおいて、学習アルゴリズムの性質を利用した分散型の学習が研究され、応用が進んでいます。分散学習における課題として、モデルのパラメータを修正するまとまりとなる「ミニバッチ」のデータ数と計算機ノード間の通信・演算速度の向上が挙げられます。NetworkはImageNetデータセット(1,400万枚を超える画像に物体の名称のラベル(詳細には2万種類以上)が割り当てられている)をResNet-50(画像を1000クラスに分類するニューラルネットワークに学習させて、15分で学習を完了する成果を発表していました。ための標準的な組み合わせとなっており、2018年7月、中国深圳に本拠を置くテンセント社のチームも6.6分という記録を達成していました。(産総研)の人工知能向けスーパーコンピュータであるABCI(AI橋渡しクラウド)において、PFNと同じネットワークと学習データセットを利用して、224秒(3分44秒)で学習を完了させ、従来と遜色のない認識精度となる結果を公表しました。解決方法ニューラルネットワークを分散的に学習する場合、一枚の画像データに対する正しい出力を得るための結合荷重の修正量は各計算機ノード独立に計算することができ、この総和を取ることによってミニバッチ一回分の結合荷重の修正量とすることができます。このため並列化のために都合が良いものの、このミニバッチのデータサイズを大きくしすぎると学習性能が低下することが知られていました。以前の研究により、このミニバッチのデータサイズは学習の段階に応じて適切なサイズが増加することも明らかとなっていました(※1)。そこで、ミニバッチのサイズを適切に調整するアルゴリズムを導入します。1つの問題は通信でした。EDRにより接続したスーパーコンピュータで人工知能の研究開発を想定した構成になっています。EDRにはトーラス結合と呼ばれる通信構造が採用されており、2次元トーラス構造(ドーナツ型)もその1つです。all-reduceと呼ばれる演算と通信を組み合わせたアルゴリズムを新しく実装しました。Library(NNL)で、今回の並列化プログラムと組み合わせました。なったか今回のSonyのシステムでは224秒(3分44秒)で学習を完了し、75.03%の精度という結果となりました。Networkが15分で74.9%の精度、2018年7月のテンセントが6.6分で75.8%の精度だったため数年で国際的な競争が進んだと言えます。V100を2176個用い、ミニバッチは34000データから68000データへ変化させています。計算の精度を16ビット浮動小数点数(半精度)や32ビット浮動小数点数(単精度)に目的に応じて使い分けるなど、複数の工夫が盛り込まれています。まとめResNet-50が提案された2016年の段階で29時間かかっていた学習時間が、この成果により3分44秒で完了するまでに短縮されました。今後はさらに複雑なネットワークや巨大なデータセット、機械翻訳など異なる領域でのスーパーコンピュータの活用が進むと考えられます。産総研のスーパーコンピュータABCIは利用申請をして認められれば、利用料金を支払うことで使用することが可能です。機械学習におけるネットワークの学習速度をあげることにより試行錯誤のサイクルを早く回すことができれば、様々なサービスのアイディアを試すことができるため、研究開発の量だけでなく質の向上にも貢献することが期待されます。スーパーコンピュータのプログラミングは難易度の高い技術として知られていますが、今回の成果が様々な企業や研究グループに還元されれば、機械学習の領域にもスーパーコンピュータの利用が進み、あっと驚くような応用への道が開かれるかもしれません。Decent)としての学習はデータの入力順をランダマイズした上で、データを1つ入れるたびに結合荷重を修正する。バッチ学習ではデータの順序は問題にならないが、確率的勾配法ではデータ順により結果が異なり、これは学習にある種のノイズを加えていることと等価になる。ミニバッチはその中間であり、全データをミニバッチに分割して、ミニバッチごとにパラメータの修正量を計算する。このためミニバッチのデータサイズが大きいとノイズの量が少なくなると考えられる。学習初期は局所最適を避けるためランダムなノイズが有用だったが、学習が進むにつれて、最適なパラメータ付近を探索するのに大きなノイズが邪魔になるため、ミニバッチのサイズを大きくして、ノイズを小さくして最適解に到達しやすくしていると考えることができる。精子をAIで判別:不妊治療において顕微授精の負荷軽減と均質化を目指すアカデミックAI顧問サービスMarvinでは企業のデータ分析チームの立ち上げや、AIプロジェクトに対して大学の研究者等を顧問として紹介するサービスを行なっています。検索:無料購読はこちらメールで新しい記事を読むメールアドレスを登録すると新しい記事のお知らせがメールで届きます。購読停止はワンクリックでできます。