O blog da AWS

Avanço na Detecção de Fraude: ML em Pesquisa de Inquéritos Online

Por AWS Admin

Guest post por Jakob Ludewig, Cientista Sênior de Dados, Dalia Research 

 

A transição da indústria de pesquisa de mercado longe de entrevistas telefônicas e presenciais para plataformas on-line aumentou maciçamente a velocidade e o alcance da coleta de dados. As modernas plataformas de pesquisa on-line, como a Dalia Research, permitem que milhões de usuários todos os dias compartilhem seus pensamentos sobre política, questões sociais ou comportamento do consumidor.

 

 

Exemplo da interface do usuário da plataforma de coleta de dados da Dalia.

Fraude de pesquisa está aumentando

No entanto, convidar toda a internet para compartilhar seus pensamentos e opiniões inevitavelmente atrairá fraudadores. No mundo da fraude de votação on-line geralmente se manifesta como padrões indesejados nas respostas da pesquisa: usuários deliberadamente dando respostas sem sentido ou aleatório, mentir sobre seus perfis demográficos ou tentando ignorar medidas de segurança para responder a mesma pesquisa várias vezes.

Se esse tipo de comportamento não for detectado, os dados se tornarão pouco confiáveis, levando a negócios errados ou decisões políticas. Como padrões de fraude podem ser muito complexos e estão em constante mudança, a qualidade dos dados continua sendo um dos problemas mais difíceis do setor de pesquisa on-line.

 

Construindo um modelo

Na Dalia, uma força-tarefa foi criada para abordar essas questões e garantir a qualidade dos dados gerados através da plataforma. Uma das ações dessa força-tarefa foi construir um mecanismo preventivo que preveja comportamentos fraudulentos mesmo antes de o usuário entrar em qualquer pesquisa.

Para isso, o aprendizado de máquina foi identificado como a ferramenta ideal. Tendo já construído várias soluções de aprendizado de máquina bem-sucedidas (incluindo um produto inteiro de pesquisa de mercado), a equipe poderia aproveitar experiências passadas. O objetivo deste modelo específico era prever a probabilidade de um usuário cometer fraude no sistema. Essa probabilidade pode então ser usada para decidir em tempo real se deve ou não permitir que um usuário entre em uma pesquisa.

Obtendo os Dados

Na pesquisa, a fraude é geralmente detectada durante uma análise detalhada e manual dos dados. Este processo é realizado diretamente na própria plataforma da Dalia ou nas plataformas de coleta de dados de parceiros externos. Dependendo da integração com cada parceiro respectivo, essas informações podem ser comunicadas de várias maneiras diferentes (enviadas via APIs, CSVs baixados de sites, relatórios de texto por e-mail, etc.).

Portanto, o primeiro passo deste projeto centrou-se na harmonização e automatização da integração desses dados nas bases de dados de produção interna. Isso permitiu uma correspondência fácil da variável de destino com todas as informações incluídas sobre a interação fraudulenta do usuário no sistema.

A segunda etapa foi configurar um processo de replicação desses dados no Amazon S3 para que ele pudesse ser consultado pelo Amazon Athena. O Amazon Athena é um serviço de consulta que permite analisar e extrair dados armazenados no S3 de forma eficiente usando SQL padrão. Desta forma, a geração dos dados de formação poderia ser acelerar e dissociada das bases de dados de produção.

Prototipagem e Ajuste Fino do Modelo

Usando esses dados de treinamento, um primeiro protótipo do modelo poderia ser construído e avaliado. Esse processo foi realizado no Amazon SageMaker, uma plataforma de aprendizado de máquina baseada em nuvem que oferece soluções para hospedar Jupyter Notebooks, acessar recursos de computação para treinamento de modelos, ajuste automatizado de hiperparâmetros e serviços de implantação de modelos.

Como modelo, um classificador XGBoost foi escolhido que é conhecido por mostrar consistentemente alto desempenho em uma ampla gama de problemas. Ele também oferece trabalhos de treinamento muito eficientes, mesmo em grandes conjuntos de dados, o que permite iterações rápidas durante a fase de prototipagem do modelo e a inclusão de um grande número de variáveis. Uma versão integrada do XgBoost também está disponível no Amazon SageMaker.

