Ultralytics YOLO27: Entre na lista de espera.
Licenciar o YOLO
Voltar ao glossário da Ultralytics

Data Drift

O drift de dados é uma mudança nos dados de entrada em produção em relação à distribuição de treinamento, que reduz a precisão. Veja os tipos de drift, testes estatísticos e retreinamento.

O desvio de dados é uma mudança na distribuição estatística dos dados de entrada recebidos por um modelo implantado, em relação aos dados usados no treinamento. Os modelos pressupõem que as entradas em produção vêm da mesma distribuição que os dados de treinamento; quando essa premissa deixa de valer, a precisão pode cair sem mensagem de erro e sem nenhuma alteração no código ou nos pesos do modelo. Entre as causas comuns em sistemas de visão estão novas câmeras ou lentes, mudanças na iluminação e nas estações do ano, alteração do ângulo da câmera, novas embalagens de produtos e mudanças nos pipelines anteriores, como uma configuração diferente de compressão de imagem. Detectar e responder ao desvio é uma tarefa essencial do monitoramento de modelos e das operações de machine learning (MLOps).

Tipos de mudança de distribuição#

Um classificador modela a probabilidade de um rótulo dado um input, e a mudança pode ocorrer nos inputs, nos rótulos ou na relação entre eles:

  • Mudança de covariáveis: A distribuição dos inputs muda, mas o rótulo correto para qualquer input continua igual. Um detector treinado com imagens diurnas que começa a receber vídeos ao entardecer enfrenta uma mudança de covariáveis, porque um carro continua sendo um carro. Em sentido estrito, desvio de dados significa esse caso.
  • Mudança de rótulos: Também chamada de mudança de probabilidade a priori, ocorre quando as frequências das classes mudam. Se a taxa de defeitos de uma linha de produção sobe de 1% para 5%, a proporção de alarmes do detector que são reais também aumenta, então sua precisão muda, embora o modelo e a aparência de cada defeito permaneçam iguais.
  • Desvio de conceito: A relação entre inputs e rótulos muda, então o mesmo input passa a merecer um rótulo diferente. Os padrões de fraude evoluem conforme os fraudadores se adaptam, e um padrão de qualidade mais rigoroso transforma peças antes aceitas em peças rejeitadas.

O desvio pode ser repentino, como na substituição de uma câmera; gradual, como no acúmulo de sujeira na lente; ou recorrente, como na mudança sazonal da folhagem e na neve.

Detectar desvio de dados#

A detecção de deriva compara uma amostra de referência, geralmente os dados de validação ou de treinamento, com uma janela recente de dados de produção. Sem rótulos, as equipes testam se as duas distribuições de entrada diferem, usando o teste de Kolmogorov-Smirnov para duas amostras (KS) para características contínuas, um teste qui-quadrado para as categóricas ou o índice de estabilidade populacional (PSI), comum na avaliação de crédito. Os pixels brutos têm dimensionalidade alta demais para serem comparados diretamente, por isso o monitoramento de imagens testa estatísticas resumidas, como brilho e nitidez, ou as incorporações de uma rede pré-treinada; um estudo sobre métodos de detecção de mudanças concluiu que os testes para duas amostras aplicados a representações de classificadores pré-treinados funcionavam melhor. As próprias saídas do modelo são um segundo sinal: mudanças nas frequências de classes previstas, nas caixas por imagem ou nas pontuações de confiança geralmente aparecem antes de alguém medir a precisão.

import numpy as np
from scipy.stats import ks_2samp

rng = np.random.default_rng(0)

# Mean brightness (0-255) of 500 training images and two batches of 200 production images
reference = rng.normal(130, 25, 500)
same_light = rng.normal(130, 25, 200)
dusk = rng.normal(110, 25, 200)

# Two-sample Kolmogorov-Smirnov test: a small p-value means the distributions differ
for name, batch in (("same light", same_light), ("dusk", dusk)):
    result = ks_2samp(reference, batch)
    drifted = result.pvalue < 0.01
    print(f"{name}: KS statistic {result.statistic:.3f}, p-value {result.pvalue:.2g}, drift {drifted}")

O lote extraído da distribuição de treinamento tem uma estatística KS de 0.046 e um valor-p de 0.91, enquanto o lote cuja luminosidade média caiu 20 níveis tem uma estatística de 0.346 e um valor-p de 1.1e-15, sendo sinalizado. A estatística KS é a maior distância entre as duas distribuições cumulativas; com amostras muito grandes, até mudanças inofensivas produzem valores-p minúsculos, então os alertas de desvio costumam ser definidos com base na própria estatística KS, que mede a magnitude da mudança, e não apenas no valor-p.

Responder ao desvio#

Somente novos rótulos mostram se uma mudança detectada reduziu a precisão. A resposta padrão é coletar uma amostra recente de dados de produção, rotulá-la, medir a precisão média (mAP) ou outras métricas da tarefa e, se o desempenho cair, retreinar ou ajustar o modelo com uma mistura de dados novos e originais, mantendo exemplos antigos na mistura para evitar o esquecimento catastrófico. O aumento de dados, como mudanças de brilho, desfoque e cor, prepara um modelo para variações previsíveis, e a adaptação de domínio não supervisionada ajusta um modelo a um novo domínio com dados-alvo sem rótulos. Na Ultralytics Platform, a aba Monitoring de um endpoint dedicado mostra em gráficos a confiança média das predições ao longo do tempo, as contagens de classes e os tamanhos e localizações das caixas nas imagens processadas; exemplos recentes podem ser salvos em um conjunto de dados para revisão e retreinamento.

  • Desvio de modelo: A queda no desempenho de um modelo ao longo do tempo, causada pelo desvio de dados e pelo desvio de conceito. Também chamado de degradação do modelo.
  • Divergência entre treinamento e serviço: Uma incompatibilidade entre os dados de treinamento e os de produção, causada por diferenças de processamento nos dois pipelines, como outro método de redimensionamento; ela existe desde o primeiro dia da implantação, em vez de se desenvolver ao longo do tempo.
  • Detecção de anomalias: Sinaliza inputs individuais que diferem do padrão, como um único quadro corrompido. A detecção de desvio compara distribuições inteiras e sinaliza uma semana de imagens uniformemente mais escuras.
  • Detecção fora da distribuição (OOD): Atribui a cada input uma pontuação que indica o quanto ele difere dos dados de treinamento, geralmente para que o modelo possa se abster de responder ou encaminhar esse input a uma pessoa.

Explore as soluções

Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em informações em tempo real para a agricultura, a aquacultura, a conservação e a análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Aplica visão computacional na indústria aeroespacial com Ultralytics YOLO para inspecionar aeronaves, detetar objetos estranhos na pista (FOD), apoiar operações aeroportuárias em terra e detetar defeitos em materiais compósitos.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Comece sua jornada rumo ao futuro do aprendizado de máquina