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

写真1●Preferred Networksの西川徹社長
写真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)。

写真2●著名深層学習フレームワークとの性能比較
写真2●著名深層学習フレームワークとの性能比較
[画像のクリックで拡大表示]

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