O que é vazamento de dados no aprendizado de máquina?

Autora

Tim Mucci

IBM Writer

Gather

O que é vazamento de dados no aprendizado de máquina?

O vazamento de dados no aprendizado de máquina ocorre quando um modelo usa informações durante o treinamento que não estariam disponíveis no momento da previsão. O vazamento faz com que um modelo preditivo pareça preciso até ser implementado em seu caso de uso; então, produzirá resultados imprecisos, levando a tomada de decisão ruim e insights falsos.

O objetivo da modelagem preditiva é criar um modelo de aprendizado de máquina que possa fazer previsões precisas sobre dados futuros do mundo real, que não estão disponíveis durante o treinamento do modelo. Para evitar resultados imprecisos, os modelos não devem ser avaliados com os mesmos dados com os quais são treinados. Então, cientistas de dados normalmente dividem os dados disponíveis em dois conjuntos: um para treinar o modelo e outro para validar o quão bem o modelo funcionará em dados não vistos.

As mais recentes tendências em IA, trazidas a você por especialistas

Receba insights selecionados sobre as notícias mais importantes (e intrigantes) sobre IA. Inscreva-se no nosso boletim informativo semanal Think. Consulte a Declaração de privacidade da IBM.

Agradecemos a você! Você se inscreveu.

Sua assinatura será entregue em inglês. Você encontrará um link para cancelar a assinatura em cada boletim informativo. Você pode gerenciar suas assinaturas ou cancelar a assinatura aqui. Consulte nossa Declaração de privacidade da IBM para obter mais informações.

Exemplos e tipos de vazamentos de dados

O vazamento de dados acontece quando dados de fora do conjunto de dados de treinamento são usados para criar o modelo, mas esses dados futuros não estarão disponíveis quando o modelo for usado para previsão. O modelo terá um bom desempenho em testes e validação, mas quando usado em produção, ele se torna totalmente impreciso.

Há dois tipos de vazamentos: vazamento do alvo e contaminação de treinar-testar.

Vazamento do alvo: os modelos incluem dados que não estarão disponíveis quando o modelo for usado para fazer previsões.

Usar informações que não estarão disponíveis durante as previsões do mundo real leva ao overfitting, onde o modelo tem um desempenho excepcionalmente bom em dados de treinamento e validação, mas ruim em produção.

Contaminação durante treinar-testar: quando dados de treinamento e validação são usados para criar um modelo, geralmente devido à divisão ou pré-processamento inadequados.

Exemplo de vazamento do alvo

Por exemplo, imagine um modelo criado para prever fraudes de cartão de crédito. Esse problema é preocupante nas aplicações de forecasting, em que os modelos precisam fazer previsões futuras confiáveis com base em dados incompletos. O conjunto de dados brutos conterá informações sobre o cliente, o valor da transação, a localização, se foi detectada fraude e se um estorno foi recebido.

Ao treinar o modelo, as colunas de detecção de fraude e estorno terão os valores verdadeiro ou falso inseridos. No mundo real, um estorno é normalmente iniciado após a detecção; portanto, essas informações não estariam disponíveis no momento da detecção.

Treinar um modelo com essas informações ensina que transações com estorno são quase sempre fraudulentas. Durante a validação, o modelo apresentará alta precisão porque, no treinamento, a relação entre fraude e estornos é forte. No entanto, as informações de estornos não estarão disponíveis quando implementado, e o modelo terá um desempenho ruim na prática.

Exemplo de contaminação de treinar-testar

Imagine um cientista de dados construindo um modelo para prever os preços de casas com base em funcionalidades como tamanho da casa, número de quartos e bairro. Padronizar as funcionalidades numéricas (como tamanho da casa e idade) para que todas tenham a mesma escala é uma etapa comum de pré-processamento, o que é útil para muitos algoritmos de aprendizado de máquina.

