A deriva de dados é um desafio comum na aprendizagem automática (ML), em que as propriedades estatísticas dos dados de entrada utilizados para treinar um modelo mudam ao longo do tempo em comparação com os dados que o modelo encontra durante a produção ou inferência. Esta divergência significa que os padrões que o modelo aprendeu durante o treino podem já não representar com precisão o ambiente do mundo real, levando a um declínio no desempenho e na precisão. Compreender e gerir o desvio de dados é essencial para manter a fiabilidade dos sistemas de Inteligência Artificial (IA), especialmente os que funcionam em condições dinâmicas, como os veículos autónomos ou as previsões financeiras.
Porque é que a deriva de dados é importante
Quando ocorre o desvio de dados, os modelos treinados com base em dados históricos tornam-se menos eficazes para fazer previsões com base em dados novos e não vistos. Esta degradação do desempenho pode resultar em decisões erradas, redução do valor comercial ou falhas críticas em aplicações sensíveis. Por exemplo, um modelo treinado para a deteção de objectos pode começar a não detetar objectos se as condições de iluminação ou os ângulos da câmara mudarem significativamente em relação aos dados de treino. O monitoramento contínuo do modelo é crucial para detetar desvios precocemente e implementar ações corretivas, como retreinamento ou atualizações do modelo usando plataformas como o Ultralytics HUB, para preservar o desempenho. Ignorar o desvio de dados pode rapidamente tornar até mesmo modelos sofisticados como o Ultralytics YOLO obsoletos.
Causas de desvio de dados
Vários factores podem contribuir para o desvio de dados, incluindo:
- Mudanças no mundo real: Eventos externos, sazonalidade (por exemplo, padrões de compras de férias) ou mudanças no comportamento do utilizador podem alterar a distribuição dos dados.
- Alterações na fonte de dados: As modificações nos métodos de recolha de dados, calibrações de sensores ou condutas de processamento de dados a montante podem introduzir desvios. Por exemplo, uma alteração no hardware da câmara para um sistema de visão por computador.
- Alterações de caraterísticas: A relevância ou definição das caraterísticas de entrada pode mudar ao longo do tempo.
- Problemas de qualidade dos dados: Problemas como valores em falta, valores atípicos ou erros introduzidos durante a recolha ou processamento de dados podem acumular-se e causar desvios. A manutenção da qualidade dos dados é fundamental.
- Alterações no modelo a montante: Se um modelo se baseia na saída de outro modelo, as alterações no modelo a montante podem causar desvios de dados para o modelo a jusante.
Desvio de dados vs. conceitos relacionados
A deriva de dados diz respeito principalmente a alterações na distribuição dos dados de entrada (a X
variáveis na modelação). Distingue-se de conceitos relacionados:
- Conceito Drift: Refere-se a mudanças na relação entre os dados de entrada e a variável-alvo (o
Y
variável). Por exemplo, a definição de correio eletrónico não solicitado pode mudar ao longo do tempo, mesmo que as caraterísticas do próprio correio eletrónico permaneçam estatisticamente semelhantes. O desvio de dados centra-se nas entradas, enquanto o desvio de conceitos se centra nos padrões ou regras subjacentes que o modelo está a tentar prever. Sabe mais sobre deteção de desvios de conceito. - Deteção de anomalias: Isto envolve a identificação de pontos de dados individuais que são significativamente diferentes da norma ou dos padrões esperados. Embora as anomalias possam, por vezes, assinalar desvios, os desvios de dados referem-se a uma mudança mais ampla e sistémica na distribuição geral dos dados, e não apenas a valores atípicos isolados.
Compreender estas distinções é crucial para práticas eficazes de MLOps.
Aplicações no mundo real
O desvio de dados tem impacto em vários domínios em que os modelos de ML são implementados:
- Serviços financeiros: Os modelos de deteção de fraudes podem sofrer desvios à medida que os autores de fraudes desenvolvem novas tácticas. Os modelos de pontuação de crédito podem sofrer desvios devido a alterações nas condições económicas que afectam o comportamento do mutuário. Lê sobre modelos de visão computacional em finanças.
- Retalho e comércio eletrónico: Os sistemas de recomendação podem sofrer alterações devido a mudanças nas tendências de consumo, sazonalidade ou eventos promocionais. Os modelos de gestão de inventário podem variar se a dinâmica da cadeia de fornecimento ou os padrões de procura dos clientes mudarem.
- Cuidados de saúde: Os modelos para a análise de imagens médicas, como os utilizados para a deteção de tumores, podem sofrer desvios se forem introduzidos novos equipamentos ou protocolos de imagiologia, alterando as caraterísticas da imagem em comparação com o conjunto de dados de treino original obtido a partir de plataformas como a Imagenet.
- Fabrico: Os modelos de manutenção preditiva podem desviar-se se o equipamento sofrer um desgaste diferente do esperado ou se as condições de funcionamento se alterarem. Explora a IA na indústria transformadora.
Detetar e mitigar o desvio de dados
Detetar e tratar o desvio de dados envolve várias técnicas:
- Monitorização do desempenho: O acompanhamento das principais métricas do modelo, como precisão, recuperação e pontuação F1 ao longo do tempo, pode indicar a degradação do desempenho potencialmente causada por desvios. Ferramentas como o TensorBoard podem ajudar a visualizar essas métricas.
- Monitorização estatística: Aplica testes estatísticos para comparar a distribuição dos dados de entrada com os dados de treinamento. Os métodos comuns incluem o teste de Kolmogorov-Smirnov, o Índice de Estabilidade da População (PSI) ou os testes de qui-quadrado.
- Ferramentas de monitorização: Utiliza plataformas e ferramentas de observabilidade especializadas, como Prometheus, Grafana, Evidently AI e NannyML, concebidas para monitorizar modelos de ML em produção. O Ultralytics HUB também oferece recursos para monitorar modelos treinados e implantados por meio de sua plataforma.
- Estratégias de atenuação:
- Reciclagem: Treina regularmente o modelo com dados recentes. OUltralytics HUB facilita os fluxos de trabalho de reciclagem.
- Aprendizagem em linha: Actualiza o modelo de forma incremental à medida que chegam novos dados (utiliza com cuidado, uma vez que pode ser sensível ao ruído).
- Aumento dos dados: Usa técnicas durante o treinamento para tornar o modelo mais robusto a variações nos dados de entrada.
- Adaptação ao domínio: Emprega técnicas que adaptam explicitamente o modelo à nova distribuição de dados.
- Seleção de modelos: Escolhe modelos inerentemente mais robustos às alterações de dados. Explora dicas de treinamento de modelos para um treinamento robusto.
Gerir eficazmente a deriva de dados é um processo contínuo vital para garantir que os sistemas de IA criados com estruturas como PyTorch ou TensorFlow permaneçam fiáveis e forneçam valor durante todo o seu tempo de vida operacional.