用語集

TPU (Tensor 処理ユニット)

Tensor Processing Units (TPU)が、トレーニング、推論、物体検出などの機械学習タスクを比類ない効率で加速させる方法をご覧ください。

Ultralytics HUB で
を使ってYOLO モデルをシンプルにトレーニングする。

さらに詳しく

Tensor プロセッシング・ユニットTPU)は、Googleが開発したカスタム設計の機械学習アクセラレーターである。 Googleによって開発されたカスタム設計の機械学習アクセラレーターである。特定用途向け集積回路(ASIC)の一種であるこの専用プロセッサーは、特に推論とトレーニングのタスクにおいて、機械学習オペレーションを劇的に高速化し、スケールアップするように設計されている。TPUは、人工知能(AI)に関わる複雑な数学的計算を処理するように設計されており、特定の種類の機械学習モデルにおいて、中央演算処理装置(CPU)や、多くの場合グラフィック処理装置(GPU)を大幅に上回る性能を提供する。ディープラーニングで一般的な大規模計算には特に効果的です。

TPU何か?

TPU 、機械学習(ML)特有の要求のために一から構築されている。CPUのような汎用プロセッサーや、より幅広いタスクを処理するGPUとは異なり、TPUはtensor 計算(ニューラルネットワーク(NN)の基本的な数学演算)を得意とするように設計されている。テンソルはMLモデルのデータを表す多次元配列で、TPUは大規模な行列乗算やその他のtensor 代数を高速かつエネルギー効率よく実行できるように最適化されている。この特化により、TPUはCPUよりもはるかに高速に、多くのシナリオではGPUよりも効率的にMLタスクを実行することができます。 TensorFlowのようなフレームワークを使用する場合は特にそうです。その他のフレームワークのサポート PyTorchのような他のフレームワークもサポートしており、使い勝手が広がっている。詳しくはGoogle CloudTPU Introductionを参照してほしい。

TPUの用途

TPUは様々なアプリケーションで幅広く使用されており、特にGoogle サービスを利用したアプリケーションや、Google Cloudのようなプラットフォームからアクセス可能な、より広範なAIやMLの領域で使用されるようになってきています。主なアプリケーションは以下の通り:

  • 大規模モデルのトレーニングTPUは、膨大な計算能力と分散型トレーニング設定を必要とする大規模なディープラーニングモデルのトレーニングに優れている。例えばGoogle 、膨大なデータセットと複雑なアーキテクチャを扱うGoogle 検索やGoogle 翻訳のようなサービスの高度なモデルをトレーニングするために、TPUを社内で使用している。
  • 大容量の推論:大量のデータに対する高速で効率的な推論を必要とするアプリケーションに対して、TPUは大幅なアクセラレーションを提供します。これは、チャットボットにおける自然言語処理(NLP)のようなリアルタイムサービスや、Google フォトにおける大規模オブジェクト検出のようなコンピュータビジョン(CV)タスクにとって極めて重要です。
  • 研究開発:研究者は、クラウドプラットフォームやKaggleのような環境(Ultralytics Kaggle統合ガイドを参照)を介してTPUを活用し、実験を加速させ、医療画像解析や科学シミュレーションで使用されるような最先端のAIモデルを開発する。
  • エッジコンピューティング: エッジTPUとして知られる小型バージョンは、MLの推論機能をデバイスに直接もたらし、低レイテンシーとオフライン処理を必要とするIoTやロボット工学のアプリケーションを可能にします。エッジ・コンピューティングの原理について詳しく知る。

TPU対GPU対CPU

TPU、GPU、CPUはすべて計算を処理できるが、それぞれ異なる目的で設計されており、得意とするタスクも異なる:

  • CPU (中央演算処理装置):標準的なコンピューターの頭脳で、汎用的な計算タスク用に設計されている。システム操作を処理し、プログラム命令を逐次実行し、多様なワークロードを管理するが、ディープラーニングで必要とされる大規模な並列計算には比較的遅い。CPU GPU 比較についてもっと読む。
  • GPU (グラフィックス・プロセッシング・ユニット):もともとグラフィックをレンダリングするために設計されたGPUは、並列処理に最適化された何千ものコアを備えています。そのため、多くのMLモデルのトレーニングや実行に非常に効果的で、 Ultralytics YOLO モデルによる物体検出のような様々なタスクにおいて、パフォーマンスと柔軟性のバランスがとれています。主なプロバイダー NVIDIAAMDなどがある。
  • Tensor Processing Unit):ニューラルネットワークワークロード用のマトリックスプロセッサーとして特別に設計されている。TPUは、特にGoogleエコシステム(TensorFlow Google Cloud上のPyTorch )。一般的な並列コンピューティングではGPUよりも柔軟性に欠けるかもしれないが、Google Cloud Platformのようなプラットフォームでホストされる特定の大規模MLタスクでは、コストとスピードで大きなメリットを提供できる。

まとめると、TPUは現代の機械学習の需要に特化して設計されたハードウェアの大きな進歩であり、特定のAIアプリケーション、特に大規模なトレーニングや推論ジョブのパフォーマンスと効率を向上させる。TPUはGPUのような他のアクセラレーターを補完し、特定のワークロード、スケール、ソフトウェアエコシステムに応じたオプションを提供します。合理化されたモデル・トレーニングと管理機能を提供するUltralytics HUBのようなプラットフォームを通じて、クラウド・リソースを含むトレーニング・オプションを検討することができます。AIトレンドの詳細については、Ultralytics ブログをご覧ください。

すべて読む