No entanto, suponhamos que o cientista de dados aplique a padronização a todo o conjunto de dados antes de dividi-lo em conjuntos de dados de treinamento e teste. Nesse caso, o modelo indiretamente "verá" as informações do conjunto de teste durante o treinamento. Como resultado, o desempenho do modelo nos dados de teste pode parecer artificialmente inflado, porque as informações do conjunto de teste foram usadas na etapa de pré-processamento. Isso facilita para o modelo ter um bom desempenho no conjunto de teste, mas pode reduzir sua capacidade de generalizar para dados novos não vistos.

As etapas de pré-processamento, como dimensionamento, imputação ou seleção de funcionalidades, devem ser ajustadas somente nos dados de treinamento e, em seguida, aplicadas ao conjunto de validação, em vez de ajustá-las ao conjunto de dados inteiro antes da divisão. A aplicação incorreta de transformadores, como escalonamento ou normalização, pode levar à contaminação de treinar-testar, especialmente em modelos de redes neurais. Quando essas etapas de pré-processamento executadas de forma inadequada são realizadas em todo o conjunto de dados, isso leva a previsões com viés e a uma sensação irreal do desempenho do modelo.

AI Academy

Coloque a IA para trabalhar no serviço ao cliente

Veja como a IA generativa pode encantar os clientes com uma experiência mais integrada e aumentar a produtividade da organização nessas três áreas importantes: autoatendimento, agentes humanos e operações da central de contato.

Causas do vazamento de dados

O vazamento de dados pode ser um erro demorado e multimilionário, e o vazamento no aprendizado de máquina ocorre devido a uma variedade de fatores. Algumas causas comuns são:

Inclusão de informações futuras: quando são usadas informações indisponíveis, que não estariam disponíveis no momento da previsão em um cenário do mundo real.

Seleção de funcionalidades inadequadas: seleção de funcionalidades correlacionadas ao alvo, mas não relacionadas causalmente. O modelo está aprendendo a fazer exploração de informações às quais não teria acesso em previsões do mundo real.

Contaminação de dados externos: mesclar conjuntos de dados externos com dados de treinamento pode levar a previsões com viés ou imprecisas, pois os dados externos podem conter informações diretas ou indiretas sobre a variável-alvo.

Erros de pré-processamento de dados: a divisão de dados incorreta ocorre com o dimensionamento dos dados antes de dividi-los em conjuntos de treinamento e validação ou ao preencher missing values com informações de todo o conjunto de dados. Isso pode ser especialmente problemático em modelos de deep learning, em que muitas vezes é necessário um pré-processamento extenso, tornando crucial evitar a mistura de dados de treinamento e teste.

Validação cruzada incorreta: ao realizar a validação cruzada em um conjunto de dados com dados dependentes do tempo, se pontos de dados do futuro forem incluídos, o modelo obterá acesso a informações que não deveria ter, resultando em avaliações excessivamente otimistas.

Normalização: as transformações de dados, como o dimensionamento ou a normalização de funcionalidades, quando aplicadas incorretamente aos dados de treinamento e de teste em conjunto, em vez de aplicadas separadamente, levam ao vazamento de dados.

Vazamento de alterações de validação e processo: mudar a forma como a validação é realizada pode introduzir vazamento, permitindo novas informações no conjunto de treinamento. Ajustar o processo parcialmente, executando novamente a validação cruzada ou dividindo os dados novamente após ajustar os modelos, pode inadvertidamente vazar informações no processo de treinamento.

Impacto do vazamento de dados nos modelos de aprendizado de máquina

O vazamento de dados é uma armadilha comum no treinamento de algoritmos de aprendizado de máquina para modelagem preditiva. Um estudo da National Library of Medicine1 constatou que em 17 campos científicos diferentes onde os métodos de aprendizado de máquina foram aplicados, pelo menos 294 artigos científicos foram afetados por vazamentos de dados, levando a um desempenho excessivamente otimista.

Um estudo de Yale2 descobriu que o vazamento de dados pode inflar ou desinflar métricas de desempenho de modelos baseados em neuroimagens, dependendo se as informações vazadas introduzem ruído ou criam padrões irreaiss. Esses modelos são usados para diagnosticar doenças, identificar tratamentos e ajudar neurocientistas a entender melhor a relação entre cérebro e corpo.

