Glossário

Precisão mista

Aumenta a eficiência da aprendizagem profunda com formação de precisão mista! Obtém velocidades mais rápidas, menor utilização de memória e poupança de energia sem sacrificar a precisão.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

O treino de precisão mista é uma técnica utilizada na aprendizagem profunda para acelerar a computação e reduzir a utilização de memória, mantendo a precisão do modelo. Envolve o uso de diferentes precisões numéricas para diferentes partes do modelo e do processo de treinamento. Esta abordagem é particularmente benéfica quando treinas modelos grandes e complexos, uma vez que pode reduzir significativamente os recursos computacionais necessários.

Compreender a precisão mista

No contexto da aprendizagem profunda, a precisão numérica refere-se ao formato em que os números são armazenados e os cálculos são efectuados. A precisão simples (FP32), que utiliza 32 bits para representar números de vírgula flutuante, tem sido o padrão para o treino de modelos de aprendizagem profunda devido à sua estabilidade e vasta gama. No entanto, os formatos de menor precisão, como a meia precisão (FP16), que utiliza 16 bits, oferecem vantagens significativas em termos de velocidade e espaço de memória.

A precisão mista aproveita os pontos fortes do FP32 e do FP16. As operações computacionalmente intensivas, como convoluções e multiplicações de matrizes, são executadas em FP16 para maior rapidez, enquanto as operações que requerem maior precisão, como o cálculo de perdas e actualizações de gradientes, são mantidas em FP32 para manter a estabilidade e a precisão numéricas. Esta utilização selectiva de formatos de precisão conduz a tempos de treino mais rápidos e a um menor consumo de memória, sem perda substancial do desempenho do modelo.

Vantagens da precisão mista

  • Aumenta a velocidade de computação: As operações FP16 podem ser processadas muito mais rapidamente do que as operações FP32 nas GPUs modernas, especialmente nas GPUs NVIDIA com Tensor Cores. Isto deve-se ao facto de as operações FP16 exigirem menos dados para serem movidos e processados, o que leva a um aumento significativo da velocidade de formação e inferência.
  • Reduz o uso de memória: O uso do FP16 reduz o espaço de memória dos modelos e gradientes pela metade em comparação com o FP32. Isso permite treinar modelos maiores ou usar tamanhos de lote maiores, o que pode melhorar a eficiência do treinamento e, potencialmente, a generalização do modelo.
  • Aumenta o rendimento: O efeito combinado da computação mais rápida e do uso reduzido de memória resulta em maior taxa de transferência, o que significa que mais dados podem ser processados no mesmo período de tempo. Isto é crucial para treinar grandes conjuntos de dados e implementar modelos em aplicações em tempo real.
  • Eficiência energética: Os cálculos de menor precisão são geralmente mais eficientes em termos energéticos, o que é particularmente importante para a formação em grande escala em centros de dados e para a implementação em dispositivos de ponta com energia limitada.

Aplicações de precisão mista

A formação de precisão mista é amplamente adoptada em vários domínios da IA e da aprendizagem automática. Eis alguns exemplos:

  1. Deteção de objectos com Ultralytics YOLO : Formação Ultralytics YOLO modelos, particularmente modelos grandes como YOLOv8 ou YOLOv11, podem ser significativamente acelerados utilizando precisão mista. Isto permite que os investigadores e profissionais treinem mais rapidamente detectores de objectos de última geração em grandes conjuntos de dados como o COCO ou o Objects365 e os implementem eficientemente em dispositivos de ponta como o NVIDIA Jetson.
  2. Modelos de processamento de linguagem natural (NLP): Os modelos de linguagem de grande dimensão (LLMs), como o GPT-3 e o BERT, beneficiam muito com o treino de precisão mista. O espaço de memória reduzido permite treinar modelos maiores com mais parâmetros, levando a um melhor desempenho em tarefas como geração de texto, tradução automática e análise de sentimentos. Estruturas como PyTorch e TensorFlow oferecem suporte integrado para treinamento de precisão mista, tornando-o acessível e fácil de implementar.

Considerações e melhores práticas

Embora a precisão mista ofereça inúmeras vantagens, é importante estar ciente dos potenciais desafios e seguir as melhores práticas:

  • Estabilidade numérica: Os formatos de precisão mais baixa têm uma gama dinâmica mais estreita, o que por vezes pode levar a problemas de instabilidade numérica, como sub ou sobrefluxo. Técnicas como o escalonamento de perdas e o recorte de gradientes são frequentemente utilizadas para mitigar estes problemas.
  • Suporte de hardware: Os benefícios de desempenho da precisão mista são altamente dependentes do suporte de hardware. As GPUs modernas, especialmente as NVIDIA GPUs com Tensor Cores, são optimizadas para operações FP16. Certifica-te de que o teu hardware suporta a aceleração FP16 para obteres todo o potencial da precisão mista.
  • Implementação cuidadosa: A implementação eficaz da precisão mista exige uma análise cuidadosa das operações que devem ser efectuadas em FP16 e das que devem permanecer em FP32. A utilização de bibliotecas e estruturas que fornecem precisão mista automática (AMP) pode simplificar este processo e garantir uma implementação correta.

A precisão mista tornou-se uma técnica essencial na aprendizagem profunda moderna, permitindo uma formação e implementação mais rápidas e eficientes dos modelos de IA. Ao combinar estrategicamente diferentes precisões numéricas, consegue um equilíbrio entre a eficiência computacional e a precisão do modelo, abrindo caminho para aplicações de IA mais poderosas e acessíveis.

Lê tudo