CPU、GPU、TPU、NPUは何が違い、AI処理でどう役立つのか?:AI時代のプロセッサ再入門【第5回】
CPU、GPU、TPU、NPUはいずれもAI技術の活用において使われるプロセッサだ。それぞれAI技術の演算処理とどのような関係にあり、どのような用途で使われるのか。
機械学習などのAI(人工知能)技術の活用には、複数種類のプロセッサが使われる。汎用(はんよう)的な用途に使われてきた「CPU」(中央処理装置)や「GPU」(グラフィックス処理装置)だけではなく、昨今は「TPU」(テンソル処理装置)や「NPU」(ニューラル処理装置)と呼ばれるプロセッサも使われるようになった。それぞれのプロセッサは何が違い、AI技術の演算処理とどのような関係にあるのか。
CPU、GPU、TPU、NPUの違いとは? それぞれに適したAI用途
併せて読みたいお薦め記事
AI時代のプロセッサ再入門
- 第1回:GPUやNPUの時代にこそ「CPUの理解」が欠かせないのはなぜ?
- 第2回:「CPU」と「GPU」の仕事がこれほど違う“根本的な理由”
- 第3回:「TPU」とはどんなプロセッサなのか? AIインフラの基礎知識
- 第4回:AI特化プロセッサ「NPU」「TPU」が“全く別物”である理由
プロセッサ関連のその他の動向
AI技術の活用では、さまざまなデータをトレーニングや推論に用いる。例えば、猫を認識するように設計されたコンピュータビジョン(コンピュータが画像や動画を理解するための技術)のシステムを考えてみよう。AIモデルは、猫の画像のピクセルデータから特徴を抽出してパターンを認識するための演算処理を実行する。そのAIモデルのトレーニングには何千もの異なる画像が必要だ。
こうしたAI技術の演算処理と、プロセッサはどのような関係にあるのか。各プロセッサは、どのような演算処理に適しているのか。それぞれの特徴は次の通りだ。
CPU
さまざまな用途で汎用的に使われているCPUもAI技術に必要な演算を処理できる。ただしCPUで得られるAI用途向けの計算能力は処理速度は限定的で、かなりの時間とリソースを必要とする可能性がある。通常、他のプロセッサには向かないくらい小規模のプロジェクトでCPUを活用する。例えば、1つの例だけでタスクを学習する「ワンショット学習」や、数回程度の数少ない例で学習する「フューショット学習」などがある。
GPU
GPUは行列乗算などの並列計算をCPUよりもはるかに効率的に実行できるので、ほとんどのAIタスクを迅速に処理できる。可用性、費用対効果、最新型のサーバでの運用といった観点でメリットが得られる可能性がある。通常、AIアプリケーションを社内で開発する企業にとってのプロセッサとして、最も基本的な選択になる。
TPU
TPUは、基本的にはGPUをさらにAI技術の用途に特化させたプロセッサだと言える。機械学習などのAI技術に必要となる行列乗算などの演算を実行する設計となっている。通常、Googleのクラウドサービス群「Google Cloud」でAIアプリケーションを開発するときに使用する。とはいえ、AIアプリケーションの開発や実行にクラウドサービスを使うのであれば、選択肢をTPUに限る必要はない。Google Cloudでも他のクラウドサービスでも、GPUベースの仮想マシンやサービスを選択できる。
NPU
NPUは、人間の思考や情報の関連付けに似せたアーキテクチャを持つ。通常、AIアプリケーションを高速で処理したいスマートデバイスやモバイルデバイスで使用する。データセンターやクラウドサービスでの使用は想定されていない。
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.