O vazamento de dados nos modelos de aprendizado de máquina pode ter vários impactos em diversas áreas e tipos de dados. Aqui estão os mais comuns:

Generalização ruim para novos dados: quando os modelos são treinados com informações que não representam o mundo real, eles terão dificuldade em generalizar para os dados não vistos. As previsões sobre novos dados podem ser imprecisas e pouco confiáveis.

Tomada de decisão com viés: vieses nos dados vazados correm o risco de distorcer o comportamento do modelo, resultando em decisões injustas e desconectadas dos cenários do mundo real.

Insights e descobertas não confiáveis: o vazamento de dados compromete a confiabilidade dos insights derivados do modelo, o que leva os usuários a desconfiar dos resultados.

Métricas de desempenho infladas: o vazamento em modelos de aprendizado de máquina geralmente resulta em modelos que mostram falsamente alta exatidão e precisão.

Desperdício de recursos: encontrar e corrigir o vazamento de dados após o treinamento de um modelo é demorado e caro. Corrigir o vazamento de dados requer o retreinamento de modelos a partir do zero, o que é computacionalmente caro, e o retrabalho de todo o pipeline do modelo, desde o pré-processamento de dados até o retreinamento, o que pode consumir muitos recursos em termos de esforço humano e custos computacionais.

Perda de confiança: modelos não confiáveis acabam levando à desconfiança nas equipes de ciência de dados e no processo analítico como um todo.

Riscos legais e de conformidade: o vazamento de dados na análise preditiva de dados pode levar a riscos legais e regulatórios. Se informações confidenciais forem usadas indevidamente, isso poderá resultar em penalidades e danos à reputação.

Detecção de vazamento de dados no aprendizado de máquina

A detecção do vazamento de dados exige que as organizações estejam cientes de como os modelos são preparados e processados; isso requer estratégias rigorosas para validar a integridade dos modelos de aprendizado de máquina. Aqui estão algumas melhores práticas a serem lembradas em relação à construção de modelos e detecção de vazamento de dados:

Prepare: os dados devem ser divididos adequadamente, e as etapas de pré-processamento devem ser aplicadas somente ao conjunto de dados de treinamento. Avalie todas as funcionalidades para garantir que elas não representem informações futuras ou indisponíveis durante a previsão.

Pesquise: depois que o modelo for treinado, investigue padrões suspeitos que possam indicar vazamento. Avalie a importância das funcionalidades e o comportamento do modelo para detectar quaisquer relacionamentos não realistas.

Teste: teste um modelo limitado com dados do mundo real. Monitore seu desempenho em cenários do mundo real; se o desempenho cair significativamente, isso pode indicar que ocorreu vazamento durante o treinamento.

Aqui estão alguns sinais de alerta comuns para detectar vazamentos:

Desempenho excepcionalmente alto: se um modelo apresentar exatidão, precisão ou recall significativamente maiores do que o esperado, especialmente nos dados de validação, isso pode indicar vazamento de dados.

Discrepâncias entre o desempenho de treinamento e teste: uma grande lacuna entre o desempenho no conjunto de treinamento e no conjunto de teste é um sinal de que o modelo pode estar com overfitting devido a vazamento.

Resultados inconsistentes de validação cruzada: se o desempenho entre as dobras de validação cruzada variar muito ou parecer excepcionalmente alto, pode ser devido a vazamento de treinar-testar ou divisão inadequada.

Comportamento inesperado do modelo: se um modelo depender muito de funcionalidades que não fazem sentido logicamente, isso pode indicar vazamento.

Técnicas de avaliação adequadas

Minimizar o vazamento de dados pode ser feito de várias maneiras, e várias ferramentas são empregadas para proteger a integridade do modelo. A validação cruzada, especialmente séries temporais ou k-fold estratificado, ajuda a avaliar os modelos corretamente e destaca possíveis vazamentos. Em LLMs (grandes modelos de linguagem), a validação cruzada e o tratamento rigoroso dos dados são essenciais para evitar o treinamento do modelo com dados que ele pode encontrar mais tarde durante a inferência, o que prejudicaria sua capacidade de responder a novas entradas. O uso de um conjunto de retenção separado, que permanece intocado durante o treinamento, adiciona proteção contra vazamentos.

