（様式 20）成果報告書

TSUBAME 共同利用 令和 2 年度 学術利用 成果報告書

利用課題名 HPC を利用した自然言語処理技術の研究
英文：High Performance Computing for Natural Language Processing Technology Research
利用課題責任者
鳥澤 健太郎
所属
国立研究開発法人情報通信研究機構 ユニバーサルコミュニケーション研究所
データ駆動知能システム研究センター
http://www2.nict.go.jp/direct/
邦文抄録（300 字程度）
本課題では、課題責任者らが開発を進めてきた、大規模ニューラルネットワーク学習のための自動並列化深層学習ミドルウェア RaNNC について、TSUBAME の計算資源を用いながら、主に通信部のチューニングと動作検証を実施した。RaNNC は、ニューラルネットワークを分割するモデルパラレルと呼ばれる並列化を自動化する機能を持つ。別途実施した課題責任者らの所属組織の計算資源を用いた機能強化と合わせ、包括的なチ ューニ ン グを進 めた 結果、 同じ くモ デ ルパ ラレ ルによる 並列 学習 を行うフ レームワ ークで ある
Megatron-LM と比較して、約 5 倍のパラメータを持つニューラルネットワークを学習できること、両方が学習可能な規模のニューラルネットワークでは、ほぼ同等の学習速度であることを確認した。また、RaNNC の動作検証を通じて堅牢化を進め、ソースコードを GitHub に公開した。
英文抄録（100 words 程度）
In this project, we improved the efficiency of communication of RaNNC, automatic parallelization
middleware for training very large-scale neural networks, and tested RaNNC’s features usingTSUBAME. RaNNC automatically partitions a neural network for model parallelism. After we
performed comprehensive performance tuning using TSUBAME and our clusters, we compared
RaNNC with some existing frameworks. The experimental results showed that RaNNC can trainmodels five times larger than Megatron-LM, a well-known framework for training very large
neural networks with model parallelism, and RaNNC’s training throughputs are comparable toMegatron-LM’s when training the same models. We also improved the robustness of RaNNC
though tests using TSUBAME and released the source code on GitHub.

Keywords: 自然言語処理, 大規模ニューラルネットワーク学習, モデルパラレル
背景と目的

当年度は、ニューラルネットワーク分割アルゴリズム

近年、深層学習で用いられるニューラルネットワークの改善やパイプライン並列の導入によって、RaNNCの大規模化が進んでいる。例えば言語処理分野では、の学習速度と学習可能なニューラルネットワークの規2018 年に Google から発表さ れた BERT[Devlin模を大幅に向上させてきた。本課題では、TSUBAME2018]を端緒として、事前学習を用いる極めて大規模なの計算資源を用いながら、各種のチューニングを行っパラメータを持つニューラルネットワークが次々に発表て学習速度を向上させると共に、動作検証を重ねるこされてきた。著名な例では、GPT-3[Brown 2020]と呼とによって RaNNC の堅牢性の向上を目指した。

ばれるネットワークは、約 1750 億ものパラメータを持つ。
深層学習で広く用いられる、データパラレルと呼ばれ概要

る並列化方式は、ネットワーク全体を複製するため、こTSUBAME は Intel Omni-Path による高速なノーうした巨大なニューラルネットワークは困難である。そこド間接続を備えているため、本課題では、TSUBAMEで、我々はネットワークを分割するモデルパラレルを自の計算資源を用いながら、主に通信部分に関する動 的 に 行 う ミ ド ル ウ ェ ア RaNNC (Rapid Neural

RaNNC のチューニングを進めた。また TSUBAME は、Network Connector) を開発してきた。

仮想化によりノードが持つ GPU の一部のみを利用可（様式 20）成果報告書

図 1 大規模 BERT モデル（隠れ層サイズ 2048）におけるスループット比較能とする機能を持つため、様々な GPU 数での動作検幾分スループットが低い結果となっているが、証を行った。

PipeDream-2BW は、RaNNC を含むその他のフレー
ムワークと異なり、分割されたニューラルネットワーク間結果および考察でパラメータの同期を省くことで高速化しているため、RaNNC の有効性を評価するため、類似の関連フ学習精度が低下する可能性があるという問題がある。

レームワークとの比較実験を行い、大規模化した

また、TSUBAME 上での各種の動作検証を通じて、BERT の事前学習でのスループットを調査した（図 1）。

RaNNC の堅牢性を向上させ、RaNNC のソースコード

なお、以降に示す実験では、TSUBAME を用いたチュを GitHub に公開した。

ーニングに加え、ニューラルネットワーク分割アルゴリ
ズムの改善や、課題責任者らの所属組織の計算資源まとめ、今後の課題を用いたチューニングなど、別途実施した機能強化を当年度実施した、実行速度とスケーラビリティに関す包括的に適用している。また、必要リソース量の問題かる RaNNC の改善を、他のフレームワークとの比較をら、本実験は課題責任者らの所属機関の計算資源で通じて評価し、訓練速度と学習可能なネットワーク規模実行した。InfiniBand により 100Gbps で接続され、の両方において、優れた性能を確認した。

NVIDIA V100 を 8 枚備えたサーバ 4 台を用いている。

今後、更に大規模なニューラルネットワークを学習す

BERT の隠れ層サイズは 2048 に設定し、レイヤ数るための機能強化を進めると共に、言語処理分野を中を最大 256 まで拡張した（BERT の原論文では、隠れ心とした各種の大規模ニューラルネットワークに適用し、層サイズは 1024, レイヤ数は 24）。256 レイヤの設定有効性を検証していく予定である。

において、パラメータ数は 129 億に達する。バッチサイズは 256, 系列長 512, 数値精度は FP32 に設定した。
比較対象として、データパラレルのみの設定の他、GPipe[Huang2018](参考文献)[Brown 2020] T. B. Brown et al., Language Models、 Megatron-LM[Shoeybiare Few-Shot Learners, arXiv:2005.14165, 2020.

2019]、PipeDream-2BW[Narayanan 2020]と比較し[Shoeybi 2019] M. Shoeybi et al. Megatron-LM:

た（GPipe は原論文ではモデルパラレルのみを行う手Training Multi-Billion Parameter Language Models法が提案されているが、ここでは PipeDream-2BW のUsing Model Parallelism. arXiv: 1909.08053, 2019.

著者らによるデータパラレルと併用する実装を用いた）。

[Huang 2018] Y. Huang, GPipe: Efficient training of

図 1 に示すように、RaNNC は最大で Megatron-giant neural networks using pipeline parallelism,

LM の 5 倍のモデルを訓練できた。また同一条件で訓arXiv: 1811.06965, 2018.

練できた場合では、ほぼ同等のスループットを得た。ま[Narayanan 2020] D. Narayanan et al., Memory-た、GPipe と比較すると、全ての設定でより優れたスル

Efficient Pipeline-Parallel DNN Training,ープットを得られた。PipeDream-2BW と比較すると、

arXiv:2006.09503, 2020.