【NVIDIA】なぜAIはGPUとの相性がいいのか?
GPUと聞くと、グラフィック、画面描写のイメージがあるかもしれませんが、その処理の特性を逆手に取ったアイデアがGPUのAI利用でした。
グラフィックスの描写能力とは、簡単に言うと、コンピューター上で画像を表示する能力です。この能力は、数値を計算する能力によって支えられています。
たとえば、バーチャファイターという格闘ゲームでは、キャラクターやステージ、背景などの画像が、ポリゴンと呼ばれる小さな三角形の組み合わせによって表現されています。このポリゴンは、X座標、Y座標、Z座標の3つの座標によって位置が定められます。
3Dの世界は、この座標の集合からできています。たとえば、キャラクターが動くとき、座標を変更することで動きを表現しています。
この座標の変更は、計算によって行われます。CPUでも計算はできますが、GPUは数値の計算に特化したプロセッサであり、CPUよりも高速に計算を行うことができます。
そのため、GPUを搭載することで、よりリアルで滑らかなグラフィックスを表示することができます。
以下に、具体的な計算の例を挙げます。
これらの計算を高速に行うことで、よりリアルで迫力のあるグラフィックスを表示することができます。
また、GPUは画像の処理にも使用されます。たとえば、画像の拡大・縮小や、画像の明るさや色を調整するなどの処理を行うことができます。
グラフィックスの描写能力を向上させるためには、計算能力を向上させる必要があります。
グラフィックスは、3Dの世界を2Dのディスプレイに表示する技術です。3Dの世界は、座標の集合からできています。この座標を計算によって平面に投影することで、2Dのディスプレイに表示することができます。
また、ディスプレイには画素と呼ばれる小さな点が並んでおり、それぞれの画素を何色で点灯させるかを計算する必要があります。
さらに、VRなどの技術では、1秒間に90コマ以上のフレームを表示する必要があります。これは、1コマあたり1/90秒で計算を終えてデータを転送しなければならないことを意味します。
このように、グラフィックスの描写能力を向上させるためには、以下の計算を高速に行う必要があります。
これらの計算を高速に行うためには、CPUではなくGPUを使用します。GPUは、数値の計算に特化したプロセッサであり、CPUよりも高速に計算を行うことができます。
以下に、分かりやすく解説するためのポイントをまとめます。
これらのポイントを押さえることで、グラフィックスの描写能力と計算能力の関係についてより理解しやすくなると思います。
なぜAIか?
人工知能の学習では、大量のデータをもとに、データを処理する方法や特徴を学習します。この学習には、膨大な計算量が必要となります。
CPUは、一般的に、1つの処理を1つずつ順番に処理します。そのため、膨大な計算量を処理するには、多くの時間がかかります。
一方、GPUは、複数の処理を同時に並列処理することができます。そのため、CPUよりも高速に計算を処理することができます。
人工知能の学習では、特に、重み行列の積和演算と呼ばれる処理を大量に実行します。この処理は、グラフィックスの描写における座標の計算と同じように、同じ種類の計算を繰り返し行うものです。
GPUは、この重み行列の積和演算を高速に処理することができます。そのため、人工知能の学習において、GPUはCPUよりも優れた性能を発揮します。
AIとGPUとの関連性について述べましたが、ここで最も注視したいPIVOTは「グラフィック処理デバイスの利用方法」でしょう。AIに使えるというのはまさに新しい発想で、材料工学を学んでいるような感覚に陥ります。
しかしここで同時に思うことは、GPUが選ばれた理由の一つがコスト、つまり経済面だということです。技術革新においてシンプルなアイデアの融合ならまだしも、そこに価格の影響が強まってくると狭窄にもなるのではないかと思った次第です。