Na Feedzai, utilizamos enormes quantidades de dados para ajudar as empresas a combater a fraude com eficiência. Faz parte da nossa estratégia de combate ao crime financeiro em constante evolução. E esse é um esforço em equipe. Cientistas de dados usam nossa plataforma para criar modelos de aprendizado de máquina a partir de dados históricos para impedir fraudadores no mundo todo em tempo real. Analistas de fraude investigam os casos mais complexos e tomam providências. Investigadores analisam as tendências entre os fraudadores, criando regras para complementar o modelo e impedir futuros ataques.

Todos esses profissionais utilizam dados para alcançar suas metas com sucesso. Por exemplo, um cientista de dados lida com terabytes de transações enquanto um analista investiga os históricos dos clientes. No entanto, apesar das diferenças no tamanho e escopo dos dados que eles manipulam, ambos precisam dar sentido aos dados.

Na minha opinião, a visualização é uma das melhores ferramentas para essa finalidade — e estudos continuam a comprovar isso.

Gráficos de combate à fraude

Os engenheiros de visualização de dados trabalham para tornar dados complexos compreensíveis por meio de representações visuais. Pegamos os dados, abstraímos as informações e codificamos suas propriedades por meio de canais visuais para criar uma representação visual.

Através do processamento visual pré-atentivo, a percepção humana é capaz de decodificar rapidamente formas, cores, posições e movimentos. Nas palavras de Colin Ware, “As características que se destacam estão codificadas no cérebro, não são aprendidas”. Portanto, pode-se pensar na nossa visão como um canal de alta capacidade para transmitir informações ao cérebro.

As visualizações de dados permitem que as pessoas entendam padrões e rapidamente identifiquem relações ocultas nos dados.

Essa visualização rápida de dados funciona muito bem no Insights, ferramenta de relatórios da Feedzai, que disponibiliza os dados (incluindo métricas de fraude em tempo real, regras mais acionadas e uma visão geral das operações diárias dos analistas) em vários painéis de controle. Você pode criar gráficos nesses painéis de controle que podem ser lidos rapidamente, geralmente acompanhados de medidores e outras métricas.

No mundo da visualização rápida de dados, há uma tendência de se manter a simplicidade e os gráficos mais convencionais, mas ainda assim, deve haver espaço para criatividade. Como disse Amanda Cox,

“Existe uma vertente no mundo da visualização de dados que defende que tudo poderia ser representado por um gráfico de barras. Isso pode ser verdade, mas também pode ser um mundo sem graça”.

Nem todas as visualizações são simples. Nossos cientistas de dados frequentemente criam gráficos elaborados que podem ser usados para explorar diferentes perspectivas dos dados (por exemplo, como a forma da distribuição de uma variável categórica muda entre transações legítimas e fraudulentas, e como isso se relaciona com a taxa de fraude de cada categoria). É preciso um olha mais atento para interpretar gráficos desse tipo, mesmo que você tenha uma habilidade excepcional de processamento visual pré-atentiva. Esses gráficos devem ser estudados com atenção, porque codificam muitos aspectos dos dados. Trata-se de uma visualização de dados mais demorada, em que você investe mais tempo para obter análises mais robustas e aprofundadas.

Visualização rápida e visualização demorada de dados

Para explorar ainda mais as diferenças entre visualização rápida e visualização demorada de dados, confira o artigo Data Visualization, Fast and Slow de Elijah Meeks.

Como engenheiros de visualização de dados da Feedzai, é importante sempre termos em mente em que ponto do espectro de visualização rápida ou demorada se encontra a visualização, quanto tempo os leitores precisam para analisar o gráfico e qual é o nível de conhecimento desses leitores em relação a dados. Nem toda situação exige uma visualização de dados rápida, e nem todo usuário precisa de um gráfico interativo e elaborado. Como em muitas coisas, há um momento e um lugar apropriados para cada tipo.

Está tudo interconectado

