TPU (Tensor Processing Unit)
探索张量处理单元 (TPUs) 如何加速机器学习。了解如何为 Edge TPU 优化 Ultralytics YOLO26,并优化云端训练以实现最高速度。
张量处理单元(TPU)是一种由 Google 专门设计的专用集成电路(ASIC),用于加速机器学习(ML)工作负载。与处理各种计算任务的通用处理器不同,TPU 从底层开始设计,旨在优化神经网络所必需的大规模矩阵运算。这种专注使其能够实现极高的吞吐量和能效,成为现代人工智能(AI)基础设施的核心组件,尤其是在Google Cloud 生态系统中。它们在缩短复杂模型的训练时间以及大规模运行实时推理所需时间方面发挥着重要作用。
架构与功能#
TPU 的架构与传统处理器有显著不同。标准的CPU(中央处理器)擅长顺序任务和复杂逻辑,GPU(图形处理器)使用并行核心执行图形处理和通用计算,而 TPU 则采用脉动阵列架构。这种设计使数据能够同时流经数千个乘法器,而无需为每次运算访问内存。通过最大化计算密度并尽量降低延迟,TPU 特别适合深度学习(DL)应用中的大量线性代数运算。
这种专用硬件针对 TensorFlow 等框架进行了高度优化,并且越来越受到 PyTorch 的支持,使开发者能够训练大型基础模型或部署高效的边缘解决方案,而无需完全重写代码库。
区分不同的处理单元#
了解硬件格局对于优化机器学习运维(MLOps)至关重要。
- CPU: 计算机的通用“中枢”,适合顺序处理、数据预处理和复杂逻辑处理。它常用于数据增强流水线,但执行大量矩阵运算时速度较慢。
- GPU: GPU 最初用于图像渲染,如今凭借其灵活性和强大的并行处理能力,已成为模型训练的行业标准。它非常适合训练像 Ultralytics YOLO26 这样灵活的模型。
- TPU: 一种专门构建的加速器,以灵活性换取张量运算的原始速度。它专门用于最大化神经网络计算中的FLOPS(每秒浮点运算次数),在特定的大规模工作负载中通常能提供更高的每瓦性能。
实际应用#
TPU 被部署在各种环境中,从大型云集群到微型边缘设备均有应用。
-
大型语言模型训练: Google 利用称为 TPU Pod 的大型互联集群,训练 PaLM 和 Gemini 等巨型大型语言模型(LLMs)。这些系统能够在传统硬件所需时间的一小部分内处理 PB 级训练数据,从而加速生成式人工智能的发展。
-
边缘 AI 与物联网: Coral Edge TPU 将这种加速能力带到了低功耗设备上。它支持高效的计算机视觉(CV)应用,例如在生产线上运行目标检测,在本地识别缺陷。这样无需依赖云连接即可立即做出决策,同时节省带宽并保护隐私。
将 TPU 与 Ultralytics 配合使用#
开发者可以利用 TPU 加速 Ultralytics 模型,尤其是在使用 Ultralytics Platform 进行云端训练或导出模型以部署到边缘设备时。例如,Edge TPU 要求模型针对其架构进行量化和专门编译。
以下示例演示如何将 Ultralytics 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 编译模型,使其能够在配备 Coral USB Accelerator 的 Raspberry Pi 等设备上高效运行。如需了解更多部署详情,参阅 TFLite 集成文档会很有帮助。









