用語集

TPU (Tensor 処理ユニット)

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

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

さらに詳しく

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

TPU何か?

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

TPUの用途

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

  • 大規模モデルのトレーニングTPUは、自然言語処理(NLP)(BERTやGPTの亜種のような)や高度なコンピュータビジョンタスクで使用されるような、非常に大規模で複雑なモデルのトレーニングに優れています。TPUのアーキテクチャは、必要とされる大規模な並列計算に適しており、多くの場合、分散トレーニングのような技術を利用します。研究者や開発者は、TPU ポッドを活用して大幅なスピードアップを図ることができる。Google 検索や翻訳を支える多くの大規模モデルは、トレーニングにTPUを利用している。
  • 大容量の推論:大規模データセットに対する高速予測を必要とするアプリケーションでは、TPUは高いスループットと低レイテンシーを提供する。Google TPUを使って、Google フォト(画像解析と物体検出)やGoogle アシスタント(音声認識)などの製品にリアルタイムAI機能を搭載している。TPUはKaggleのようなプラットフォームでも利用可能で、Ultralytics Kaggle統合ガイドで説明したように、実験のための幅広いアクセスを可能にします。小型のEdge TPUは、このアクセラレーションをエッジコンピューティングデバイスにもたらします。

TPUとGPUの比較

TPUとGPUはどちらもMLワークロードを加速させるが、両者には大きな違いがある:

  • アーキテクチャGPUは並列処理のために設計されており、もともとはグラフィックスのためのものであるため、MLを含む様々な並列タスクに汎用性がある。TPUはより特殊なアーキテクチャ(Matrix Multiply Units)を持ち、ニューラルネットワークで主流のtensor演算に特化して最適化されている。
  • 柔軟性:GPUは、より広範なソフトウェアサポートCUDA、様々なMLフレームワーク)とML以外のタスクへの適用性により、より高い柔軟性を提供する。TPUはML、特にディープラーニングのトレーニングと推論に高度に最適化されており、TensorFlow JAXのようなフレームワークで最高のパフォーマンスを発揮する。
  • 効率:大規模で互換性のあるMLワークロードの場合、TPUはGPUに比べてワットあたりの性能が優れています。しかし、より小規模なタスクや、TPU アーキテクチャにあまり適していない演算を含むタスクでは、GPUの方がコスト効率や性能が高いかもしれません。

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

すべて読む