HPC領域3つのバズワード「ビッグデータ」「ディープ・ラーニング」「エクサスケール」はこう違う

HPC領域とは

HPCとはHigh Performance Computingの略で、文字通り多くの計算資源を必要とするコンピューティング全般を指す言葉です。HPC領域は非常にざっくりとした分類ですが、その中で3つのバズワード「ビッグデータ」「ディープ・ラーニング」「エクサスケール」が産まれ、HPC関連の話題では、しばしば同じ文脈の中にこの3つが見られます。これら3つは実のところ何を指すのでしょうか。

IoTで爆発的に規模が大きくなるビッグデータ

ビッグデータというワードはIoTの台頭によりビジネスシーンで注目されています。IoTはInternet of Thingsの略で、モノのインターネットと訳されます。人だけで無くモノ同士のインターネットが形成されると言う意味で、インターネットに接続される機器が桁違いに増えることが予想されています。2020年までに数百億台にまで増えるとも言われ、それに伴い収集出来るデータの総量が増えると言われています。

ビッグデータは一般的にインターネットを介して集めたデータです。Eコマース事業では取引情報がビッグデータを形成しますし、SNS事業では投稿やそれに対する反応がビッグデータを形成します。それらを解析し、ビジネスに有益な情報を取り出そうと言う試みがビッグデータ解析です。IoT時代が登場すれば、工場からネットワークに繋がる数百台のセンシング・デバイスがリアルタイムでデータを収集し続けると言うことが起こりえるので、これまで人類が経験したことが無いような規模のビッグデータが形成されることが予想出来ます。

その処理に多くの計算資源が必要なため、HPC領域でビッグデータの処理が盛んに議論されています。大量のデータの処理のために、今までに無い大規模なメモリが必要になります。

そのソリューションとして、大手サーバーベンダーのHewlett Packard Enterprise(HPE)は「The Machine」と呼ばれるコンセプトマシンを打ち出しています。このコンセプトマシンは、プロセッサではなくメモリ中心にコンピューティングを再構成することが目標で、SSDなどに使われているフラッシュ・メモリもメインメモリとして使うという試みがなされています。この技術にはNVDIMMと言う標準規格が既に存在し、大規模化するビッグデータに対するソリューションとして注目を集めています。また、ビッグデータの形成に不可欠なセンシングを制御し、リアルタイムに分析を進めるシステムの開発が進められています。HPEはこれをエッジ・コンピューティングと呼んでおり、既に多くの製品が用意されています。

GPGPUでAIを作るディープ・ラーニング

ディープ・ラーニングはHPC、特にGPGPUの発展により花開いた分野です。マシン・ラーニングと言うよく知られた方法を、GPUの豊かな計算資源を利用して多重化し何度も行うことで、精度の良い判断が可能な判別モデルを作れます。ディープ・ラーニングによって生成された判別モデルをAIと呼んで良いのかと言うことについては議論がありますが、便宜上AIと呼びます。

マシン・ラーニングは文字通りマシンに何かを学習させようと言う研究分野を指します。その方法は幾つも考案されてきましたが、現在主流となっているのは人の脳の構造を模したニューラル・ネットワークと呼ばれるネットワークを用いる方法です。マシン・ラーニングではそこにデータを流し込み正誤判定をしながら調整していくことでAIを作ります。

これは人にトライ&エラーを繰り返させることで学ばせる方法に似ています。マシンは情報を与えられ、それが何かを判断するという経験を積んでいきます。マシン・ラーニングでマシンが行っているのは、経験を次の判断にフィードバックしていくことで「学ぶ」ということなのです。この学びは全てコンピューターで実行出来る演算に還元され、どういう演算を用いればマシンがきちんと学べるかと言う議論がなされてきました。

プロセッサが進歩し扱える演算の量が多くなると、マシン・ラーニングの研究者はニューラル・ネットワークを多重化することでマシンがより完全に近い学びを得るということを発見しました。これがディープ・ラーニングです。ディープ・ラーニングは力技でより質の高い学習を可能にしました。当時は大量の演算資源を持つ大規模なサーバーシステムを保有する人でなければディープ・ラーニングの研究は出来なかったのですが、今日はGPGPUが発展し、安価で大規模な計算能力が手に入るようになりました。それに伴いディープ・ラーニングの研究が一気に進みました。

