TPU (Tensor Processing Unit)
探索张量处理单元 (TPUs) 如何加速机器学习。学习优化用于 Edge TPU 的 Ultralytics YOLO26 以及云端训练以获得最大速度。
Tensor Processing Unit (TPU) 是一种专门的专用集成电路 (ASIC),由 Google 设计,旨在加速 机器学习 (ML) 工作负载。与处理各种计算任务的通用处理器不同,TPU 是从底层开始构建的,旨在优化 神经网络 基础的海量矩阵运算。这种特定的专注力使其能够实现极高的吞吐量和能源效率,从而成为现代 人工智能 (AI) 基础设施的基石,特别是在 Google Cloud 生态系统 中。它们在缩短复杂模型训练时间和在大规模运行 实时推理 所需时间方面发挥着至关重要的作用。
Link to this section架构与功能#
TPU 的架构与传统处理器有显著差异。虽然标准 CPU (Central Processing Unit) 擅长顺序任务和复杂逻辑,而 GPU (Graphics Processing Unit) 使用并行核心进行图形和通用计算,但 TPU 采用了 脉动阵列架构 (systolic array architecture)。这种设计使数据能够在数千个乘法器中同时流动,而无需为每次操作都访问内存。通过最大化计算密度并最小化延迟,TPU 特别适合 深度学习 (DL) 应用中常见的繁重线性代数运算。
这种专用硬件针对 TensorFlow 等框架进行了深度优化,并越来越多地得到 PyTorch 的支持,使开发者能够在不完全重写代码库的情况下,训练海量的 基础模型 (foundation models) 或部署高效的边缘解决方案。
Link to this section区分处理单元#
了解硬件环境对于优化 机器学习运维 (MLOps) 至关重要。
- CPU: 计算机的通用“大脑”,是顺序处理、数据预处理和处理复杂逻辑的理想选择。它通常用于 数据增强 (data augmentation) 流水线,但在繁重的矩阵运算上速度较慢。
- GPU: 最初为图像渲染而构建,GPU 因其通用性和强大的并行处理能力,成为 模型训练 的行业标准。它们非常适合训练像 Ultralytics YOLO26 这样灵活的模型。
- TPU: 一种专用加速器,用灵活性换取张量运算的原始速度。它专为最大化针对神经网络计算的 FLOPS (每秒浮点运算次数) 而设计,通常能为特定的超大规模工作负载提供卓越的单位功耗性能。
Link to this section实际应用#
TPU 被部署在各种环境中,从海量的云集群到微小的边缘设备。
-
大语言模型训练: Google 利用被称为 TPU Pods 的庞大互联集群,来训练 PaLM 和 Gemini 等超大的 大语言模型 (LLMs)。这些系统处理 PB 级 训练数据 的时间仅为传统硬件所需时间的一小部分,从而加速了 生成式 AI 的进步。
-
边缘 AI 和 IoT: Coral Edge TPU 将这种加速能力带到了低功耗设备上。它实现了高效的 计算机视觉 (CV) 应用,例如在生产线上运行 目标检测 以在本地识别缺陷。这允许在不依赖云连接的情况下进行即时决策,从而节省带宽并保护隐私。
Link to this section在 Ultralytics 中使用 TPU#
开发者可以利用 TPU 加速来处理 Ultralytics 模型,特别是在使用 Ultralytics Platform 进行云端训练或导出模型用于边缘部署时。例如,Edge TPU 要求模型必须经过专门针对其架构的量化和编译。
以下示例演示了如何将 YOLO26 模型导出为 TFLite 格式,这是为 Edge TPU 进行编译前的必要步骤:
from ultralytics import YOLO
# Load the latest lightweight YOLO26 nano model
model = YOLO("yolo26n.pt")
# Export the model to TFLite format
# This creates a '.tflite' file suitable for mobile and edge deployment
# Set int8=True for quantization, which is often required for Edge TPU performance
model.export(format="tflite", int8=True)导出后,模型可以使用 Edge TPU Compiler 进一步为 Edge TPU 进行编译,使其能够在 Raspberry Pi 搭配 Coral USB Accelerator 等设备上高效运行。如需了解更多关于部署的详细信息,探索 TFLite 集成 文档会非常有帮助。






