Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

Quantização de Modelo

Otimize o desempenho da IA com a quantização de modelo. Reduza o tamanho, aumente a velocidade e melhore a eficiência energética para implementações no mundo real.

A quantização de modelos é uma técnica transformadora na aprendizagem automática concebida para reduzir os os custos computacionais e de memória da execução de redes neuronais. Ao converter os parâmetros do modelo do modelo - especificamente pesos e activações - de números de vírgula flutuante de alta precisão (normalmente 32 bits, conhecidos como FP32) para formatos de menor precisão, como números inteiros de 8 bits (INT8), os programadores podem reduzir significativamente o tamanho do ficheiro do modelo. Este processo é essencial para permitir implantação eficiente de modelos em hardware com recursos limitados, garantindo que as capacidades sofisticadas de IA podem funcionar sem problemas em tudo, desde smartphones a sensores industriais.

Como a Quantização de Modelos Funciona

O mecanismo central da quantização envolve o mapeamento de uma vasta gama de valores contínuos para um conjunto mais pequeno de valores discretos. discretos. Num modelo típico de aprendizagem profunda, os parâmetros são armazenados como números de ponto flutuante de 32 bits para manter uma elevada precisão durante a fase de treinamento. No entanto, durante a inferência - a fase em que o modelo faz previsões - este nível de precisão é muitas vezes desnecessário.

A quantização comprime estes valores, o que reduz a largura de banda da memória necessária para ir buscar para obter os pesos do modelo e acelera as operações matemáticas. O hardware moderno, incluindo CPUs e aceleradores e aceleradores especializados, como GPUs, geralmente têm conjuntos de instruções dedicados para aritmética de inteiros que são mais rápidos e mais eficientes em termos de energia do que seus flutuante. Essa otimização ajuda a minimizar a latência de inferência, proporcionando uma experiência de utilizador mais rápida em aplicações em tempo real.

Tipos de quantização

Existem duas abordagens principais para aplicar esta otimização, cada uma servindo diferentes fases do ciclo de vida do desenvolvimento ciclo de vida:

  • Quantização pós-treinamento (PTQ): Este método é aplicado depois de o modelo ter sido totalmente treinado. É requer um conjunto de dados de calibração para determinar a gama dinâmica de activações e pesos. Ferramentas como o TensorFlow Lite oferecem um suporte suporte robusto para PTQ, tornando-o uma escolha popular para optimizações rápidas.
  • Treino sensível à quantização (QAT): Nesta abordagem, o modelo simula os efeitos da efeitos da quantização durante o próprio processo de formação. Ao introduzir nós de quantização "falsos", a rede aprende a adaptar-se à precisão mais baixa, resultando frequentemente numa melhor retenção da precisão em comparação com o PTQ. Pode saber mais sobre esta técnica específica no nosso Treinamento sensível à quantização (QAT) página.

Aplicações no Mundo Real

A quantização é uma pedra angular da IA de ponta, permitindo que tarefas complexas tarefas complexas sejam executadas localmente em dispositivos sem depender da conetividade da nuvem.

  1. Visão computacional móvel: As aplicações para smartphones que oferecem funcionalidades como a desfocagem do fundo em tempo real ou filtros de rosto dependem de modelos quantizados. Por exemplo, a execução de um modelo de deteção de objectos modelo de deteção de objectos num telemóvel requer uma eficiência para evitar o desgaste da bateria e o sobreaquecimento.
  2. IoT industrial e robótica: Na robótica, as unidades autónomas funcionam frequentemente com bateria e utilizam processadores incorporados como o NVIDIA Jetson. Os modelos quantizados permitem que esses permitem que esses robôs processem dados visuais para navegação e prevenção de obstáculos com um atraso mínimo, o que é fundamental para a segurança em veículos autónomos.

Implementar a quantização com o Ultralytics YOLO

O quadro Ultralytics simplifica o processo de exportação de modelos para formatos de fácil quantização. O seguinte exemplo demonstra como exportar um modelo YOLO11 para TFLite com a quantização INT8 activada. Este processo trata automaticamente da calibração utilizando os dados especificados.

from ultralytics import YOLO

# Load the standard YOLO11 model
model = YOLO("yolo11n.pt")

# Export to TFLite format with INT8 quantization
# The 'data' argument provides calibration images
model.export(format="tflite", int8=True, data="coco8.yaml")

Quantização vs. Outras Técnicas de Otimização

É útil distinguir a quantização de outras estratégias de otimização de modelos, uma vez que são frequentemente utilizadas em conjunto, mas funcionam de forma diferente:

  • Quantização vs. poda: Enquanto a quantização reduz a precisão dos pesos, a poda do modelo envolve a remoção de conexões conexões (pesos) desnecessárias para criar uma rede esparsa. A poda altera a estrutura, enquanto a quantização altera o tipo de dados.
  • Quantização vs. Destilação: A destilação do conhecimento treina um modelo mais pequeno modelo do aluno para imitar um modelo maior do professor. A quantificação pode ser aplicada posteriormente ao modelo do aluno para reduzir ainda mais o seu tamanho.
  • Quantização vs. Precisão mista: A precisão mista é principalmente uma técnica de treino que usa uma mistura de FP16 e FP32 para acelerar o treinamento e reduzir o uso de memória em GPUs, enquanto a quantização é normalmente uma otimização em tempo de inferência utilizando números inteiros.

Desenvolvimentos futuros

À medida que os aceleradores de hardware se tornam mais especializados, a importância da quantização continua a crescer. A investigação futura Ultralytics como o próximo YOLO26, tem como objetivo aumentar a eficiência ainda mais, concebendo arquitecturas que são nativamente robustas à quantização agressiva, garantindo que visão computacional de alto desempenho permanece acessível mesmo nos dispositivos mais pequenos.

Para uma compatibilidade mais alargada, os modelos quantizados são frequentemente implementados utilizando normas interoperáveis como ONNX ou motores de inferência optimizados optimizados, como o TensorRT e OpenVINO.

Junte-se à comunidade Ultralytics

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

Junte-se agora