令和3年度 春期 応用情報技術者試験 午前 問10

ディープラーニングの学習にGPUを用いる利点として,適切なものはどれか。

解答・解説

正解: イ. 汎用の行列演算ユニットを用いて,行列演算を高速に実行できる。

ディープラーニング(深層学習)の学習プロセスでは、ニューラルネットワークの各層の重みを更新するために、非常に大規模な行列演算が大量に発生します。
GPU(Graphics Processing Unit)は、もともと画面描画などの画像処理向けに開発されたプロセッサですが、多数の演算コアを搭載しており、単純な計算の超並列処理を極めて効率的に行うアーキテクチャを持っています。
ディープラーニングの学習においては、GPUの持つこの並列計算能力を汎用計算に応用(GPGPU)し、汎用の行列演算ユニットを用いて膨大な行列演算を高速に実行できることが最大の利点です。したがって、「イ」が適切です。

各選択肢の解説

  • ア: 「各プロセッサコアが独立して異なるプログラムを実行し,異なるデータを処理できる。」は、複数のプロセッサが独立して動くMIMD(Multiple Instruction Multiple Data)型のシステムや、汎用的なマルチコアCPUの特徴です。GPUの並列アーキテクチャ(同じ命令を複数のデータに適用するSIMD型に近い)の説明としては不適切です。
  • イ: 正解。GPUの多数の演算コアを活用し、ディープラーニングにおける大量の行列演算を並列かつ高速に実行できます。
  • ウ: 「浮動小数点演算ユニットをコプロセッサとして用い,浮動小数点演算ができる。」は、かつてメインのCPUを補助するために外付けされていたFPU(数値演算コプロセッサ)の説明です。
  • エ: 「分岐予測を行い,パイプラインの利用効率を高めた処理を実行できる。」は、複雑なプログラムの分岐を効率よく処理するためのCPUの高度な制御機能の特徴です。GPUはこのような複雑な制御よりも、単純な計算を大量のコアで一斉に並列実行することに特化しています。

Spineチーム