Esta publicação narra nossa exploração de diagramas de nó-link e recursos baseados em grafos, que são fundamentais para identificar padrões complexos de fraude, e como nossa descoberta impulsionou uma das inovações da Feedzai, o Genome.

Para começar, vejamos uma visão rápida do mundo dos pagamentos e fraudes.

Geralmente somos aconselhados a ficar atentos às nossas senhas e aos dados do cartão de crédito. Somos instruídos a protegê-los de hackers maliciosos e solitários que se escondem atrás de telas de computador e tentam roubar nossos dados e dinheiro.

Embora existam hackers que operam por conta própria, os fraudadores raramente agem isoladamente. Geralmente, são membros de organizações fraudulentas e participam de diversas atividades, como a instalação de dispositivos de clonagem de cartões em caixas eletrônicos e a realização de ataques de phishing online.

Ao tentarem converter cartões roubados em produtos que possam ser revendidos e fazerem compras online, os fraudadores costumam se conectar através de redes privadas, mudar de dispositivo e simular sua localização em diferentes partes do mundo. Porém, isso aumenta as chances de deixarem um rastro acidentalmente. Basta apenas um fraudador descuidado (alguém que ficou acordado a noite inteira assistindo a vários episódios de “Stranger Things” na Netflix) esquecer um passo no procedimento de troca para deixar um rastro. Quando isso acontece, a identidade da organização é exposta e é possível detê-los. Pode parecer um clichê, mas tudo está interconectado.

Tabelas são uma péssima forma de contar casos de fraudes

Ao reunir as histórias de fraudes por meio dessas conexões — como um dispositivo compartilhado entre dois usuários ou alguém utilizando mais de dez cartões diferentes (cada um deles compartilhado com outros usuários distintos) — descobrimos que tabelas não são uma boa opção para essa tarefa.

Tabela exibindo dados

As coisas começaram a se parecer um pouco com isso (veja a imagem abaixo). Por esse motivo, decidimos dar uma chance aos diagramas de nó-link e recursos baseados em grafos no primeiro Zaickathon, o hackathon da Feedzai.

Captura de tela de um homem em pânico com papelada ao fundo
Captura de tela da série “It’s Always Sunny in Philadelphia“.

GIF de ferramenta de análise visual de links e visualização de dados

 

Gostaria de ler a publicação original ou outros artigos semelhantes? Confira o Feedzai TechBlog, um compilado de histórias sobre como lutamos contra vilões com a ajuda da ciência de dados, inteligência artificial e engenharia.

O Zaickathon da Feedzai

A Feedzai realizou seu primeiro Zaickathon em fevereiro de 2018. Durante dois dias, tivemos pizzas, toneladas de café, camisetas e um monte de ideias. Foi também a oportunidade perfeita para testar um novo método de visualização.

Escolhemos um conjunto de dados de transações de carteiras digitais com esquemas de fraude conhecidos e os visualizamos com um diagrama de nó-link. Cada nó representava uma entidade (um cliente, cartão de crédito, e-mail ou dispositivo distinto) no conjunto de dados. Dois nós eram conectados (ligados por uma aresta) se suas entidades participaram da mesma transação. Confira um exemplo:

  • Imagine que somos uma loja de tênis online. Recebemos um pedido de Zoe. A partir dos dados da transação, sabemos que Zoe utiliza seu smartphone, um Samsung S9, para comprar um novo par de tênis. Também sabemos que ela paga com cartão de débito. Com base nessas entidades, podemos criar o seguinte grafo:

 

Grafo conectando o smartphone de Zoe ao cartão de débito (seu meio de pagamento)

  • Algumas semanas se passam e recebemos mais alguns pedidos de Zoe. Ela paga com o mesmo cartão, mas, desta vez, ela usa um novo dispositivo Huawei. Atualizamos nosso grafo e conectamos o novo dispositivo à Zoe e seu cartão de débito. A espessura da aresta muda porque é proporcional ao número de transações em que ambas as entidades (nós) participam.

 

