Glossário

Normalização

Descobre o poder da normalização na aprendizagem automática! Sabe como melhora a formação de modelos, aumenta o desempenho e garante soluções de IA robustas.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

A normalização é uma técnica fundamental de pré-processamento de dados utilizada extensivamente na aprendizagem automática (ML) e na ciência dos dados. O seu principal objetivo é redimensionar as caraterísticas dos dados numéricos para um intervalo padrão comum, frequentemente entre 0 e 1 ou -1 e 1, sem distorcer as diferenças nos intervalos de valores. Este processo garante que todas as caraterísticas contribuem de forma mais igual para o treino do modelo, evitando que as caraterísticas com valores inerentemente maiores (como o salário num conjunto de dados) influenciem desproporcionadamente o resultado em comparação com as caraterísticas com valores mais pequenos (como os anos de experiência). A normalização é particularmente crucial para algoritmos sensíveis ao escalonamento de caraterísticas, como os métodos baseados em descida de gradiente utilizados na aprendizagem profunda (DL) e vários algoritmos de otimização.

Porque é que a normalização é importante

Os conjuntos de dados do mundo real contêm frequentemente caraterísticas com escalas e unidades muito diferentes. Por exemplo, num conjunto de dados para prever a rotatividade de clientes, o "saldo da conta" pode variar entre centenas e milhões, enquanto o "número de produtos" pode variar entre 1 e 10. Sem normalização, os algoritmos de ML que calculam distâncias ou utilizam gradientes, como as máquinas de vectores de suporte (SVM) ou as redes neuronais (NN), podem considerar incorretamente que a caraterística com o intervalo maior é mais importante simplesmente devido à sua escala. A normalização nivela o campo de jogo, garantindo que a contribuição de cada caraterística seja baseada em seu poder preditivo, não em sua magnitude. Isso leva a uma convergência mais rápida durante o treinamento (como visto em épocas reduzidas), melhor precisão do modelo e modelos mais estáveis e robustos. Essa estabilidade é benéfica ao treinar modelos como o Ultralytics YOLO para tarefas como a deteção de objectos ou a segmentação de instâncias, melhorando potencialmente métricas como a precisão média (mAP).

Técnicas de normalização comuns

Existem vários métodos para redimensionar dados, cada um deles adequado a diferentes situações:

  • Escala Mín-Máx: Redimensiona as caraterísticas para um intervalo fixo, normalmente [0, 1]. Calcula como: (valor - min) / (max - min). Este método preserva a forma da distribuição original, mas é sensível a valores atípicos.
  • Padronização de pontuação Z (Escala padrão): Redimensiona as caraterísticas para que tenham uma média de 0 e um desvio padrão de 1. É calculado como: (valor - média) / desvio padrão. Ao contrário do escalonamento Mín-Máx, não vincula os valores a um intervalo específico, o que pode ser uma desvantagem para algoritmos que exigem entradas dentro de um intervalo limitado, mas lida melhor com outliers. Podes encontrar mais informações sobre estes e outros métodos na documentação do Scikit-learn Preprocessing.
  • Escala robusta: Usa estatísticas que são robustas para outliers, como o intervalo interquartil (IQR), em vez de min/max ou média/desvio padrão. É particularmente útil quando o conjunto de dados contém valores discrepantes significativos. Saiba mais sobre o escalonamento robusto.

A escolha entre estas técnicas depende muitas vezes do conjunto de dados específico (como os que se encontram nos conjuntos de dadosUltralytics ) e dos requisitos do algoritmo ML que está a ser utilizado. Os guias sobre o pré-processamento de dados anotados abrangem frequentemente passos de normalização relevantes para tarefas específicas.

Normalização vs. Padronização vs. Normalização de lotes

É importante distinguir a normalização de conceitos relacionados:

  • Padronização: Frequentemente usada de forma intercambiável com a padronização de pontuação Z, esta técnica transforma os dados para que tenham média zero e variância unitária. Enquanto a normalização normalmente dimensiona os dados para um intervalo fixo (por exemplo, 0 a 1), a padronização centraliza os dados em torno da média e dimensiona com base no desvio padrão, sem necessariamente restringi-los a um intervalo específico.
  • Normalização de lote: É uma técnica aplicada em uma rede neural durante o treinamento, especificamente às entradas das camadas ou ativações. Normaliza as saídas de uma camada de ativação anterior para cada minilote, estabilizando e acelerando o processo de treinamento ao reduzir o problema de deslocamento interno das covariáveis. Ao contrário da normalização de caraterísticas (Min-Max ou Z-score), que é uma etapa de pré-processamento aplicada ao conjunto de dados inicial, a Normalização de lotes faz parte da própria arquitetura da rede, adaptando-se dinamicamente durante o treinamento do modelo.

Aplicações da normalização

A normalização é um passo omnipresente na preparação de dados para várias tarefas de Inteligência Artificial (IA) e ML:

Em resumo, a normalização é uma etapa vital de pré-processamento que dimensiona os recursos de dados para um intervalo consistente, melhorando o processo de treinamento, a estabilidade e o desempenho de muitos modelos de aprendizado de máquina, incluindo aqueles desenvolvidos e treinados usando ferramentas como o Ultralytics HUB. Garante uma contribuição justa das caraterísticas e é essencial para algoritmos sensíveis à escala de entrada, contribuindo para soluções de IA mais robustas e precisas.

Lê tudo