A importância das funcionalidades pode revelar se o modelo depende de dados que não estariam disponíveis durante as previsões. A visualização de dados e previsões do modelo pode expor padrões ou anomalias indicativos de vazamento. Além disso, especialistas no domínio devem examinar o modelo para identificar se o modelo está usando dados irreais ou indisponíveis, ajudando a descobrir funcionalidades problemáticas.

Como evitar o vazamento de dados no aprendizado de máquina

Para evitar o vazamento de dados, as organizações devem lidar com tratamento cuidadoso dos dados e avaliações sistemáticas. Veja a seguir algumas práticas essenciais:

Pré-processamento de dados: para evitar vazamento de informações entre conjuntos, aplique etapas de pré-processamento, como dimensionamento ou imputação de missing values separadamente para conjuntos de treinamento e teste. Realize pré-processamento, como escalonamento, codificação e imputação separadamente para conjuntos de treinamento e teste — automatize pipelines quando possível.

Divisão adequada de dados: divida os conjuntos de treinamento e teste corretamente. Uma divisão de treinar/testar cuidadosamente planejada protege as informações do conjunto de testar de vazarem para a fase de treinar. Para dados dependentes de tempo, divida cronologicamente para evitar que dados futuros entrem no processo de treinamento. Para verificar se há vazamento, mantenha um conjunto de validação separado e distinto, não usado durante o treinamento, representativo dos dados do mundo real.

Validação cruzada: use a validação cruzada k-fold para testar o modelo em vários subconjuntos de dados, o que ajuda a detectar possíveis vazamentos e melhora a generalização.

Engenharia de funcionalidades: evite criar funcionalidades que introduzam dados futuros. Avalie as funcionalidades derivadas para confirmar se refletem somente o que estaria disponível no momento da previsão. Avalie regularmente a relevância das funcionalidades para confirmar se elas são apropriadas e não introduzem informações indisponíveis no momento da previsão.

Validação baseada em tempo: para dados de séries temporais, use a validação baseada em tempo para imitar o desempenho do mundo real. Isso ajuda a garantir que dados passados sejam usados para prever resultados futuros e evita vazamento de dados futuros. Trate os dados de séries temporais com cuidado, usando métodos como a validação por janela móvel ou validação walk-forward, para evitar vazamentos de dados futuros durante o treinamento.

Avaliação regular do modelo: monitore continuamente o desempenho durante o treinamento e o teste para detectar quaisquer alterações inesperadas que indiquem vazamento.

Vazamento de dados na prevenção contra perda de dados

Há outra definição de vazamento de dados que não tem nada a ver com aprendizado de máquina, mas se refere à exposição não intencional de dados do ponto de vista da segurança de dados. O vazamento de dados na data loss prevention (DLP) ocorre quando informações confidenciais são expostas involuntariamente a partes não autorizadas. Por exemplo, um servidor de armazenamento em nuvem mal configurado pode permitir fácil acesso a informação de identificação pessoal (PII) e segredos comerciais.

Os vetores mais comuns de vazamento de dados decorrem de erro humano, como um funcionário perder seu notebook ou compartilhar informações confidenciais por plataformas de e-mail e mensagens. Os hackers podem usar dados expostos para cometer roubo de identidade, roubar detalhes de cartões de crédito ou vender os dados na dark web.

Soluções relacionadas
IBM watsonx.ai

Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.

Conheça o watsonx.ai
Soluções de inteligência artificial

Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.

Explore as soluções de IA
Consultoria e serviços em IA

Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.

Explore os serviços de IA
Dê o próximo passo

Obtenha acesso completo aos recursos que abrangem o ciclo de vida do desenvolvimento da IA. Produza soluções poderosas de IA com interfaces fáceis de usar, fluxos de trabalhos e acesso a APIs e SDKs padrão do setor.

Explore o watsonx.ai Agende uma demonstração em tempo real
Notas de rodapé