PR





Preferred Networks（PFN）が開発するディープラーニング（深層学習）フレームワーク「Chainer」が間もなく、分散処理に対応することで大幅に高速化する。PFNの西川徹社長が2017年1月26日（米国時間）に米サンフランシスコで開催された「Deep Learning Summit 2017」で明らかにした（写真1）。

写真1●Preferred Networksの西川徹社長 [画像のクリックで拡大表示]

現在のChainerは、マルチノード（複数サーバー）での学習に対応にしておらず、1台のノード上で複数のGPU（Graphics Processing Unit）を使用する場合も、どのGPUで何の処理を実行するのかをプログラマーが記述する必要があった。PFNはマルチノードでの学習に対応した分散バージョンのChainerを開発中で、社内ではテストも始めている。この分散バージョンのChainerでは設定を変更するだけで、マルチノード環境やマルチGPU環境に対応する。

分散バージョンのChainerは、ノードの台数に比例して性能が向上する。PFNの検証では、32ノード/128GPUの環境で分散バージョンのChainerを使って画像認識を学習したところ、1ノード/1GPUの環境で20日以上かかっていた学習が、4.4時間で完了したという。

GoogleやMS、Amazonのフレームワークを上回る性能

PFNは分散バージョンのChainerが他の深層学習フレームワークと比べて、スケーラビリティ（拡張性）の面で優れているとした。PFNが他の深層学習フレームワークを、同じサーバー環境、同じデータセットで評価したところ、分散バージョンのChainerでは4.4時間だった学習時間が、米Googleが開発する「TensorFlow」では24.1時間、米Microsoftが開発する「Computational Network Toolkit（CNTK）」では9.1時間、主要開発者が米Amazon Web Servicesに移籍した「MXNet」では7.7時間かかったという（写真2）。

PFNの西川社長はChainerの性能が高くなった理由について、「分散処理の仕組みとして『MPI』を採用し、ノード間通信では『InfiniBand』に最適化したため」と説明する。MPIやInfiniBandは、スーパーコンピュータが採用する技術。1ノードでの性能はMXNetやCNTKがChainerを上回るが、拡張性ではChainerが勝った。