Uma Unidade Central de ProcessamentoCPU), frequentemente designada por processador, actua como o componente principal de um computador responsável pela execução de instruções. Executa a maior parte das operações básicas de aritmética, lógica, controlo e entrada/saída (E/S) especificadas pelas instruções de um programa de computador. No contexto da Inteligência Artificial (IA) e da Aprendizagem Automática (AM), embora hardware especializado como GPUs e TPUs seja frequentemente preferido para tarefas computacionalmente intensivas, a CPU continua a ser um componente fundamental.
Papel na IA e na aprendizagem automática
As CPUs são processadores de uso geral concebidos para lidar com uma grande variedade de tarefas de forma sequencial e rápida. As principais caraterísticas incluem a velocidade do relógio, que determina quantas instruções podem ser executadas por segundo, e o número de núcleos, que permite a execução paralela de várias tarefas. Embora as CPUs modernas tenham vários núcleos, normalmente não são tão massivamente paralelas como as GPUs.
Nos fluxos de trabalho de IA/ML, as CPUs são essenciais para:
- Operações do sistema: Executa o sistema operacional, gerencia os recursos do sistema e orquestra o fluxo de trabalho geral.
- Pré-processamento de dados: Tarefas como o carregamento de conjuntos de dados, limpeza, transformação e aumento de dados envolvem muitas vezes operações complexas de lógica e de ficheiros que são adequadas para CPUs. Muitos passos na preparação de dados para modelos como o Ultralytics YOLO dependem muito do processamento CPU . Sabe mais sobre a preparação de dados para projectos de visão computacional.
- Tarefas sequenciais: Executa partes de um pipeline de ML que não são facilmente paralelizáveis, como determinada lógica de controlo ou passos algorítmicos específicos.
- Inferência em determinados dispositivos: Executa a inferência para modelos mais pequenos ou em dispositivos sem aceleradores de IA dedicados(Edge AI). Muitas aplicações implementam modelos em formatos como ONNX ou usam tempos de execução como o OpenVINO daIntel para uma inferência eficiente CPU . Os modelos Ultralytics suportam a exportação para vários formatos adequados para a implantação CPU . Consulta a nossa documentação de exportação de modelos para obteres mais detalhes.
- Gerenciamento de modelos: As tarefas relacionadas com a implementação e o serviço de modelos são frequentemente executadas principalmente em CPUs.
CPU vs. GPU e TPU
A principal diferença reside na arquitetura e nos objectivos de otimização.
- CPUs: Optimizadas para a execução de baixa latência de diversas tarefas, frequentemente sequenciais. Têm alguns núcleos poderosos. Pensa neles como gestores versáteis que lidam rapidamente com muitos tipos diferentes de tarefas, uma após a outra ou algumas em simultâneo. Os principais fabricantes de CPU , como Intel e a AMD, melhoram continuamente o desempenho e a eficiência dos núcleos.
- GPUs: Otimizadas para computações paralelas de alto rendimento e em massa, particularmente as operações de matriz e vetor comuns no Deep Learning. Elas têm milhares de núcleos mais simples. Ideal para treinar modelos grandes e inferência de alto desempenho.
- TPUs: O hardware personalizado daGoogle especificamente concebido para acelerar as cargas de trabalho de ML, em particular as criadas com o TensorFlow. Oferece um elevado desempenho e eficiência para tipos específicos de cálculos de redes neurais.
Embora o treino de grandes modelos de aprendizagem profunda como o YOLOv10 seja significativamente mais rápido em GPUs ou TPUs, as CPUs são indispensáveis para o sistema geral e para tarefas específicas dentro do ciclo de vida do ML. Compreender o papel da CPU ajuda a otimizar todos os sistemas de IA, desde a preparação de dados até à implementação em várias plataformas, incluindo dispositivos de ponta com recursos limitados, como o Raspberry Pi.
Exemplos reais de IA/ML usando CPU
- Pré-processamento de processamento de linguagem natural (NLP): Tokenizar texto, realizar stemming/lemmatization, e construir listas de vocabulário para modelos NLP são muitas vezes tarefas CPU devido à sua natureza sequencial e dependência de operações complexas de string e lookups. Ferramentas como os tokenizadores doHugging Face geralmente aproveitam a eficiência CPU para essas etapas.
- Deteção de anomalias nos registos do sistema: A análise de sequências de eventos ou registos do sistema para detetar padrões invulgares envolve frequentemente sistemas baseados em regras ou modelos ML mais simples (como SVM ou Random Forest) que podem ser executados eficientemente em CPUs para monitorização em tempo real sem necessidade de hardware especializado. Isto é crucial para a observabilidade do sistema.