Grafo que conecta o dispositivo Samsung, o dispositivo Huawei e o número do cartão de débito de Zoe

  • Agora, suponhamos que dispomos de dados históricos relevantes (transações anteriores feitas com o novo dispositivo e que foram identificadas como fraude). Nesse caso, precisaríamos codificar s informações visualmente no diagrama. Vamos atualizar o grafo mais uma vez.

 

Grafo que conecta os dispositivos, número do cartão de débito e dados históricos relevantes de Zoe

As bordas e arestas vermelhas mostram quais entidades estão ligadas a fraudes, com base em dados históricos.

Para recapitular, até este ponto, utilizamos as seguintes codificações visuais:

 

Imagem de nó e arestas

O resultado? Identificamos uma fraude visualmente! Em meio a um oceano de pequenos componentes interconectados, surgiram subgrafos enormes e entrelaçados.

Subgrafo grande e entrelaçado

Mapeamos com sucesso a sequência de diferentes padrões de fraude. Pela primeira vez, identificamos a forma da fraude.

O projeto do hackathon foi um sucesso, e logo uma equipe multidisciplinar foi criada para transformá-lo em um produto. O Genome evoluiu para se tornar uma ferramenta de análise de links visuais que utiliza a poderosa tecnologia de inteligência artificial da Feedzai, oferecendo aos investigadores e analistas de dados uma maneira intuitiva de identificar rapidamente padrões emergentes de crimes financeiros.

Redes cada vez maiores

Montamos a equipe, e o protótipo de dois dias deu lugar a uma visualização de grafo escalável construída do zero. A equipe ainda estava nos estágios iniciais da criação do produto. Havia post-its com ideias espalhados pelas paredes, brainstormings diários e experimentações rápidas.

Queríamos ter total liberdade para renderizar o grafo da maneira que desejássemos — interações personalizadas, design de nó e aresta complexo e diferentes layouts (desde o padrão d3-force até layouts alternativos com WebCoLa). Isso significava uma coisa: tivemos que construir um renderizador de grafos.

Testamos várias tecnologias front-end, começando com SVG, mas logo percebemos que ela não atendia às necessidades de escalabilidade dos grandes grafos com dados reais recebidos. Migramos do SVG para o Canvas e trabalhamos um pouco com o WebGL. No final, o Canvas foi o que funcionou melhor. Victor Fernandes foi o mágico que usou estratégias criativas e engenhosas para aprimorar seu desempenho para nossas necessidades (esse é um assunto para uma postagem de blog completamente diferente). Depois de traçar grafos cada vez maiores, chegamos à conclusão de que o gargalo não estava mais no desempenho do navegador, mas sim na legibilidade do grafo para o usuário. Embora seja teoricamente possível traçar 30.000 nós e 100.000 arestas, por que raios alguém iria querer fazer isso?

Como a maioria dos profissionais de visualização de dados sabe, os diagramas de nó-link são um domínio complicado. Embora pareçam perfeitos para entender as relações, eles podem rapidamente ficar fora de controle se estivermos lidando com grafos grandes e altamente conectados — algo comumente conhecido como “o problema do emaranhado de fios”.

Nunca foi realista pensar que veríamos a rede completa no navegador. Normalmente, o analista de fraude visualiza apenas um subgrafo gerado a partir dos dados do evento atual e do contexto histórico relevante e, em seguida, pode expandir os nós para encontrar conexões adicionais. Um investigador começa com uma consulta mais genérica, como por exemplo “todas as fraudes perdidas da última semana”. A partir daí, ele visualiza o grafo gerado a partir de todos esses eventos e tenta identificar novos padrões interessantes. Em ambos os casos, estamos utilizando uma abordagem de “busca e expansão sob demanda”, em vez do paradigma clássico de visualização de dados de “visão geral em primeiro lugar, zoom e filtro, e, depois, detalhes sob demanda”.