ディープ・ラーニングは演算資源こそ大量に必要ですが、演算自体は精度の低い演算で十分だと言われています。GPUとディープラーニングは、演算の質から言ってとても相性が良く、NVIDIAは積極的にディープ・ラーニング向けのGPUを開発しています。NVIDIAがゲームのハードを開発する企業から数値演算コプロセッサを開発する企業へと変貌したと言われるのはこのためで、現在NVIDIAはディープ・ラーニングなどの汎用演算向けに開発したコプロセッサからグラフィックスに関わる部分以外を制限したチップをGPUとして販売しています。

2020年代のスーパーコンピューター開発競争、エクサスケール

エクサスケールはExaFLOPS級のスーパーコンピューターを指す語です。ExaはMegaの次のGigaの次のTeraの次のPetaの次に大きい単位で、10^18というとてつもないスケールの単位です。FLOPSはスーパーコンピューターの分野では、64bitの浮動少数点数演算を一秒間に何度出来るかと言う単位です。これは一般的なプロセッサがする演算の中で最高の精度の演算で、スーパーコンピューターで言うFLOPSは、最高精度の演算に限った計算能力を表記します。

スーパーコンピューターは科学技術演算を支える超高速なコンピューターのことで、主にシミュレーションに使われます。スーパーコンピューターでは常識では考えられ無いような演算規模のシミュレーションが行われ、例えば医学や薬学の研究ではタンパク質やウイルスの全ての分子構造を基にしたシミュレーションが行われています。そのシミュレーションから新薬が開発された例も多いようです。近似する方法だけが編み出さ、どれだけ演算資源を増やしても完全なシミュレーションが行えないシミュレーションも存在しています。例えば流体力学のシミュレーションはよく行われますが、その振る舞いを導くとされるナビエ・ストークス方程式と言う式は、解が出て居ないどころか様々な性質を証明することが出来ていません。この式は「ある性質」を証明するという問題だけで、100万ドルの賞金が出ることで有名なミレニアム懸賞問題の1つとなっています。そのようなシミュレーションを精度良く行うにはエクサスケールと呼ばれるようなが必要なのです。

大量の演算資源が必要な点では科学技術計算用のエクサスケール。スーパーコンピューターとディープ・ラーニング用のコンピューターは同じですが、様々な点で違いがあります。まず、エクサスケールには質が求められます。精度が必要ですし、様々な演算において速度を出す仕組みが必要です。エクサスケールは様々なシミュレーションを早く完了するマシンが必要だから作るのですから、トップスピードがものを言います。

ディープ・ラーニングには精度は必要無いですし、単純なGPGPUの小規模なクラスタ型HPCシステムで十分な速度が得られます。ただし、AIを作り業務を効率化したい企業は、スーパーコンピューターでシミュレーションがしたい研究者より多いので、トータルの演算資源はかなり大きな量が必要になります。精度や高速化の仕組みがそこそこで良くても、演算資源の総量だけ見ると科学技術用のスーパーコンピューターと並ぶような大規模なシステムが必要となるのです。

2020年には中国が、2022年には日本が、2023年にはアメリカがエクサスケールコンピューターを投入する予定です。思わぬ番狂わせがあるかも知れませんが、エクサスケールは2020年代のスーパーコンピューターの開発競争の1つのテーマとなるでしょう。

関連記事

HPEのThe Machineがベールを脱ぐ、コンピューティングは変わるのか

IBMのPOWER8とNVIDIAのTesla P100を使ったPowerAIプラットフォームでTensorFlowが使えるようになった

エクサスケールの天河三号に搭載されると見られるGPDSPコプロセッサ「Matrix 2000」、天河一号、天河二号と天河シリーズを振り返る

今注目すべき日本のベンチャーPEZY computingについて

One comment

Add a Comment

メールアドレスの入力は任意です。(公開されることはありません)