Além disso, o XGBoost pode ser configurado para cumprir certas propriedades importantes, como produzir probabilidades calibradas. Esta propriedade garante que as previsões do modelo podem ser interpretadas no seguinte sentido: Se, por exemplo, o modelo prevê uma probabilidade de 10% de uma determinada interação do usuário ser fraude, também será fraudulento na realidade cerca de 10% do tempo. Isso é importante, pois torna a saída do modelo acionável a partir de uma perspectiva de negócios.

Nesta configuração, uma primeira versão do modelo foi treinada em milhões de observações com centenas de recursos. Esse modelo foi otimizado usando tarefas de ajuste de hiperparâmetros do Amazon SageMaker em que centenas de modelos foram treinados com diferentes combinações de parâmetros do modelo.

 

Visão geral da arquitetura de coleta de dados da Dalia, mostrando a importação de sinais de fraude de parceiros externos, geração de dados de treinamento, treinamento de modelos e integração com o Amazon SageMaker.

 

Integração da Solução na Plataforma

Nesse ponto, o modelo estava pronto para ser usado para avaliar o comportamento do usuário na plataforma e bloquear atividades potencialmente fraudulentas.

Foi acordado com a equipe de engenharia que o modelo deveria ser atendido por meio de uma API REST aceitando uma carga JSON com todos os preditores do modelo. Isso tornou necessário criar uma etapa de pré-processamento na API que analisasse a carga útil JSON em uma entrada adequada para o modelo XGBoost. Essa etapa de pré-processamento foi implementada como um segundo modelo que seria combinado com o modelo XGBoost em um pipeline de modelo. Esse modelo combinado pode então ser implantado em um endpoint do Amazon Sagemaker que lida com os detalhes de implantação e escalabilidade automática necessários.

Para obter mais detalhes sobre como implementar tal pipeline modelo, encontre o código de exemplo fornecido aqui.

Paralelamente, a equipe de engenharia desenvolveu a funcionalidade para consultar o endpoint da plataforma de coleta de dados. Isso foi feito usando o SageMaker Ruby Gem , que também lida com a autenticação com o endpoint.

No total, a implementação da solução levou uma equipe de um engenheiro de back-end e um cientista de dados aproximadamente 2 meses desde a fase de ideação até a implantação da produção. Esta foi uma aceleração considerável em relação aos projetos anteriores, onde o treinamento e a implantação de modelos foram feitos em uma plataforma personalizada, introduzindo uma significativa sobrecarga de desenvolvimento e manutenção.

 

Os resultados

Redução de Atividades Fraudulentas

Durante a fase de modelagem, o modelo já apresentou desempenho muito alto durante a validação cruzada, oferecendo uma troca muito favorável entre falsos positivos (receita perdida devido ao bloqueio desnecessário) e falsos negativos (atividade fraudulenta não detectada).

No entanto, os resultados da fase de modelagem não necessariamente se traduzem em ganhos do mundo real, pois nem todos os aspectos do ambiente de produção podem ser replicados. Portanto, a avaliação final do modelo teve que ser feita após a implantação.

Neste caso particular, o modelo foi ativado juntamente com duas outras soluções de detecção de fraude de terceiros que imediatamente levaram a uma queda significativa na atividade fraudulenta no sistema. Para identificar qual das três soluções mais contribuiu para essa queda foi realizado um teste A/B no qual o modelo de Dalia superou ambos os outros candidatos.

Além disso, esses resultados foram acompanhados por feedback muito positivo dos parceiros externos da Dalia, congratulando-se com os esforços para melhorar a qualidade dos dados. Um dos maiores compradores do mercado compartilhou que os esforços contínuos da Dalia em melhorar a qualidade os trouxeram “bem abaixo da taxa ampla da plataforma” para incidências de fraude, medido agora em torno de 50% menor do que a média em centenas de outros fornecedores.

Desenvolvimentos adicionais

Desde a sua implantação inicial, muitas melhorias foram feitas no modelo e na infraestrutura circundante. Um passo importante foi a integração do framework Metaflow . Utilizando a estreita integração do Metaflow com os serviços da AWS, como o AWS Batch e o Step Functions, o treinamento do modelo pode ser automatizado, reduzindo custos. Além disso, ganhos significativos poderiam ser obtidos em relação à manutenção, monitoramento e reprodutibilidade de execuções de modelos, estabelecendo as bases para futuras melhorias

 

Este artigo foi traduzido do Blog da AWS em Inglês.

 


Revisor

Renato Barbosa é Principal AI/ML GTM