Isso significa que geralmente podemos evitar esses grandes grafos, mas às vezes precisamos encará-los. Embora não sejam interpretáveis, essas visualizações podem ter uma aparência bastante interessante, por isso as apelidamos de “Arte de Dados do Genome”. Essas visualizações são ótimas para serem usadas como papel de parede para desktop ou como estampas em camisetas, e talvez possam até ser exibidas em uma exposição de arte de dados um dia:

3 imagens de “Arte de Dados do Genome” e uma imagem de pessoas vestindo camisas combinando

Fraude de narrativa

Conforme adquirimos mais conhecimento sobre fraudes conectadas, ficou claro que havia uma dimensão essencial em alguns desses padrões que não estávamos codificando visualmente: o tempo. O aspecto temporal de um ataque de fraude é de extrema importância: a frequência e a periodicidade dos eventos são indicadores significativos de atividade fraudulenta.

Por esse motivo, desenvolvemos um histograma temporal para o Genome. O histograma mostra a distribuição ao longo do tempo dos eventos que geraram o grafo. Embora pareça simples à primeira vista, desenvolver visualizações de dados para um produto pode trazer alguns desafios. Luís Cardoso escreveu uma postagem no blog sobre o assunto que vale a pena conferir.

O histograma oferece suporte a ajuste de bins, pan e zoom e, inclusive, visualizar uma representação resumida em forma de strip plot. Tudo isso resolveu muitos dos nossos problemas. No entanto, ainda pretendíamos relacionar o diagrama de nó-link ao histograma, e para isso, utilizamos outro canal visual: a animação. Ao animar o histograma temporal, podemos ver a história se desenrolar ao longo do tempo à medida que novos nós e conexões aparecem na tela.

GIF mostrando um histograma temporal de cartões comprometidos após uma violação de dados
A história de três cartões comprometidos (nós verdes) após uma violação de dados.

O que o futuro reserva

O Genome já proporcionou aos analistas insights sobre como é a fraude. Agora a pergunta é: “como podemos torná-lo ainda melhor?” Como tornamos o gráfico ainda mais fácil de ler e interpretar?

Nosso próximo objetivo é criar o condicionador perfeito para elevar o patamar do Genome, para que possamos desembaraçar os “fios entrelaçados”, os grandes grafos altamente conectados. Em outras palavras, estamos reunindo a combinação ideal de “ingredientes” (layouts alternativos, união de arestas, agrupamento de nós ou sumarização de grafos) para criar um modo de visão geral escalável que complemente a visão da investigação.

Também estamos explorando maneiras de incorporar uma dimensão geoespacial ao grafo. Assim como o tempo, essa é uma indicação de algum modus operandi de fraude. Estamos ansiosos para explorar essa parte do GeoViz.

O aprendizado de máquina está sempre no centro

Finalmente, a IA está sempre no centro da Feedzai, e nossos cientistas de dados trabalham incansavelmente para tornar o Genome ainda mais inteligente, para que possa ajudar os analistas de fraude ainda mais em suas investigações. A equipe já avançou bastante nesse sentido, incluindo a pontuação de subgrafos para sugerir áreas do grafo que merecem atenção e a clusterização de subgrafos que representam o mesmo padrão de fraude (conhecidos como Genometrias). O objetivo é tornar o aprendizado de máquina interpretável e aplicável para melhorar a experiência do analista com o Genome.

No entanto, ainda há muito a ser feito, pois os cientistas de dados da Feedzai têm muitas ideias inovadoras para explorar e experimentos de ponta para realizar. O que começou como um protótipo de dois dias em um hackathon cresceu e evoluiu. Encontramos nosso rumo e estabelecemos uma base sólida para continuar desenvolvendo esta plataforma de visualização de grafos de última geração. Agora a diversão continua, pois um mundo de possibilidades para visualização de redes está ao nosso alcance.