2018年04月10日 09時00分 公開
特集/連載

データ管理者が知っておきたいGPUディープラーニングのためのインフラ構築とは?

GPUを使ったディープラーニング(深層学習)が一般的になっている。これに伴いデータ管理者は、大量の計算が可能なインフラを構築する必要がある。

[Jack Vaughan,TechTarget]

関連キーワード

Hadoop | Apache | データ分析


 ビッグデータ分野では人工知能(AI)に関連してディープラーニング(深層学習)や機械学習の技法が共通の話題になっている。データ管理者は、さまざまな理由で、このトレンドから目が離せない。中でもとりわけ重要なのは、こうした新しいテクノロジーが現代のデータインフラに影響を及ぼす可能性だ。

 議論の中心になりつつあるのはGPU(グラフィックスプロセッシングユニット)だ。GPUはAIの観点でも構想として定着し始めている。GPUを使ったディープラーニングの開発はあまり話題にはなっていないが、その開発速度は上がっている。

 ディープラーニングはAIや機械学習の一種で、大量のデータセットから成り立つニューラルネットワークを処理する。GPUを使ったディープラーニングでは、ハードウェアと高度なソフトウェアが特に効果的に組み合わせられる。そのユースケースは、レコメンデーションエンジンから自動運転車まで幅広い。

 最近のGPUはメモリ帯域幅が非常に広い。そのためビッグデータを適切に処理できる。行列の乗算などがその例だ。つまりGPUはディープラーニングに必要な並列処理に向いている。並列処理は、特にディープラーニングモデル作成のトレーニング段階に効果がある。

 GPUは、CPUと比べればまだ使用頻度は少ない。そのためチップの値段が高く、GPUを活用できる開発者のコストも同じく高くなる。また、GPUの利用はAIのディープラーニングに限らない。分散処理フレームワークの「Apache Spark」、ごく最近ではYarnが組み込まれた「Apache Hadoop 3.0」でも利用されている。

GPUの歴史

 32bitの汎用(はんよう)CPU登場前の時代を覚えているデータ管理者なら、浮動小数点コプロセッサやアレイプロセッサ、そうしたプロセッサが一部のアプリケーションで果たす特別な用途を思い起こすだろう。

 新世代の開発者から、アプリケーションを大量の計算が可能なGPUインフラに移行する必要があると言われた管理者は、何に注意すべきだろう。その答えは、可変要素が数多く関わってくることだ。

 例えば、GPUを幾つか備えているサーバでも、ジョブの実行がその1台のサーバに限られていれば、やるべきことは決まる。Silicon Valley Software Groupでプラクティスマネジャーを務めるバーナード・フレンケル氏によると、ディープラーニングのジョブを複数台のサーバで実行する場合は注意が必要だという。注意するのはチップに関することだけではない。

 「複数台のサーバを使用する段階まで進むと、2台のサーバ間の帯域幅を許容できる確実な保証はない。サーバ間通信のオーバーヘッドを予測するのは難しい」(フレンケル氏)

サーバ間に浮かび上がる問題

この記事を読んだ人にお薦めの関連記事

注目テーマ

ITmedia マーケティング新着記事

news096.jpg

「KARTE for App」がモバイル計測ツール「Adjust」とデータ連携
「KARTE for App」がモバイル計測ツール「Adjust」とデータ連携を開始した。

news056.jpg

「C CHANNEL」、訪日タイ人をターゲットに想定した動画広告メニューを提供
C Channelは、タイ子会社のC CHANNEL(Thailand)において、訪日タイ人観光客向けに商品...

news020.jpg

カードタイプの電子マネー、地方で強いのは「WAON」――MMDLabo調べ
MMDLaboは、「2018年5月モバイル決済 利用者・未利用者比較調査」を発表しました。それに...