Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

CPU

Explore o papel vital da CPU na IA e na aprendizagem automática. Saiba mais sobre seu uso na preparação de dados, inferência e como ela se compara às GPUs/TPUs.

A Central Processing Unit (CPU) is the primary component of a computer that acts as its "brain," responsible for interpreting and executing instructions from hardware and software. In the context of artificial intelligence (AI), the CPU plays a fundamental role in data handling, system orchestration, and executing inference, particularly on edge devices where power efficiency is critical. While specialized hardware like GPUs are often associated with the heavy lifting of training deep learning models, the CPU remains indispensable for the overall machine learning (ML) pipeline.

O papel das CPUs nos fluxos de trabalho de IA

Although GPUs are celebrated for their massive parallelism during training, the CPU is the workhorse for many essential stages of the computer vision (CV) lifecycle. Its architecture, typically based on x86 (Intel, AMD) or ARM designs, is optimized for sequential processing and complex logic control.

  • Data Preprocessing: Before a neural network can learn, data must be prepared. CPUs excel at tasks such as file loading, data cleaning, and complex transformations using libraries like NumPy and OpenCV.
  • Inferência de borda: para implementação no mundo real, nem sempre é viável executar modelos em servidores de grande porte. As CPUs permitem a implementação eficiente de modelos em hardware de consumo, como a execução Ultralytics em um laptop ou um Raspberry Pi.
  • Post-Processing: After a model outputs raw probabilities, the CPU often handles the final logic, such as Non-Maximum Suppression (NMS) in object detection, to filter out duplicate predictions and refine results.

CPU vs. GPU vs. TPU

Compreender o panorama do hardware é fundamental para otimizar as operações de aprendizagem automática (MLOps). Estes processadores diferem significativamente na sua arquitetura e casos de uso ideais.

  • CPU: Designed for versatility and complex logic. It features a few powerful cores that process tasks sequentially. It is best for data augmentation, pipeline management, and low-latency inference on small batches.
  • GPU Unidade de Processamento Gráfico): Originalmente destinadas a gráficos, as GPUs possuem milhares de núcleos menores projetados para processamento paralelo. Elas são o padrão para treinamento de modelos, pois podem realizar multiplicações matriciais muito mais rapidamente do que uma CPU.
  • TPU (Tensor Processing Unit): A specialized circuit (ASIC) developed by Google Cloud specifically for tensor math. While highly efficient for specific workloads, it lacks the general-purpose flexibility of a CPU.

Aplicações no Mundo Real

CPUs are frequently the hardware of choice for applications where cost, availability, and energy consumption outweigh the need for massive raw throughput.

  1. Smart Security Cameras: In security alarm systems, cameras often process video feeds locally. A CPU-based object detection model can identify a person or vehicle and trigger an alert without sending video to the cloud, preserving bandwidth and user privacy.
  2. Automação industrial: Nas fábricas, os sistemas de manutenção preditiva utilizam CPUs para monitorizar os dados dos sensores das máquinas. Esses sistemas analisam vibrações ou picos de temperatura em tempo real para prever falhas, garantindo uma automação de produção tranquila, sem a necessidade de GPU caros.

Executando inferência na CPU Ultralytics

Os programadores costumam testar modelos em CPUs para verificar a compatibilidade com ambientes de computação sem servidor ou dispositivos de baixo consumo de energia . A Ultralytics permite que você direcione facilmente a CPU, garantindo que a sua aplicação seja executada em qualquer lugar.

O exemplo a seguir demonstra como carregar um modelo leve e executar a inferência especificamente na CPU:

from ultralytics import YOLO

# Load the lightweight YOLO26 nano model
# Smaller models are optimized for faster CPU execution
model = YOLO("yolo26n.pt")

# Run inference on an image, explicitly setting the device to 'cpu'
results = model.predict("https://ultralytics.com/images/bus.jpg", device="cpu")

# Print the detection results (bounding boxes)
print(results[0].boxes.xywh)

To further improve performance on Intel CPUs, developers can export their models to the OpenVINO format, which optimizes the neural network structure specifically for x86 architecture. For managing datasets and orchestrating these deployments, tools like the Ultralytics Platform simplify the workflow from annotation to edge execution.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora