AI開発でGPUが活用される理由

「SAVACAN」担当のMKです。

今回は身近になってきたAI利用の裏側でGPUが活用されている理由について取り上げてみます。

AIのトレーニングプロセスでは大量の同時計算が必要なため、演算装置としてCPUではなくGPUが利用されています。
本来GPUはグラフィック処理を高速に行うために開発された機器です。少し前にはGPUが搭載されているグラフィックボードを利用した仮想通貨ビットコインのマイニングが流行りましたが、最近ではAIの開発で大活躍しています。

それではまずGPUの特徴から見ていきましょう!

目次

GPUとは

正式な名称は「Graphics Processing Unit」といい、名前の通りグラフィック処理を行うために開発されたコンピュータパーツとなります。CPUのようにシーケンシャルな順次処理や複雑な条件分岐を必要とする処理には向きませんが、3Dグラフィックスに求められる大量の同時計算を効率よく処理するため、非常に高い並列処理性能を有しています。
この並列処理性能がディープラーニングに向いていたため、AI開発にGPUが利用されています。

ディープラーニング

機械学習の1つで、ニューラルネットワークを活用してデータからパターンや特徴を自動的に学習し、複雑な問題を解決するための技術です。

GPUの代表的メーカーについては、NVIDIA、AMD、Intelと大手メーカーが3社知られていますが、CUDAやTensorCoreなどのAI開発に有効な技術を合わせて提供しているNVIDIAが抜きんでています。

なぜCPUでなくGPUがAIに使われるのか

AI開発にGPUが使われる大きな理由として以下3点が上げられます。

・列処理能力
CPUのコア数はエンタープライズ製品でも多くて数十個ですが、GPUのコア数は数百~数千個になります。
コア数の多さで同時に大量データを処理する並列処理を実現しています。

・メモリの帯域幅
CPUとGPUではメモリ通信におけるアーキテクチャが異なっており、CPU環境におけるメモリ帯域幅は多くが50GB~100GB/秒あたりですが、GPU製品では500GB~3000GB/秒を超える製品もあります。
(※メモリの単一チャネルでは無く、製品における総帯域幅)
これにより、ディープラーニング時に大量のデータをメモリに載せて超高速で計算する事が出来ます。

・深層学習ライブラリのサポート
GPUメーカーからディープラーニングモデル向けのフレームワーク、ライブラリが提供されていますのですぐに開発を始めることができます。

コア数、メモリ帯域幅はCPUには出せない性能ですね!

GPUの選び方

AI開発をする際のGPUの選び方をご紹介します。

・コア数
単純にコア数が多いほど並列処理の性能が高い傾向にあります。
また、NVIDIAのGPUでは CUDAコアTensorコア の2種類があります。CUDAは画像処理や汎用的な数値計算、データの前処理を行い、Tensorは行列演算や混合精度演算に最適化されており、特にニューラルネットワークを効率よくトレーニングする場面に適しています。AI開発の場合、Tensorコアの性能に注目すると良いでしょう。

・メモリの容量と帯域幅
ディープラーニングでは計算対象のデータをメモリに格納する必要があるため、データ量に見合ったメモリ容量が必要です。
また、メモリ帯域幅が広いほど高速に処理することができます。

・消費電力と冷却性能
GPUは電力消費が非常に大きい為、大量のGPUを運用する場合には供給電力に注意が必要です。また、合わせて相応の排熱を処理できる冷却設備も必要となります。

・NVIDIA製品におけるデータセンターでの利用制限
NVIDIAのGPU製品の内、「GeForce」および「Titan」ブランドはドライバソフトウェア利用規約にてブロックチェーン用途を除くデータセンター内での利用が禁止されています。非商用用途及び研究用途での利用まで制限するつもりはないとの声明があったようですが、データセンターにてNVIDIAのGPU製品を運用する場合、「Tesla」シリーズを検討する必要があります。

AIサービスの紹介

参考例としてよく知られているAIを使ったサービスをご紹介します。

・質問に詳細な回答を生成して答えてくれるチャットボット(生成AI)

ChatGPT
OpenAI社が開発/提供しています。共同設立者としてテスラのイーロン・マスクも関わっていたことは有名ですね!
今、最も有名なチャットボットだと思います。
https://chatgpt.com/

Copilot
チャットボットとしてのCopilotについて言及。Microsoft社が提供しています。Windows11の23H2からは単独アプリとして提供されている他、Edgeブラウザにも搭載されています。Microsoft単独の開発ではなくOpenAIの技術を利用しています。
https://copilot.microsoft.com/?form=MY02E6&OCID=MY02E6&culture=ja-jp&country=jp

Gemini
Google社が開発/提供しています。GoogleはAIの分野でMicrosoftに遅れていると言われていますが今後はどうなっていくのでしょうか。
https://gemini.google.com/?hl=ja

チャットボットを利用してみると、的外れであったりあきらかに誤った回答を返す場合があります。これはハルシネーションと言われる現象でLLMの構造上避けられないものとされています。学習データの質の向上やファインチューニングなど様々な方法で軽減が試みられていますが、根絶する方法は今のところありません。
このため、各社からもAIの回答は誤っている可能性が有り、確認する必要がある旨のアナウンスがされています。

以上の事から、明確な答えがあるものよりもアイディアやアドバイスなど、自分にない発想やヒントを求める使い方が適している様に思います。あるいは、文章の添削のような決まったルールの上での作業は得意なので大量文章の添削を任せるととても便利ですが、この場合でも、最後は人間の目によるチェックは必要となります。
少し前、複数のサイトの文章内に同一の意味不明な単語が散見される事件がありました。これらは全て生成AIにより作成された文章であったようで、生成AIにより出力したものをそのまま掲載していたことが発覚してしまいました。

まだまだ万能なものではありませんので、勘所を抑えた上での活用をオススメします。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次