Glossário

Formação sensível à quantização (QAT)

Otimize os modelos de IA para dispositivos de borda com o treinamento com reconhecimento de quantização (QAT), garantindo alta precisão e eficiência em ambientes com recursos limitados.

O treinamento com reconhecimento de quantização (QAT) é uma técnica avançada de otimização de modelos que prepara uma rede neural (NN) para implantação com menor precisão numérica. Ao contrário do treinamento padrão que usa números de ponto flutuante de 32 bits (FP32), o QAT simula os efeitos dos cálculos de números inteiros de 8 bits (INT8) durante o processo de treinamento ou ajuste fino. Ao tornar o modelo "consciente" dos erros de quantização que irá encontrar durante a inferência, o QAT permite que o modelo ajuste os seus pesos para minimizar a potencial perda de precisão. Isso resulta em um modelo compacto e eficiente que mantém alto desempenho, tornando-o ideal para implantação em hardware com recursos limitados.

Como funciona o treinamento com reconhecimento de quantização

O processo QAT começa normalmente com um modelo FP32 pré-treinado. São inseridos nós de quantização "falsos" na arquitetura do modelo, que imitam o efeito da conversão de valores de vírgula flutuante em inteiros de menor precisão e vice-versa. O modelo é então treinado novamente num conjunto de dados de treino. Durante esta fase de reciclagem, o modelo aprende a adaptar-se à perda de informação associada à quantização através da retropropagação padrão. Isto permite ao modelo encontrar um conjunto mais robusto de pesos que são menos sensíveis à precisão reduzida. As principais estruturas de aprendizagem profunda, como PyTorch e TensorFlow, oferecem ferramentas e APIs robustas para implementar fluxos de trabalho QAT.

QAT vs. Quantização pós-formação

A QAT é frequentemente comparada com a Quantização pós-treino (PTQ), outro método comum de quantização de modelos. A principal diferença reside no momento em que a quantização é aplicada.

  • Quantização pós-treinamento (PTQ): Este método é aplicado depois de o modelo ter sido totalmente treinado. É um processo mais simples e mais rápido que não requer reciclagem ou acesso aos dados de treino originais. No entanto, por vezes pode levar a uma queda significativa na precisão do modelo, especialmente para modelos sensíveis.
  • Treino sensível à quantização (QAT): Este método integra a quantização no ciclo de formação. Embora seja mais intensivo em termos de computação e exija acesso a dados de treino, o QAT resulta quase sempre numa maior precisão do modelo quantizado final em comparação com o PTQ. É o método preferido quando a maximização do desempenho é fundamental.

Aplicações do QAT no mundo real

O treinamento com reconhecimento de quantização é vital para a implantação de modelos sofisticados de IA em ambientes com recursos limitados, onde a eficiência é fundamental.

  1. Visão computacional no dispositivo: Executar modelos complexos de visão computacional, como o Ultralytics YOLOv8, diretamente nos smartphones para aplicações como a deteção de objectos em tempo real em aplicações de realidade aumentada ou a classificação de imagens em ferramentas de gestão de fotografias. O QAT permite que esses modelos sejam executados de forma eficiente, sem consumo significativo de bateria ou latência.
  2. IA de ponta no sector automóvel e na robótica: Implementação de modelos para tarefas como a deteção de peões ou a assistência na manutenção da faixa de rodagem em veículos autónomos ou para a manipulação de objectos em robótica. O QAT permite que esses modelos sejam executados em hardware especializado, como Google Edge TPUs ou NVIDIA Jetson, garantindo baixa latência de inferência para decisões críticas em tempo real. Isto é crucial para aplicações como sistemas de alarme de segurança ou gestão de estacionamento.

Relação com outras técnicas de otimização

O QAT é uma das várias técnicas de otimização da implementação de modelos e é frequentemente utilizado em conjunto com outras técnicas para obter a máxima eficiência.

  • Poda de modelos: Envolve a remoção de conexões redundantes ou sem importância da rede. Um modelo pode ser podado primeiro e depois submetido ao QAT para obter uma compressão ainda maior.
  • Destilação do conhecimento: Treina um modelo menor de "aluno" para imitar um modelo maior de "professor". O modelo de aluno resultante pode então ser optimizado utilizando o QAT.

O Ultralytics suporta a exportação de modelos para vários formatos, como ONNX, TensorRT e TFLite, que são compatíveis com fluxos de trabalho QAT, permitindo uma implementação eficiente em diversos hardwares de empresas como Intel e NVIDIA. É possível gerenciar e implantar seus modelos otimizados para QAT usando plataformas como o Ultralytics HUB. Avaliar o desempenho do modelo usando métricas relevantes após o QAT é essencial para garantir que os requisitos de precisão sejam atendidos.

Junte-se à comunidade Ultralytics

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

Aderir agora
Ligação copiada para a área de transferência