Mineracao de Dados para Deteccao de Frau
Mineracao de Dados para Deteccao de Frau
Mineracao de Dados para Deteccao de Frau
Belo Horizonte
Março de 2012
c 2012, José Felipe Júnior.
Todos os direitos reservados.
CDU 519.6*73(043)
Dedico esse trabalho à minha mãe Norma e minha tia Maria que sempre me
apoiaram e que sempre pude contar durante todas as fases da minha vida.
vii
Agradecimentos
Agradeço primeiramente à minha mãe Norma e a minha tia Maria que sempre me
apoiaram e auxiliaram durante toda a minha vida. Agradeço aos meus orientadores,
Adriano Pereira e Wagner Meira pelos ensinamentos, pela paciência e pela confiança no
meu trabalho. Agradeço ao professor Adriano Veloso pelas significativas contribuições
ao longo desta pesquisa. Agradeço ao UOL PagSeguro pela disponibilização dos dados
e por todas as consultorias prestadas para a realização deste trabalho. Agradeço à
Siemens pelo apoio, o que foi essencial para a realização deste mestrado. Agradeço
aos amigos: Fabrício Costa, Gilmara Teixeira, Sinaide Bezerra, Glauber Dias, Diego
Marinho, Cristiano Santos, Kênia Carolina, Rafael Amaral, Carlos Eduardo, Evandro
Caldeira, Rafael Lima e Gabriel Bandão que contribuíram muito para que eu pudesse
vencer mais esta etapa.
ix
“Às vezes é preciso que nossa
fé seja recompensada.”
(Autor desconhecido)
xi
Resumo
Com a popularização da Internet, cresce cada vez mais o número de pessoas que utili-
zam esse meio para realizar transações financeiras. Isso se deve às facilidades promo-
vidas pela Web para realização de compras e pagamentos a qualquer momento e em
qualquer lugar. No entanto, essa popularização tem atraído a atenção de criminosos,
resultando em um número significativo e crescente de casos de fraude em transações
eletrônicas feitas na Internet. As perdas financeiras chegam à ordem de bilhões de
dólares por ano. Nesse contexto, a detecção de fraude consiste em diferenciar as tran-
sações fraudulentas daquelas que são legítimas. Entretanto, este é um desafio técnico
devido à diversidade de estratégias utilizadas pelos fraudadores, o número relativa-
mente pequeno de fraudes em relação ao número total de transações e a constante
evolução das práticas de mercado e tecnologia associada. Este trabalho propõe uma
metodologia para detecção de fraude em pagamentos online baseada no processo de
Descoberta do Conhecimento em Banco de Dados. Ele também fornece uma pesquisa
abrangente sobre a detecção de fraudes com foco em questões que vão desde a base de
dados, passando pela avaliação de técnicas mais promissoras, até questões relacionadas
ao retorno financeiro obtido com as técnicas. A metodologia proposta foi aplicada em
um conjunto de dados real de uma das maiores empresas no Brasil de serviços de pa-
gamentos eletrônicos, o UOL PagSeguro. Os resultados obtidos demonstram a eficácia
dessa metodologia na mineração de dados relevantes para a detecção de fraudes. Além
disso, ela fornece técnicas e orientações que permitem verificar, com antecedência, se
os dados extraídos serão relevantes para a identificação de fraude. Foi definido um con-
ceito de eficiência econômica na captura de fraudes e diversas técnicas foram avaliadas
aplicando esse conceito. Os resultados mostram um bom desempenho na detecção de
fraudes, apresentando ganhos significativos ao cenário atual da empresa.
xiii
Abstract
The growing popularity of the Internet also enabled an increasing number of financial
transactions through the Web, due to the convenience of making purchases and pay-
ments at any time and anywhere. On the other hand, such popularity also attracted
criminals, resulting in a significant and increasing number of fraud cases in Internet-
based electronic transactions, which lead to losses in the order of billions of dollars
per year. In this context, the fraud detection consists in distinguish fraudulent tran-
sactions from those that are legitimate. Further, it is challenging technically because
of the diversity of strategies used by the fraudsters, the relatively small number of
frauds compared to the overall number of transactions and the constant evolution of
the market practices and associated technology. This work proposes a methodology for
fraud detection in online payments based on the knowledge discovery process. It also
provides a comprehensive survey on fraud detection, focusing on issues that range from
the data storage to the financial return to the techniques, through the effectiveness of
the techniques. The proposed methodology was applied to a real data set from one of
the largest of electronic payment services in Brazil, UOL PagSeguro and the results
demonstrate its effectiveness in mining relevant data for fraud detection. Moreover,
it provides guidelines and techniques for identifying, in advance, whether extracted
data is relevant or not for the fraud detection process. We also proposed a concept of
economic efficiency in fraud detection, and evaluated the various detection techniques
under this concept. The results show a good performance in detecting frauds, showing
significant gains in the current scenario of UOL PagSeguro.
xv
Lista de Figuras
4.1 Visão geral das etapas que compõem o processo KDD. Fonte: [Fayyad et al.,
1996b]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.2 Esforço relativo gasto em etapas específicas do processo KDD. Fonte: [Cios
et al., 2007]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3 Processo de seleção dos dados. . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.4 Processo de auditoria na construção do dataset. . . . . . . . . . . . . . . . 43
4.5 Uma árvore de decisão para o problema de classificação de vertebrados.
Fonte: [Tan et al., 2009]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.6 Modelo de Stacking. Fonte:[Maria Izabela R. Caffé, 2011]. . . . . . . . . . 61
4.7 Eficiência econômica ao longo do ranking. A região em cinza indica que
ganhos são obtidos em relação aos ganhos reais. . . . . . . . . . . . . . . . 66
4.8 Metodologia para avaliação dos classificadores. . . . . . . . . . . . . . . . . 66
4.9 Geração do ranking a partir dos resultados de um classificador . . . . . . . 67
xvii
5.2 Processo de seleção dos dados. . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.3 Dispersão dos dados em relação à unidade federativa. O eixo X a esquerda
em azul representa os registros de não chargeback e a direita em vermelho
os registros de chargeback. O eixo Y representa a unidade federativa. . . . 78
5.4 Dispersão dos dados em relação ao tempo de registro do comprador. O eixo
X a esquerda em azul representa os registros de não chargeback e a direita
em vermelho os registros de chargeback. O eixo Y representa o tempo de
registro do comprador. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.5 Dispersão dos dados em relação aos dias da semana. O eixo X a esquerda
em azul representa os registros de não chargeback e a direita em vermelho
os registros de chargeback. O eixo Y representa os dias da semana. . . . . . 80
5.6 Dispersão dos dados em relação às horas do dia. O eixo X a esquerda em
azul representa os registros de não chargeback e a direita em vermelho os
registros de chargeback. O eixo Y representa as horas do dia. . . . . . . . . 81
5.7 Dispersão dos dados em relação ao tempo de registro do vendedor. O eixo
X a esquerda em azul representa os registros de não chargeback e a direita
em vermelho os registros de chargeback. O eixo Y representa o tempo de
registro do vendedor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.8 Dispersão dos dados em relação a categoria de tipo de produto vendido
pelo vendedor. O eixo X a esquerda em azul representa os registros de não
chargeback e a direita em vermelho os registros de chargeback. O eixo Y
representa a categoria de tipo de produto vendido pelo vendedor. . . . . . 83
5.9 Dispersão dos dados em relação ao número de parcelas. O eixo X a esquerda
em azul representa os registros de não chargeback e a direita em vermelho
os registros de chargeback. O eixo Y representa o número de parcelas na
compra do produto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.10 Distribuição dos registros em relação ao dia da semana. . . . . . . . . . . . 85
5.11 Distribuição dos registros em relação às horas do dia. . . . . . . . . . . . . 86
5.12 Distribuição dos registros em relação a idade do comprador. . . . . . . . . 86
5.13 Distribuição dos registros em relação a bandeira de cartão de crédito. . . . 87
5.14 Distribuição dos registros em relação aos chargebacks. . . . . . . . . . . . . 87
5.15 Precisão X Revocação dos resultados obtidos em novembro com o Naive
Bayes sem alteração na distribuição e sem combinação de classificadores. . 91
5.16 Eficiência Econômica dos resultados obtidos em novembro com o Naive
Bayes sem alteração na distribuição e sem combinação de classificadores. . 91
xviii
5.17 Ganho em relação ao máximo dos resultados obtidos em novembro com o
Naive Bayes sem alteração na distribuição e sem combinação de classifica-
dores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.18 Precisão X Revocação dos resultados obtidos em dezembro com o Stacking. 94
5.19 Eficiência Econômica dos resultados obtidos em dezembro com o Stacking. 94
5.20 Ganho em relação ao máximo dos resultados obtidos em dezembro com o
Stacking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
5.21 Precisão X Revocação dos resultados obtidos em dezembro com o oversam-
pling de 50% para o Naive Bayes. . . . . . . . . . . . . . . . . . . . . . . . 95
5.22 Eficiência Econômica dos resultados obtidos em dezembro com o oversam-
pling de 50% para o Naive Bayes. . . . . . . . . . . . . . . . . . . . . . . . 99
5.23 Ganho em relação ao máximo dos resultados obtidos em dezembro com o
oversampling de 50% para o Naive Bayes. . . . . . . . . . . . . . . . . . . 99
xix
Lista de Tabelas
xxi
Sumário
Agradecimentos ix
Resumo xiii
Abstract xv
1 Introdução 1
1.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Principais Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Organização da Dissertação . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Trabalhos Relacionados 27
3.1 Métodos para Detecção de Fraude . . . . . . . . . . . . . . . . . . . . . 27
3.2 Técnicas de Mineração de Dados . . . . . . . . . . . . . . . . . . . . . 28
xxiii
3.3 Cenários de Aplicação . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
xxiv
Capítulo 1
Introdução
1
http://www.febraban.org.br
1
2 Capítulo 1. Introdução
1.1 Objetivo
O objetivo desta pesquisa é desenvolver uma metodologia que possa auxiliar de
forma eficaz o processo de detecção de fraude. Essa metodologia deverá abordar ques-
tões que vão desde a criação de um dataset, passando pela identificação das técnicas
mais promissoras, até a avaliação dos resultados alcançados, considerando também o
4 Capítulo 1. Introdução
7
8 Capítulo 2. Fraudes em Transações Eletrônicas
1. Portador (Card Holder): Pessoa que tem como objetivo adquirir bens ou contra-
tar serviços realizando o pagamento por meio do cartão de crédito. Essa pessoa
pode ser o titular da conta ou apenas portador de um cartão adicional.
Todas essas entidades irão interagir por meio do processo de autorização de uma
transação que ocorre, por exemplo, quando um portador executa uma compra em um
estabelecimento comercial, conforme mostra Figura 2.1. Para a realização da transa-
ção, o estabelecimento passa o cartão em um equipamento eletrônico que pode ser um
POS (comum em pequenas lojas, restaurantes e postos de gasolina) ou um equipa-
mento integrado com o sistema do estabelecimento (usado em supermercados e lojas
de departamentos) ou então o portador fornece as informações do cartão no site do
vendedor na Web. Nesse momento, um funcionário do estabelecimento ou o próprio
portador do cartão, no caso de sites na Web, digita a opção de crédito ou débito, o
número de parcelas e o tipo de parcelamento. Esse aparelho se comunica com o adqui-
rente, que envia a transação para a bandeira que por sua vez, direciona para o emissor.
O emissor decide se a transação será aprovada ou não e envia a decisão de volta para
a bandeira, que envia para o adquirente e então, para o estabelecimento [Gadi, 2008].
2.2. Fraudes de Cartão de Crédito 9
Fraude com cartão de crédito é uma das maiores ameaças para estabelecimentos
comerciais atualmente. No entanto, para combater a fraude de forma eficaz, é impor-
tante primeiro entender os mecanismos de sua execução. Fraudadores de cartão de
crédito empregam um grande número de modus operandi para cometer fraudes.
Em termos simples, fraude de cartão de crédito é definido como quando um
indivíduo usa o cartão de crédito de outro indivíduo, enquanto o proprietário e o
emissor do cartão não estão cientes do fato do mesmo estar sendo usado. Além disso,
o indivíduo que utiliza o cartão não tem nenhuma conexão com seu titular ou emitente
e não tem intenção nem de entrar em contato com o proprietário ou fazer reembolsos
das compras feitas [Bhatla et al., 2003].
Um dos grandes riscos na venda com cartão é o chargeback. Trata-se de um
dos maiores temores dos comerciantes de lojas virtuais e muitas vezes podem causar
o seu fechamento. Chargeback pode ser definido como o cancelamento de uma venda
feita com cartão de débito ou crédito, que pode acontecer por dois motivos: Não
reconhecimento da compra por parte do titular do cartão; A transação não obedece
às regulamentações previstas nos contratos, termos, aditivos e manuais editados pelas
administradoras. Resumindo, o lojista vende e depois descobre que o valor da venda
não será creditado porque a compra foi considerada inválida. Se o valor já tiver sido
creditado ele será imediatamente estornado ou lançado a débito no caso de inexistência
10 Capítulo 2. Fraudes em Transações Eletrônicas
2. Perda ou Roubo: O cliente perde seu cartão ou tem seu cartão roubado e alguma
pessoa não autorizada tenta realizar transações com ele. Como normalmente o
fraudador desconhece o limite de crédito disponível do cliente, o que se observa é
uma sequência de transações de valores pequenos e algumas transações negadas
de valores maiores que o disponível, até que se descubra alguma transação que
caiba no limite de crédito [Wikipedia, 2010].
às do site original. O site clonado irá receber essas informações e enviar ao cliente
um recibo da transação via e-mail, assim como a empresa faria. O consumidor não
suspeita de nada, enquanto os fraudadores tem todos os detalhes que necessitam
para cometer fraudes de cartão de crédito [Bhatla et al., 2003].
2. Sites comerciais falsos: Estes sites muitas vezes oferecem ao cliente um serviço
extremamente barato. Eles solicitam informações completas do cartão de crédito
em troca de acesso ao seu conteúdo. A maioria destes sites pretendem ser livres,
mas requerem um número válido de cartão de crédito para verificar a idade dos
indivíduos. Os sites são criados para acumular o maior número de cartões de
crédito possível. Eles não cobram dos indivíduos pelos serviços que prestam.
São geralmente parte de uma grande rede criminosa que usam os detalhes que
recolhem para aumentar as receitas ou vendem detalhes do cartão de crédito
válido para fraudadores de pequeno porte [Bhatla et al., 2003].
legítimo contesta uma cobrança de cartão de crédito, o banco emissor do cartão enviará
uma cobrança retroativa ao comerciante (por meio do adquirente) revertendo o crédito
para a transação. No caso, o comerciante não tem qualquer evidência física (por exem-
plo, assinatura de entrega) disponível para contestar o titular do cartão, sendo quase
impossível reverter o chargeback. Portanto, o comerciante terá que absorver completa-
mente o custo da transação fraudulenta. Na verdade, esse custo é composto por vários
componentes, o que pode incorrer em um montante significativo. A seguir são descritos
cada um dos custos de uma transação fraudulenta:
1. Custo dos produtos vendidos: Uma vez que é improvável que a mercadoria seja
recuperada em um caso de fraude, o comerciante terá que amortizar o valor dos
bens envolvidos em uma transação fraudulenta. O impacto dessa perda será
maior para os comerciantes com baixa margem de lucro [Bhatla et al., 2003].
feita a análise de suas taxas de aceitação e rejeição que irão impactar diretamente nos
lucros. Finalmente, a etapa de gerenciamento de disputas irá revelar as perdas com
fraude, uma vez que é nessa etapa que as vendas serão realmente finalizadas ou fraudes
serão descobertas. As seções seguintes irão descrever cada uma das etapas do processo
de gestão de risco onde serão discutidas as informações e ferramentas utilizadas.
triagem automática quanto para revisão manual. A seguir são apresentadas algumas
ferramentas de triagem automática.
Estas ferramentas são muitas vezes fornecidas pelas marcas de cartão para ajudar
a autenticar cartões e titulares dos cartões. As ferramentas mais frequentemente men-
cionadas pelos comerciantes são o Número de Verificação do Cartão - Card Verification
Number (CVN) e do Serviço de Verificação de Endereço (Address Verification Service
(AVS)):
uma transação com cartão não presente é tentar verificar se a pessoa que realiza o
pedido realmente tem o cartão em sua posse. Solicitar o número de verificação do
cartão durante uma compra online pode adicionar uma medida de segurança para
a transação. No entanto, CVNs podem ser obtidos por fraudadores tão facilmente
como os números de cartão de crédito. Segundo Mindware Research Group [2011],
a utilização de CVN por comerciantes online aumentou significativamente nos
últimos cinco anos, passando de 44% em 2003 para 75% em 2010.
Sistema de regras envolvem a criação de critérios “se ... então” para filtrar as
transações. Sistemas baseados em regras dependem de um conjunto de regras proje-
tadas para identificar tipos específicos de transações de alto risco. Regras são criadas
20 Capítulo 2. Fraudes em Transações Eletrônicas
2.3.1.5 Geolocalização IP
6. Utilizar Google Maps para investigar rua e vistas aéreas de endereços de entrega.
Triagem automática e revisão manual de pedidos acabará por resultar na sua acei-
tação ou rejeição. Um percentual relativamente alto de pedidos manualmente revistos
são, em última análise, aceitos. Essa alta taxa de aceitação evidencia a necessidade dos
comerciantes de melhorar a precisão da triagem automática e reduzir a necessidade de
revisão manual.
2.3. Prevenção e Gestão de Risco 25
parcela significativa dos chargebacks quando esse processo é bem gerenciado. Segundo
Mindware Research Group [2011], comerciantes relatam que eles ganham em média
41% das disputas de chargeback. Nos últimos cinco anos, a taxa média de ganho de
disputas variou de 40% para 44%. A taxa de recuperação líquida é de 24% (o que
significa que 24% de todos os chargebacks são recuperados). Sendo assim, disputando
a maioria dos chargebacks e tendo um processo eficiente de gestão dessas disputas,
pode-se aumentar a rentabilidade e reduzir a perda de fraude.
Trabalhos Relacionados
27
28 Capítulo 3. Trabalhos Relacionados
por essa estratégia. Maes et al. [1993] utilizou o algoritmo STAGE para Redes Baye-
sianas e o algoritmo “backpropagation” para Redes Neurais para detecção de fraudes
em transações de cartão de crédito. Os resultados mostram que Redes Bayesianas são
mais precisas e mais rápidas para treinamento, mas são mais lentas quando aplicadas
em novas instâncias.
Na estratégia não supervisionada, os métodos dispensam o conhecimento prévio
das transações fraudulentas e não fraudulentas. Por outro lado, são detectadas altera-
ções no comportamento ou identificadas transações não usuais. Exemplos de técnicas
utilizadas são Agrupamentos e Detecção de Anomalias. Netmap [2004] descreve como
o algoritmo de agrupamento é usado para formar grupos de dados bem conectados e
como ele levou à captura de um fraudador real de seguros. Bolton & Hand [2002] pro-
puseram uma detecção de fraude em cartão de crédito utilizando técnicas de detecção
de anomalias em transações. Comportamentos anormais em gastos são identificados e
a frequência que eles ocorrem é utilizada para definir quais casos podem ser fraudes.
Na abordagem híbrida (supervisionada e não supervisionada) existem trabalhos
utilizando dados rotulados com algoritmos supervisionados e não supervisionados na
detecção de fraudes em seguros e telecomunicações. Abordagens não-supervisionadas
têm sido utilizadas para segmentar os dados de seguros em grupos para as abordagens
supervisionadas. Williams & Huang [1997] aplicam um processo de três passos: k-
means para detecção dos grupos, C4.5 para a tomada de decisão e resumos estatísticos
e ferramentas de visualização para avaliação da regra.
Existem alguns trabalhos que investigam o uso de um Sistema Imunológico Ar-
tificial (AIS - Artificial Immune System). A AIS emula o mecanismo de sistema imu-
nológico que salvam o corpo humano de ataques biológicos naturais complexos. Wong
et al. [2012a] discute o uso de AIS em um aspecto do gerenciamento de segurança,
conseguindo bons resultados para detecção de fraudes de cartão de crédito. O Sis-
tema Imunológico Artificial (AIS) também foi usado por Wong et al. [2012b] e também
tem proporcionado bons resultados para detectar fraudes em transações de cartão de
crédito.
Modelos preditivos para detecção de fraudes de cartão de crédito estão em uso
ativo na prática. Entre esses, a maioria dos trabalhos têm examinado Redes Neurais
Aleskerov et al. [1997]; Brause et al. [1999], o que não é surpreendente, dada a sua
popularidade na década de 1990. Um resumo desses trabalhos é dado em Kou et al.
[2004], que analisa técnicas analíticas para detecção de fraudes em geral, incluindo
fraude de cartão de crédito.
Whitrow et al. [2009] avalia várias técnicas, incluindo Support Vector Machines
(SVM) e Florestas Aleatórias para a previsão de fraude de cartão de crédito. Eles
30 Capítulo 3. Trabalhos Relacionados
Apesar de escassas, algumas bases de dados públicas podem ser encontradas, uma
delas é a Enron [Shetty & Adibi, 2009] que consiste na base de e-mails da empresa
Enron que atuava no setor de energia entre os anos de 1980 a 2000 e que entrou
em colapso em 2001 devido a escândalos contábeis. Durante as investigações que se
seguiram ao colapso da empresa, a Comissão Federal Reguladora da Energia tornou
pública um grande número de mensagens de e-mails. Esses e-mails têm sido usados
como uma fonte de referência para a investigação em áreas como análise de links, análise
de redes sociais, detecção de fraudes e análise textual. O site da UCI Machine Learning
Repository [Frank & Asuncion, 2010] disponibiliza uma coleção de bases de dados de
várias áreas como por exemplo, base de dados médica, de flores, de reconhecimento de
face dentre outros. Nesse repositório está disponível a base KDD Cup 1999 Data que
contém uma grande variedade de invasões simuladas em um ambiente de rede militar e
que foi utilizada na Third International Knowledge Discovery and Data Mining Tools
Competition realizada em conjunto com o KDD-99. Essa base pode ser usada para
testes em algoritmos de detecção de intrusões em computadores.
É possível também utilizar bases de dados de empresas privadas para realização
de testes. Maranzato et al. [2010] utiliza a base de dados do site de comércio eletrônico
TodaOferta1 pertencente ao Provedor de Serviços de Internet chamado Universo Online
(UOL)2 para a realização de testes em algoritmos de mineração de dados para detecção
de fraude de reputação. No entanto, é importante ressaltar que a obtenção de dados
reais de empresas para fins de pesquisa é extremamente difícil devido a razões legais e
competitivas.
resultados alcançados com as técnicas e para isso, foi criada uma nova medida denomi-
nada eficiência econômica que avalia os ganhos financeiros obtido com as técnicas de
mineração de dados.
Capítulo 4
35
36 Capítulo 4. Metodologia para Detecção de Fraude
1. O termo processo implica que KDD compreende várias etapas que envolvem pre-
paração dos dados, procura de padrões, avaliação do conhecimentos e refinamen-
tos, tudo repetido em várias iterações.
1. Seleção dos dados: Nesta etapa é feita uma seleção de um conjunto de dados em
que a descoberta de conhecimento será executada.
4. Mineração de dados: Nesta etapa é feita a busca pelos padrões nos dados. Nela
é definida a tarefa de mineração a ser executada(classificação, regressão, agrupa-
mento, dentre outras), definidos os algoritmos a serem utilizados e é realizada a
mineração propriamente dita.
38 Capítulo 4. Metodologia para Detecção de Fraude
Figura 4.1. Visão geral das etapas que compõem o processo KDD. Fonte:
[Fayyad et al., 1996b].
Figura 4.2. Esforço relativo gasto em etapas específicas do processo KDD. Fonte:
[Cios et al., 2007].
Esta seção apresentou uma visão geral sobre o processo de descoberta do co-
nhecimento já que ele é base para a metodologia proposta. As sequências de passos
definidas nesse processo serão utilizadas pela metodologia, uma vez que permitem nor-
tear a tarefa de detecção de fraude. Entretanto, por se tratar de um processo genérico
que busca englobar várias áreas do conhecimento, alterações e orientações associadas
ao contexto de fraude são necessárias de forma a torná-lo mais aderente ao domínio
do problema. As próximas seções apresentam uma descrição detalhada de cada uma
das etapas da metodologia onde são apresentadas orientações associadas ao cenário de
fraude. O objetivo é guiar a aplicação do processo especificamente para esta área.
4. Passo 4: Extração do dataset gerado para o formato de arquivo texto para que
seja possível a utilização das técnicas de mineração de dados.
verificar a integridade dos mesmos a medida que as junções são realizadas. O processo
aqui definido, consiste em inicialmente, contabilizar o número de registros existentes na
tabela base, sendo que a cada junção de uma tabela deve ser avaliado se ocorreu alguma
alteração no número desses registros. Deve-se fazer também uma verificação amostral
de alguns registros de forma a analisar se as informações de relacionamento entre os
dados se mantêm condizentes. Qualquer erro identificado deve ser corrigido, para que
então uma nova junção possa ser realizada. O processo de auditoria na construção do
dataset deve ser realizado em cada um dos grupos definidos. Esse processo é mostrado
na Figura 4.4. No passo 3 os grupos criados deverão ser unidos em um único dataset.
Para isso, deve ser utilizado o mesmo processo de auditoria mostrado na Figura 4.4.
Neste caso, um grupo deve ser eleito como representante da tabela base e cada grupo
deve ser unido a esse representante.
Esta etapa pode definir o sucesso do processo, uma vez que ele depende da es-
colha correta do subconjunto de dados, pois é nesse subconjunto que será aplicado os
algoritmos de mineração de dados. Note que essa, mesmo que criteriosa, é uma sele-
ção inicial dos dados e as etapas posteriores (pré-processamento e transformação) irão
refinar ainda mais as informações definidas nessa seleção inicial.
1. Valores Faltando: Não é incomum que um objeto não tenha um ou mais valores de
atributos. Em alguns casos, as informações não foram coletadas ou os atributos
não são aplicáveis a todos os objetos. Independentemente, valores em falta devem
ser levados em conta durante a análise de dados. Algumas das estratégias para
4.3. Passo 2: Pré-Processamento 43
lidar com dados faltantes são: eliminar objetos ou atributos de dados, estimar
valores faltantes e ignorar valores faltantes durante a análise.
3. Dados Duplicados: Um conjunto de dados pode incluir objetos que sejam du-
plicata ou quase duplicata uns dos outros. É importante detectar e eliminar
tais duplicatas, sendo que deve-se tomar cuidado para evitar eliminar acidental-
mente objetos de dados que sejam semelhantes, mas que não são duplicatas, por
exemplo, pessoas distintas com nomes idênticos.
Como é possível perceber, os dados muitas vezes estão longe da perfeição. Em-
bora grande parte das técnicas de mineração de dados possam tolerar algum nível de
imperfeição, é importante um foco na compreensão e melhora da qualidade dos mesmos.
Isso permitirá um aumento da qualidade dos resultados das etapas posteriores.
No contexto da fraude, esta etapa pode apresentar indícios de sucesso do pro-
cesso de detecção de transações fraudulentas. Isso pode ser percebido verificando se
os atributos selecionados são realmente relevantes para o processo de detecção. Gráfi-
cos de dispersão podem ser utilizados para verificar como os registros de fraude e não
fraude se distribuem em relação a cada um dos atributos. Esse contraponto, entre as
duas classes de informações, poderá auxiliar na identificação de regiões do gráfico onde
uma determinada classe ocorre com maior frequência, gerando indícios da existência
de padrões que possam diferenciá-las. Histogramas podem auxiliar na identificação de
como os registros de uma classe se agrupam em relação aos valores possíveis de um
determinado atributo. Uma melhor forma de se verificar isso é considerar a distribuição
relativa desses valores utilizando a Equação 4.1:
Qtdrelacionados
Disbribuicao = (4.1)
QtdT otalClasse
Onde Qtdrelacionados representa a quantidade de registros de uma classe es-
pecífica associados a um determinado valor do atributo e QtdTotalClasse representa a
quantidade de registros da classe específica. A construção de histogramas considerando
os valores gerados por essa fórmula permitirá que padrões que não são visíveis, devido
a diferenças no número de registros entre as classes, se tornem visíveis. Isso permitirá
verificar a concentração de registros da classe em determinados valores dos atributos.
Claro que os padrões encontrados considerando as análises acima não serão sufi-
cientes para detecção da fraude. Mas, são um forte indício de que os atributos selecio-
nados são relevantes para a tarefa e que por meio das técnicas de mineração de dados
será possível extrair novos padrões a partir da combinação desses atributos. Sendo
4.4. Passo 3: Transformação 45
assim, os resultados das análises feitas acima podem ser consideradas como um critério
de sucesso do processo.
no espaço que eles ocupam. Para classificação, isto significa que não há objetos
de dados suficientes para permitir a criação de um modelo que atribua de forma
confiável uma classe a todos os objetos possíveis. Uma forma de reduzir a dimen-
sionalidade segundo Tan et al. é usar apenas um subconjunto das características.
Existem três abordagens padrão para a seleção de características:
1. Demográficas do cliente:
c) Limite do cartão.
2. Demográficas do estabelecimento:
3. Perfil do Cliente:
4. Perfil de Fraude:
5. Velocidade:
Note que grande parte das variáveis previamente listadas são obtidas por meio
da construção de novas características, tendo como base as características originais.
Isso, mais uma vez, destaca a importância dessa etapa de transformação no processo
de detecção de fraudes.
5. Análise de Outliers. Um banco de dados pode conter dados que não apresen-
tam o comportamento geral da maioria. Estes dados são denominados outli-
ers(exceções). Muitos métodos de mineração de dados descartam estes outli-
ers como sendo ruídos indesejados. Entretanto, em algumas aplicações, estes
eventos raros podem ser mais interessantes do que eventos que ocorrem regular-
mente. Este é o caso da detecção de fraude, onde os casos fraudulentos geralmente
desviam-se dos padrões associados aos casos não fraudulentos. Sendo assim, esses
registros raros são mais importantes de serem identificados, uma vez que causam
prejuízos a compradores e vendedores.
1. Árvore de Decisão: uma das grandes vantagens da árvore de decisão é que além
de permitir uma modelagem preditiva do problema, ela também fornece uma
modelagem descritiva, uma vez que por meio da árvore é possível identificar quais
informações foram utilizadas para a classificação de um determinado registro.
Essa característica será muito útil para se entender melhor os padrões associados
a registros fraudulentos. Além do mais, os atributos utilizados para construção
da árvore poderão ser analisados para uma possível redução de dimensionalidade
direcionada para essa técnica. Esta técnica também é utilizada nos trabalhos de
detecção de fraude realizados por [Philip K. Chan & Stolfo, 1999] e [Phua et al.,
2004].
3. Naive Bayes: Phua et al. utilizam essa técnica em sua pesquisa de fraude e
segundo eles, embora esse algoritmo seja simples, ele é muito eficaz em muitos
conjuntos de dados do mundo real, pois pode fornecer uma melhor acurácia do
que os métodos conhecidos como por exemplo árvores de decisão e rede neural
[Domingos & Pazzani, 1996; Elkan, 2001]. Além do mais, ele é extremamente
eficiente na medida em que aprende de uma forma linear usando técnicas de
meta aprendizagem, tais como bagging e boosting para combinar as previsões do
classificador [Elkan, 1997]. No entanto, quando os atributos são redundantes e
não seguem uma distribuição normal a acurácia da previsão é reduzida.
De uma forma geral, o critério para escolha dos classificadores foi selecionar aque-
les em que o modelo gerado permita a sua interpretação e assim, ser possível um co-
nhecimento maior dos padrões de fraude. Exceção a esse critério foi a utilização do
classificador Naive Bayes, no entanto ele tem sido muito utilizado em técnicas de meta
aprendizado, como Stacking. As técnicas de meta aprendizagem são utilizadas mais
especificamente neste trabalho para lidar com o problema da baixa distribuição das
classes de fraude e assim, fazer com que os classificadores selecionados apresentem me-
lhores resultados. As próximas subseções irão apresentar noções básicas de cada uma
das técnicas utilizadas e tem como base os livros publicados por Tan et al. e Written
& Frank. Maiores detalhes ou exemplos de outras técnicas podem ser encontrados em
[Kantardzic, 2002; Written & Frank, 2005; Han & Kamber, 2005; Veloso et al., 2006;
Tan et al., 2009; Torgo, 2010].
4.5. Passo 4: Mineração de Dados 53
1. Um nó raiz que não possui arestas chegando e zero ou mais arestas saindo.
X
c−1
Entropia(t) = − p(i \ t)log2 p(i \ t) (4.2)
i=0
X
c−1
Gini(t) = 1 − [p(i \ t)]2 (4.3)
i=0
r1 : (Condicao) → yi (4.5)
|A|
Cobertura(r) = (4.7)
|D|
|A ∩ y|
P recisão(r) = (4.8)
|A|
Onde |A| é o número de registros que satisfazem ao antecedente da regra, |A ∩ y|
é o número de registros que satisfazem tanto ao antecedente quanto ao consequente e
|D| é o número total de registros.
Um classificador baseado em regras classifica um registro de teste baseado na regra
disparada pelo registro. Duas são as propriedades importantes do conjunto de regras
gerado por um classificador: (1)Regras Mutuamente Excludentes - não devem haver
duas regras que sejam disparadas pelo mesmo registro; (2) Regras Completas - cada
56 Capítulo 4. Metodologia para Detecção de Fraude
registro deve ser coberto por pelo menos uma regra. Muitos classificadores baseado
em regras não possuem tais propriedades. Neste caso, se um conjunto de regras não
for completo uma regra padrão deve ser adicionada e disparada quanto todas as outras
falham. A classe atribuída por essa regra padrão é conhecida como classe padrão que
geralmente é a classe majoritária. Caso as regras não forem mutuamente excludentes,
há duas formas de resolver o problema: (1) Regras Ordenadas - as regras são ordenadas
de forma decrescente de prioridade, que pode ser de diversas maneiras, por exemplo,
precisão, cobertura, ordem que foi gerada dentre outras; (2) Regras Não Ordenadas -
permite que um registro dispare múltiplas regras de classificação e considera cada uma
como um voto(ponderado ou não) para uma determinada classe, o registro recebe a
classe que tiver o maior número de votos.
4.5.2.1 RIPPER
4.5.2.2 LAC
P|Rcxi |
j=1 θ(rj )
s(ci , x) = (4.9)
|Rcxi |
58 Capítulo 4. Metodologia para Detecção de Fraude
s(ci , x)
p̂(ci |x) = Pn (4.10)
j=1 s(ci , x)
Y
d
P (X|Y = y) = P (Xi |Y = y) (4.11)
i=1
Qd
P (Y ) i=1P (Xi |Y ))
P (Y |X) = (4.12)
P (X)
Já que P (X) é fixo para cada Y , basta escolher a classe que maximiza o termo
Q
numerador, P (Y ) di=1 P (Xi |Y ).
4.5.4.1 Boosting
1. Podem ser usados como uma distribuição de amostras para desenhar um conjunto
de amostras de bootstrap a partir dos dados originais.
2. Podem ser usados pelo classificador de base para descobrir um modelo que tenha
tendência na direção de exemplos de pesos mais altos.
Esta seção descreve um algoritmo que usa pesos de exemplos para determinar a
distribuição de amostragem do seu conjunto de treinamento. Inicialmente, os exemplos
recebem valores iguais, de modo que tenham a mesma probabilidade de serem esco-
lhidos para treinamento. Uma amostra é desenhada de acordo com a distribuição de
amostras dos exemplos de treino para se obter um novo conjunto de treinamento. A
seguir, um classificador é induzido a partir do conjunto de treino e usado para clas-
sificar todos os exemplos dos dados originais. Os pesos dos exemplos de treinamento
são atualizados no final de cada rodada de boosting. Exemplos que estejam classifica-
dos incorretamente terão seus pesos aumentados, enquanto que aqueles que estiverem
classificados corretamente terão seus pesos diminuídos. Isto força que o classificador,
nas iterações subsequentes, enfoque em exemplos que sejam difíceis de classificar.
60 Capítulo 4. Metodologia para Detecção de Fraude
4.5.4.2 Stacking
4.5.5 Oversampling
dores tendem a focar a classificação nos exemplos majoritários o que pode causar a
completa falha do classificador em relação ao objetivo desejado.
Oversampling é uma técnica simples para lidar com o desequilíbrio de classe.
Ela consiste em sobre amostrar os exemplos das classes minoritárias nos dados de
treinamento. Isto cria um conjunto de dados mais equilibrado, o que pode contribuir
para a criação de um melhor modelo de classificação. A amostragem pode ser aleatória
ou baseada em algum critério, como por exemplo, registros da classe minoritária que
possuem maiores erros de classificação [Japkowicz & Stephen, 2002]. Entretanto, essa
sobre amostragem pode resultar em um enorme problema, pois irá aumentar ainda
mais o conjunto de dados o que pode fazer com que alguns algoritmos não consigam
lidar com esse volume maior de informação.
por exemplo, no caso da detecção de fraude pode-se criar medidas para calcular o
montante de dinheiro economizado.
Algumas medidas de avaliação do modelo são: validação cruzada, matriz de con-
fusão, precisão, revocação e medida F1. Outras medidas como acurácia e taxa de erro
são utilizadas principalmente, para datasets que possuem uma distribuição relativa-
mente semelhante das classe. No caso de detecção de fraude, as classes possuem uma
distribuição desbalanceada sendo assim, serão descritas algumas das medidas para esse
tipo de problema. Importante observar que precisão, revocação e medida F1 são cal-
culadas por classe, neste trabalho, a classe a ser avaliada é a classe de fraude, sendo
assim, essas medidas serão calculadas para essa classe.
TP
P recisao, p = (4.13)
TP + FP
TP
Revocacao, r = (4.14)
TP + FN
4. Medida F1: A precisão e a revocação podem ser resumidas em outra métrica co-
nhecida como medida F1. A princípio, essa medida representa a média harmônica
entre precisão e revocação. Sendo assim, um valor alto da medida F1 assegura
que tanto a precisão quanto a revocação sejam razoavelmente altas. A Equação
4.15 representa sua definição formal:
2rp 2T P
F1 = = (4.15)
r+p 2T P + F P + F N
X
n
EE = G ∗ gr − L ∗ lr (4.16)
j=1
X
n
EE_M ax = G ∗ gr (4.17)
j=1
X
n
EE_M in = −L ∗ lr (4.18)
j=1
Segundo Júnior et al. [2011], há uma relação de custo benefício entre cobrir todas
as fraudes e ao mesmo tempo bloquear transações legítimas. Cada vez que uma fraude
4.6. Passo 5: Interpretação e Avaliação dos Resultados 65
é detectada há uma vantagem financeira associada a essa detecção, já que não existe
nenhum prejuízo nessa situação. No entanto, existe uma perda financeira cada vez
que uma transação legítima é rotulada como transação de fraude. Além do mais,
isso também provoca uma insatisfação do cliente já que este não conseguiu realizar
a compra desejada. Sendo assim, a Equação 4.16 deve ser adaptada para considerar
uma penalização nos casos em que transações legítimas são erroneamente classificadas
como ilegítimas. Esta equação é chamada de Eficiência Econômica com Penalização
(EE_CP) e é apresentada pela Equação 4.19.
X
n
EE_CP = G ∗ gr − L ∗ lr + N G ∗ p (4.19)
j=1
EE − EE_Real
Ganho_SP = (4.20)
EE_M ax − EE_Real
EE_CP − EE_Real
Ganho_CP = (4.21)
EE_M ax − EE_Real
Assim como as ferramentas de pontuação de risco descritas no Capítulo 2, os
classificadores selecionados fornecem como resultado a probabilidade de um registro
ser fraudulento ou não. Sendo assim, como forma de maximizar os resultados obtidos
com o classificador, é proposta a geração de um ranking considerando a probabilidade
do registro ser fraudulento. Dessa forma, a Eficiência Econômica deverá ser analisada
ao longo do ranking de forma a encontrar um ponto onde os resultados são maximi-
zados. Essa abordagem se mostra interessante, uma vez que os classificadores podem
considerar um registro fraudulento como não fraudulento, entretanto a probabilidade
de ser fraudulento pode ser relativamente grande. Utilizando o rank esse problema
pode ser atenuado. A Figura 4.9, mostra o resultado de um classificador para um da-
taset contendo 20 registros em que 5 deles são fraudulentos. Perceba que pela tabela
da esquerda nenhum dos casos fraudulentos foi classificado como fraude, uma vez que
sua probabilidade de não fraude é maior. No entanto, ordenando-se de forma decres-
66 Capítulo 4. Metodologia para Detecção de Fraude
cente pela probabilidade de fraude, percebe-se que existe um ponto no ranking onde
as fraudes são 100% cobertas. Dessa forma, possibilitou-se maximizar os resultados
do classificador. A Figura 4.7 mostra em cinza a região do gráfico onde espera-se que
os resultados dos classificadores estejam para que seja possível considerar um ganho
financeiro.
composta por cinco passos com o objetivo de auxiliar o processo de detecção de fraude
desde a obtenção dos dados para a formação de um dataset, passando pela escolha de
técnicas mais promissoras, até a avaliação dos resultados obtidos. Em cada uma dos
passos são apresentadas metodologias e/ou orientações para sua realização, conside-
rando o contexto de fraude, fornecendo uma boa orientação para quem deseja realizar
pesquisas nessa área. O próximo capítulo apresentará um estudo de caso onde a me-
todologia aqui apresentada será instanciada para a realização do processo de detecção
de fraude em um conjunto de dados real de uma das maiores empresas no Brasil de
serviços de pagamentos eletrônicos o UOL PagSeguro.
Capítulo 5
69
70 Capítulo 5. Estudo de Caso - UOL PagSeguro
Nesta etapa os dados que serão usados para detecção de fraude são selecionados
para que sejam utilizados pelas técnicas de mineração de dados. Entretanto, é neces-
sária uma compreensão do domínio do problema e uma análise e entendimento dos
dados para seleção dos melhores atributos. O objetivo geral do processo já se encontra
definido que consiste em fazer uso das abordagens e técnicas definidas pela metodo-
logia de detecção de fraude para auxiliar na identificação das transações que podem
causar chargeback. Definido o objetivo geral, uma ampla pesquisa na área de fraudes
em pagamentos online foi realizada para compreensão do domínio do problema. Isso
foi apresentado nos Capítulos 2 e 3, que descrevem todo o conhecimento adquirido
para detecção de fraude. Além do mais, foram fornecidas pelo UOL PagSeguro do-
cumentações utilizadas no treinamento dos responsáveis pela análise manual do risco
das transações. Todo esse conhecimento acumulado permitiu uma preparação para a
escolha das informações que serão relevantes na identificação de fraude.
Um entendimento dos dados também é necessário e isso envolve a compreensão
da fonte de dados e ferramentas para sua manipulação. É importante também o co-
nhecimento da informação semântica fornecida pelos domínios, tipos, faixas de valores
dos atributos e as relações entre eles. Para análise dos dados, o UOL PagSeguro dispo-
nibilizou uma base no formato DUMP do Oracle2 com um tamanho de 32 GigaBytes
(GB). Essa base compreende o período entre janeiro de 2006 a início de janeiro de 2011
e foi extraída da instância de Quality Assurance (QA) que é a instância utilizada para
validação final do sistema, onde, teoricamente, os dados estarão semelhantes aos dados
de produção com pouca ou nenhuma perda de realismo. Para importação desse DUMP
é necessária a instalação de um gerenciador de banco de dados Oracle que pode ser
2
http://www.oracle.com.br
72 Capítulo 5. Estudo de Caso - UOL PagSeguro
obtido pelo site da empresa desde que usado para fins acadêmicos. A versão obtida foi
a 10g, que utiliza uma menor quantidade de recursos da máquina.
A importação do DUMP durou aproximadamente 8 horas e a base de dados ex-
traída possuía centenas de tabelas e milhares de registros. Importante ressaltar que,
informações altamente confidenciais, como por exemplo, número do cartão, CPF, ou
até mesmo e-mail são criptografados pelo UOL PagSeguro de forma que os dados for-
necidos preservam a segurança de quem utiliza esse serviço. Além do mais, termos
de confidencialidade devem ser assinados por todos os envolvidos na pesquisa que li-
dam diretamente com os dados. Isso garante ainda mais a segurança da informação
existentes no UOL PagSeguro, já que além da cobertura técnica existe uma cobertura
jurídica.
Para entendimento do banco de dados, o UOL PagSeguro forneceu um documento
com a descrição completa das tabelas e atributos, bem como, do domínio dos atributos.
Além do mais, foi fornecido o modelo de entidade e relacionamento do banco de dados
no formato pdf. Entretanto, a navegação entre as entidades e seus relacionamentos
era difícil, o que comprometia o entendimento dos dados. Sendo assim, foi utilizado
o software Power Designer em sua versão 15.1 desenvolvido pela empresa Sybase3 .
Por meio desse software, foi feita a engenharia reversa do banco de dados gerando um
modelo entidade-relacionamento no formato do Power Designer. Esse modelo permitiu
uma maior agilidade na manipulação das tabelas e seus relacionamentos, facilitando o
entendimento dos dados.
Este trabalho de compreensão da informação fornecida, se estendeu por meses
onde várias questões foram levantadas e enviadas para especialistas do UOL PagSe-
guro. Após o entendimento desses dados, foi utilizada a metodologia de extração da
informação do banco de dados definida no Capítulo 4. A Figura 5.2 ilustra a instanci-
ação da metodologia para o banco de dados Oracle existente no UOL PagSeguro.
Conforme sugerido no passo 1 da Seção 4.2, foi selecionado um conjunto de
tabelas que contêm informações que auxiliassem na detecção de fraude. Esta seleção
também contou com a ajuda de especialistas do UOL PagSeguro e reduziu o problema
de seleção para algumas dezenas de tabelas.
Passando para o passo 2, as tabelas selecionadas até então, foram agrupadas para
formação de um dataset. Esse processo de agrupamento consistiu em criar consultas
SQL que permitam a união das tabelas, por meio de junções, formando os grupos.
Neste caso, os grupos definidos foram:
Em cada grupo foi definido uma tabela base e foi criado um documento que mapeia
cada uma das tabelas do grupo e quais os campos deverão ser utilizados para uní-las.
Foi criado também um modelo entidade-relacionamento contendo apenas as tabelas
selecionadas. Estes documentos serviram de referência para a realização das junções.
O processo de auditoria dos dados definido no Capítulo 4 foi utilizado como forma de
garantir que essas uniões não introduzissem erros no dataset.
Concluídas as junções de cada um dos grupos, os scripts gerados foram utilizados
na criação de views. Sendo assim, foram criadas 4 views correspondendo a cada um
dos grupos definidos. Seguindo para o passo 4 os grupos criados foram unidos em
um único dataset. Para isso foi utilizado o mesmo processo de auditoria mostrado na
Figura 4.4. Neste caso, a tabela base será a view transação e o script gerado para junção
74 Capítulo 5. Estudo de Caso - UOL PagSeguro
será utilizado para criar a view que conterá o dataset completo. O passo final, passo
5, consiste em extrair o dataset criado para um arquivo texto no formato CSV. Para
isso foi utilizado o comando SPOOL do Oracle que permite a extração dos resultados
de uma consulta para um arquivo texto, maiores detalhes sobre esse comando pode ser
encontrado em Thomas [2009].
Concluída a extração do dataset, optou-se por realizar uma análise inicial das
informações extraídas para verificar se estão adequadas para os passos seguintes. Um
dos principais motivadores para a análise inicial da qualidade dos dados deve-se ao
fato de que o DUMP fornecido não ter sido obtido diretamente dos dados de produção.
Isso poderá propiciar a existência de muitas informações não legítimas e altamente
inconsistentes inviabilizando qualquer trabalho de mineração de dados. A realização
dessa análise teve como base a verificação de atributos com relação a valores nulos
e inconsistentes. Os dados também foram contabilizados com base em determinados
atributos, como, por exemplo, número de casos de chargeback e não chargeback. Foram
verificados também máximos e mínimos de determinados atributos. As estatísticas ex-
traídas dessa análise não serão apresentadas devido à confidencialidade das informações
extraídas. Por meio dessa análise, pôde-se verificar várias inconsistências nos dados.
Entretanto, o que mais despertou a atenção foi a frequência extremamente baixa dos
casos de chargeback, muito abaixo do esperado e se concentrando nos 3 meses finais do
dataset. Pode-se perceber então que grande parte dos dados não poderia ser utilizada,
talvez apenas os 3 meses finais pois mostravam-se relativamente consistentes.
Devido ao problema de qualidade dos dados, optou-se por não utilizá-los oficial-
mente para desenvolvimento da pesquisa, no entanto, eles podem ser úteis para alguns
testes preliminares. Dessa forma, foi verificado junto ao UOL PagSeguro a possibili-
dade de extração das informações desejadas diretamente do banco de produção. Para
que isso fosse possível, era necessário o desenvolvimento de uma solução de extração
que não comprometesse significativamente o desempenho do banco e que não extraísse
dados sigilosos que deveriam passar por alguma criptografia. A solução proposta fez
uso de toda a metodologia descrita, onde foi gerado um script único que realiza todos
os passos da metodologia. Inicialmente, ele cria as views de transação, comprador, ven-
dedor, crédito e em seguida a view que une todas a 4 anteriores. O próximo passo é a
extração dos dados para um arquivo no formato CSV, que é feito via comando SPOOL.
Para atender ao requisito de não onerar o banco de produção o script foi parametrizado
de forma que o volume de dados a serem extraídos pode ser definido pelo usuário. Para
reduzir ainda mais a necessidade de uso do servidor de banco de dados de produção, as
views poderiam ser criadas em um outro banco da rede do UOL PagSeguro e os dados
do banco de produção poderiam ser acessados via DBLINK. De uma forma resumida,
5.3. Pré-Processamento 75
DBLINK permite que dois bancos de dados se comuniquem de forma que suas tabelas
possam ser compartilhadas. Os atributos selecionados não fazem uso direto de dados
que requerem criptografia, maiores detalhes serão vistos nas etapas posteriores uma
vez que várias tarefas dessas etapas foram antecipadas devido às restrições impostas
para obtenção dos dados.
O script foi fornecido ao UOL PagSeguro, eles optaram por realizar extrações
mensais dos dados e, dessa forma, não comprometer o desempenho do banco de produ-
ção. O período extraído foi de agosto de 2010 a julho de 2011 separados em arquivos
no formato CSV mensais, cada mês fornecido possui milhões de registros. Novamente,
uma análise da consistência dos dados foi feita, conforme descrita anteriormente e os
mesmos se mostraram adequados para a realização das próximas etapas.
Como já dito anteriormente, uma consideração importante a ser feita é que o
objetivo geral do processo para detecção de fraude foi definido que é fazer uso de suas
abordagens e técnicas para auxiliar na identificação das transações que podem causar
chargeback. No entanto, a detecção de fraude está associada a duas vertentes. Essas
vertentes consistem na identificação de padrões intra ou inter-transações. A identifi-
cação de padrões intra-transações tem como objetivo classificar uma transação como
fraudulenta ou não, baseada em seus atributos. O padrão inter-transações consiste
em analisar uma sequência de transações e a partir disso identificar a existência de
fraude. Esta pesquisa trabalha com a identificação de fraude na busca de padrões
intra-transações, ou seja, dado como entrada uma transação com um conjunto de atri-
butos, um modelo deverá classificar essa transação como fraudulenta (chargeback) ou
não. Grande parte desse foco se deve às características dos dados obtidos, além do
mais, as duas vertentes existentes podem envolver estudos diferentes, o que ampliaria
ainda mais o universo de pesquisa.
5.3 Pré-Processamento
Como dito no Capítulo 4 e observado neste capítulo na etapa de seleção, não é
realista esperar que os dados estejam perfeitos. Podem existir vários problemas como
valores faltando ou ilegítimos, objetos duplicados ou não representativos do problema.
Nesta etapa, o dataset gerado será analisado com o objetivo de se realizar uma limpeza
nos dados de forma a eliminar ruídos. Para isso, estratégias de visualização como grá-
ficos de dispersão e histogramas serão utilizados. Serão feitas algumas caracterizações
dos dados considerando valores máximos, mínimos e médios. Várias análises foram
feitas no dataset, entretanto, devido à confidencialidade das informações, somente al-
76 Capítulo 5. Estudo de Caso - UOL PagSeguro
gumas serão mostradas. Foram selecionadas aquelas em que é possível a sua exibição
sem que se comprometa o sigilo dos dados, além do mais, apenas valores relativos serão
considerados. As ferramentas utilizadas nesse processo foram:
1. Weka: ferramenta desenvolvida em Java que, segundo Hall et al. [2009], consiste
em uma coleção de algoritmos de aprendizado de máquina para tarefas de mine-
ração de dados. Os algoritmos podem ser aplicados diretamente a um conjunto de
dados ou chamados a partir de um código Java. Weka contém ferramentas para
pré-processamento, classificação, regressão, agrupamento, regras de associação e
visualização.
2. AWK: linguagem para manipulação de arquivos de texto. Nessa etapa foi utili-
zado para fazer a consolidação dos dados para geração dos gráficos.
3. A Figura 5.5 mostra a distribuição em relação aos dias da semana. Por esse
gráfico não é identificado nenhum dia em que a transação de chargeback ocorre
com maior frequência.
4. A Figura 5.6 mostra a distribuição dos dados em relação às horas do dia e pode-se
perceber uma distribuição menor das transações no período da madrugada.
com sucesso. O somatório de cada uma das categorias irá fechar em 100%. Os gráficos
gerados são listados e discutidos abaixo:
1. A Figura 5.10 mostra a distribuição relativa dos registros em relação aos dias
da semana. No eixo X o código 1 indica domingo e mantendo a sequência até o
código 7 que indica sábado. Note que a distribuição relativa indica uma ocorrência
maior dos chargebacks nos finais de semana.
2. A Figura 5.11 mostra a distribuição relativa dos registros em relação aos horá-
rios do dia. Pode-se perceber que as fraudes possuem uma maior ocorrência no
período da madrugada e da noite.
5. A Figura 5.14 mostra a distribuição relativa dos registros em relação aos charge-
backs ocorridos ao longo dos meses. O que mais se destaca no gráfico é que o mês
de agosto de 2010 apresenta uma alta concentração de chargebacks. Foi verificado
com o UOL PagSeguro o motivo dessa concentração maior de fraudes em agosto.
Identificado o motivo, que nesse caso também é confidencial, os registros do mês
de agosto foram desconsiderados e por segurança os de setembro também. No
Capítulo 2 foi informado que as notificações de ocorrências de chargeback podem
ser superiores a 72 dias. Existem casos na base de UOL PagSeguro que o registro
de chargeback ocorreu após 6 meses. Sendo assim, considerando o período de
recebimento da base, foram retirados os meses de janeiro de 2011 a julho de 2011
devido ao risco de existirem registro de fraude que ainda não foram notificados.
Ao final, a base utilizada será composta apenas pelos meses de outubro, novembro
e dezembro de 2010.
Foi verificado também campos que possuíam muitos valores nulos, acima de 90%.
Aqueles que possuíam essa característica também foram retirados da base de dados.
Também foram retirados campos de IDs, como, por exemplo, ID da transação, ID do
comprador, ID do Vendedor, entre outros. Sendo assim, ao final desta etapa espera-se
ter retirado a maior quantidade de ruídos possível deixando apenas informações que
80 Capítulo 5. Estudo de Caso - UOL PagSeguro
Figura 5.5. Dispersão dos dados em relação aos dias da semana. O eixo X a
esquerda em azul representa os registros de não chargeback e a direita em vermelho
os registros de chargeback. O eixo Y representa os dias da semana.
5.4 Transformação
Nesta etapa focou-se principalmente na criação de novos atributos, derivados
daqueles existentes no dataset. Foi realizada uma redução de dimensionalidade com
o objetivo de viabilizar a etapa de mineração de dados. Optou-se por não fazer uma
amostragem do dataset gerado para que não ocorra perda de informação, apenas foi
feita uma separação por meses.
Alguns atributos passaram por transformações com o objetivo de torná-los viáveis
para as técnicas de mineração de dados, uma vez que alguns formatos não permitiriam
ganho de informação mesmo sendo relevantes. Sendo assim, os atributos de data que
estavam no formato DD/MM/AAAA HH:MM foram separados gerando 4 atributos:
dia da semana, semana, mês e hora. Acredita-se que esse formato seja mais inteligível
para as técnicas de mineração. O campo data de nascimento do titular do cartão foi
5.4. Transformação 81
Figura 5.6. Dispersão dos dados em relação às horas do dia. O eixo X a esquerda
em azul representa os registros de não chargeback e a direita em vermelho os
registros de chargeback. O eixo Y representa as horas do dia.
forma não se revela o número do CPF do usuário. Além do mais, esse era um
dos requisitos para se obter os dados diretamente de produção.
Atributo Descrição
Valor Atributo numérico que representa o valor da transação.
Indicador de Pontuação Indica se a transação gerou pontuação.
Dia da Transação Dia da semana em que a transação foi criada. Exemplo:
Segunda, Terça, Quarta, etc.
Hora da Transação Horário em que a transação foi iniciada.
Tipo Usuário Comprador Define o tipo de conta do usuário.
Período de Registro do Com- Número de dias em que o comprador foi registrado até o
prador momento da transação.
Número de Parcelas Número de parcelas selecionadas para o pagamento.
Pontos do Comprador Número de pontos absolutos, acumulados pelo usuário, ba-
seado nas transações bem sucedidas às quais ele realizou.
Período de Registro do Vende- Número de dias em que o vendedor foi registrado até o mo-
dor mento da transação.
Categoria da Loja Categoria principal de produto ou serviço oferecido pelo ven-
dedor.
Operadora de Cartão de Cré- Identificador da operadora de cartão de crédito.
dito
Idade Proprietário Cartão Idade do proprietário do cartão na data de criação da tran-
sação.
Flg DDD Indica se o número do DDD do titular do cartão no serasa é
diferente do DDD do usuário cadastrado no UOL PagSeguro.
Estado Sigla do estado brasileiro do usuário.
Flg Leitura Indica se o comprador visualizou os detalhes da transação.
Classe Indica a classe ao qual a transação pertence. Ou seja, char-
geback e não chargeback.
Flg Usuário Registrado Indica se o comprador que está realizando a transação está
registrado no UOL PagSeguro.
Flg CPF Indica se o número do CPF do titular do cartão é diferente
do CPF do usuário cadastrado no UOL Pagseguro.
Informação Válida Indica se as informações fornecidas pelo Serasa estão com-
patíveis com as informações fornecidas pelo comprador.
Status Serasa Identificador do status no Serasa.
CPF Válido Indicador do Serasa se o CPF é válido.
5.5. Mineração de Dados 85
Nesta etapa deve ser definida a tarefa de mineração de dados a ser realizada, bem
como as técnicas utilizadas nessa tarefa. Como o objetivo do processo de detecção de
fraude é, dado um conjunto de atributos, definir se uma transação é fraudulenta ou não,
86 Capítulo 5. Estudo de Caso - UOL PagSeguro
1. Árvore de Decisão: O Algoritmo utilizado foi o C4.5 que consegue lidar também
com atributos contínuos. Segundo Phua et al., em termos de precisão da previsão,
C4.5 é um pouco melhor do que CART e ID3. Uma discussão mais profunda do
algoritmo é apresentada por Quinlan [1993].
5
http://homepages.dcc.ufmg.br/∼adrianov/software/ddac.htm
5.6. Interpretação e Avaliação dos Resultados 89
de fraudes, uma média de 11%. No entanto, o Naive Bayes, no geral apresentou uma
melhor eficiência econômica, isso porque as fraudes detectadas por esse classificador
apresentavam valores muito maiores do que as fraudes obtidas pelo RIPPER. Isso
mostra que nem sempre os melhores modelos irão obter a melhor eficiência econômica,
sendo necessária a avaliação em conjunto com outras métricas. O mês de dezembro
representou uma melhora para o classificador J48, que obteve a melhor eficiência econô-
mica e uma Medida F1 comparável à do RIPPER. Isso ocorreu porque esse mês possui
uma ligeira melhora na distribuição dos registros de fraude, o que pode ter favorecido
esse classificador. O resultado não tão bom com o LAC provavelmente está associado
à necessidade de discretização de algumas variáveis para utilização desse algoritmo, o
que representa uma perda de informação. Além do mais, como foi feita uma discretiza-
ção com intervalos fixos de valores isso pode ter contribuído, ainda mais, para a piora
do desempenho. Com relação ao percentual do ranking necessário para se maximizar
os resultados, o Naive Bayes apresentou os menores percentuais para se atingir esse
objetivo. Nesta avaliação, conforme já mencionado, a melhor eficiência econômica foi
obtida com o algoritmo Naive Bayes, sendo o melhor valor obtido no mês de novem-
5.6. Interpretação e Avaliação dos Resultados 91
bro. As Figuras 5.21, 5.22 e 5.22 mostram os gráficos que ilustram o comportamento
dos resultados desse classificador ao longo do ranking. Cabe ressaltar que os melhores
resultados são obtidos na porção inicial dos gráficos (topo do ranking) e ocorre uma
queda significativa no decorrer do ranking. Isso pode ser explicado pela diminuição
rápida da precisão à medida que se “caminha” no ranking.
inicial do ranking.
As Tabelas 5.4, 5.5 e 5.6 mostram os resultados das técnicas selecionadas, con-
siderando alterações na distribuição das classes de fraude. O objetivo com esse expe-
rimento é avaliar se uma melhora na distribuição das classes de fraude permitirá uma
melhora nos resultados dos classificadores. Durante a realização dos testes, ocorreu um
problema com o RIPPER, já que o aumento na distribuição e no número de registros
fez com que o consumo de memória dessa técnica aumentasse consideravelmente, impe-
dindo que a mesma fosse executada com uma distribuição de 10% das classes de fraude.
Sendo assim, não foi possível obter os resultados para esse algoritmo para a técnica de
Oversampling. No geral, tanto para o algoritmo J48 quanto para o Naive Bayes ocor-
reu uma melhora da cobertura de fraude, mostrando que essa alteração na distribuição
contribui para uma melhora na identificação da classe minoritária. No entanto, tanto
o J48 quanto o LAC apresentam uma piora na precisão e isso se deve ao aumento na
quantidade de registros legítimos sendo classificados como fraude. No caso do J48 essa
piora na precisão não afetou negativamente a eficiência econômica, pois na maioria dos
casos ela foi superior ao resultado da técnica onde não houve mudança da distribuição.
Para o LAC a alteração da distribuição representou uma piora na eficiência econômica
94 Capítulo 5. Estudo de Caso - UOL PagSeguro
uma vez que houve uma queda significativa na precisão. Nesse algoritmo, essa nova
distribuição apenas aumentou as probabilidades dos registros que já são fraude, no en-
tanto muitos registro legítimos que antes não eram classificados como fraude passaram
a ser considerados como tal, o que acarretou piora na precisão e pouca ou nenhuma
melhora na revocação. O Naive Bayes mostrou os melhores resultados apresentando
melhoras significativas em todas as métricas. O mês de dezembro apresentou o melhor
resultado em relação à eficiência econômica, atingindo um valor de 36,42% sem con-
siderar a penalidade e 36,41% considerando a penalidade, mas não superior à técnica
5.6. Interpretação e Avaliação dos Resultados 95
Mês Medida 10% J48 20% J48 30% J48 40% J48 50% J48
Out. Precisão 8,38 6,72 7,80 11,53† 9,30
Revocação 17,02 20,60† 17,02 14,95 18,88
EE_SP 3,00† 3,00† 3,00† 3,00† 3,00†
EE_CP 2,00 2,00 2,00 2,00 3,00†
Ganho_SP 8,11 9,25 9,44 8,85 9,98†
Ganho_CP 6,29 6,39 7,29 7,67 8,15†
Perc. Rank. 0,66 1,00 0,75 0,42† 0,66
Medida F1 11,23 10,13 10,70 13,02† 12,46
Nov. Precisão 10,05† 9,04 7,50 7,12 8,90
Revocação 22,34 21,87 23,94 25,26† 21,17
EE_SP 5,00 5,00 5,00 6,00† 5,00
EE_CP 5,00† 4,00 4,00 4,00 5,00†
Ganho_SP 15,28 14,44 14,23 16,14† 15,82
Ganho_CP 13,33 12,12 11,05 12,99 13,70†
Perc. Rank. 0,72† 0,78 1,03 1,15 0,77
Medida F1 13,86† 12,79 11,42 11,11 12,53
Dez. Precisão 9,06† 8,11 8,07 7,80 5,89
Revocação 21,86 27,09† 22,75 20,23 25,13
EE_SP 9,00 10,00† 9,00 9,00 8,00
EE_CP 8,00 9,00† 8,00 8,00 7,00
Ganho_SP 21,20 22,68† 20,58 19,58 18,89
Ganho_CP 19,21 20,09† 18,28 17,45 15,41
Perc. Rank. 0,88† 1,20 1,02 0,94 1,54
Medida F1 12,81† 12,48 11,91 11,26 9,54
cadores. No caso do LAC a identificação das fraudes somente foi possível com a
utilização do ranking das probabilidades. No caso do J48, sem que fosse utilizado
meta aprendizado ou oversampling, foi possível uma melhora da cobertura com
o ranking, mas uma piora na precisão e na eficiência econômica. No entanto, a
eficiência econômica foi pouco afetada. Sendo assim, nem sempre o ranking po-
tencializará os resultados obtidos, mas não causará perdas muito significativas.
Mês Medida 10% LAC 20% LAC 30% LAC 40% LAC 50% LAC
Out. Precisão 6,64 6,47 5,92 6,04 8,48†
Revocação 18,49 17,75 19,70† 16,97 11,36
EE_SP 2,00† 2,00† 2,00† 1,00 1,00
EE_CP 1,00† 1,00† 1,00† 0,00 1,00†
Ganho_SP 5,39† 4,87 4,85 3,94 3,66
Ganho_CP 2,35† 1,86 0,67 0,53 2,12
Perc. Rank. 0,79 0,77 1,08 0,91 0,44†
Medida F1 9,77† 9,48 9,10 8,91 9,71
Nov. Precisão 7,63† 3,47 2,34 6,46 5,90
Revocação 18,79† 17,80 15,00 7,00 7,13
EE_SP 2,00† 1,00 1,00 1,00 1,00
EE_CP 1,00† 1,00† 1,00† 0,00 0,00
Ganho_SP 5,41† 3,92 2,22 3,50 3,22
Ganho_CP 2,29 3,28† 1,69 0,96 0,69
Perc. Rank. 0,80 0,06 0,05† 0,35 0,39
Medida F1 10,85† 5,81 4,05 6,72 6,46
Dez. Precisão 6,18† 5,26 5,42 4,69 4,30
Revocação 24,35 24,61† 21,16 22,83 22,01
EE_SP 8,00† 8,00† 7,00 7,00 7,00
EE_CP 7,00† 6,00 6,00 5,00 5,00
Ganho_SP 19,09† 17,88 16,83 15,72 14,89
Ganho_CP 15,12† 13,46 13,12 11,57 10,70
Perc. Rank. 1,42 1,68 1,47 1,75 1,84†
Medida F1 9,86† 8,67 8,63 7,78 7,19
101
102 Capítulo 6. Conclusão e Trabalhos Futuros
Alvarez, G. & Petrovic, S. (2003). A new taxonomy of web attacks suitable for efficient
encoding. Computers & Security, 22(5):435–449.
Barse, E. L.; Kvarnström, H. & Jonsson, E. (2003). Synthesizing test data for fraud
detection systems. Em Proceedings of the 19th Annual Computer Security Applica-
tions Conference, ACSAC ’03, pp. 384--, Washington, DC, USA. IEEE Computer
Society.
Bhatla, T. P.; Prabhu, V. & Dua, A. (2003). Understanding Credit Card Frauds. USA.
Bolton, R. J. & Hand, D. J. (2002). Unsupervised Profiling Methods for Fraud Detec-
tion. Statistical Science, 17(3):235--255.
Brause, R.; Langsdorf, T. & Hepp, M. (1999). Neural data mining for credit card fraud
detection. Em Proceedings of the 11th IEEE International Conference on Tools with
105
106 Referências Bibliográficas
Artificial Intelligence, ICTAI ’99, pp. 103--, Washington, DC, USA. IEEE Computer
Society.
Cabena, P.; Hadjinian, P.; Stadler, R.; Verhees, J. & Zanasi, A. (1998). Discovering
Data Mining: From Concepts to Implementation. Prentice Hall Saddle River, New
Jersey, USA.
Chang, C.-C. & Lin, C.-J. (2011). Libsvm: A library for support vector machines.
ACM Trans. Intell. Syst. Technol., 2(3):27:1--27:27. ISSN 2157-6904.
Cios, K. J. & Kurgan, L. A. (2005). Trends in data mining and knowledge discovery.
pp. 1–26. Springer.
Cios, K. J.; Pedrycz, W.; Swiniarski, R. W. & Kurgan, L. A. (2007). Data Mining A
Knowledge Discovery Approach. Springer.
Domingos, P. & Pazzani, M. (1996). Beyond independence: Conditions for the optima-
lity of the simple bayesian classifier. Em Machine Learning, pp. 105--112. Morgan
Kaufmann.
Elkan, C. (2001). Magical thinking in data mining: lessons from coil challenge 2000.
Em Proceedings of the seventh ACM SIGKDD international conference on Knowledge
discovery and data mining, KDD ’01, pp. 426--431, New York, NY, USA. ACM.
Fawcett, T. (2003). “in vivo"spam filtering: a challenge problem for kdd. SIGKDD
Explor. Newsl., 5:140--148. ISSN 1931-0145.
Fawcett, T. & Provost, F. (1997). Adaptive fraud detection. data mining and knowledge
discovery.
Fayyad, U. M. (1996). Data mining and knowledge discovery: Making sense out of
data. IEEE Expert: Intelligent Systems and Their Applications, 11:20–25. ISSN
0885-9000.
Referências Bibliográficas 107
Fayyad, U. M.; Piatetsky-Shapiro, G. & Smyth, P. (1996c). The kdd process for
extracting useful knowledge from volumes of data. Commun. ACM, 39:27–34. ISSN
0001-0782.
Hall, M.; Frank, E.; Holmes, G.; Pfahringer, B.; Reutemann, P. & Witten, I. H. (2009).
The weka data mining software: an update. SIGKDD Explor. Newsl., 11(1):10--18.
ISSN 1931-0145.
Han, J. & Kamber, M. (2005). Data Mining: Concepts and Techniques. Morgan
Kaufman.
Japkowicz, N. & Stephen, S. (2002). The class imbalance problem: A systematic study.
Intelligent Data Analysis, 6(5):429–449.
Júnior, J. F.; Veloso, A.; Jr., W. M. & Pereira, A. (2011). Fraud detection in electronic
transactions. Iadis International Conference WWW/Internet, 1:333--339. ISSN 978-
989-8533-01-2.
Kou, Y.; Lu, C.-T.; Sirwongwattana, S. & Huang, Y.-P. (2004). Survey of fraud
detection techniques. Em Networking, Sensing and Control, 2004 IEEE International
Conference on, volume 2, pp. 749--754 Vol.2.
Larivière, B. & Van den Poel, D. (2005). Predicting customer retention and profita-
bility by using random forests and regression forests techniques. Expert Syst. Appl.,
29(2):472--484. ISSN 0957-4174.
Lundin, E.; Kvarnström, H. & Jonsson, E. (2002). A synthetic fraud data genera-
tion methodology. Em Proceedings of the 4th International Conference on Informa-
tion and Communications Security, ICICS ’02, pp. 265--277, London, UK. Springer-
Verlag.
Maes, S.; Tuyls, K.; Vanschoenwinkel, B. & Manderick, B. (1993). Credit card fraud
detection using bayesian and neural networks. Em In: Maciunas RJ, editor. Inte-
ractive image-guided neurosurgery. American Association Neurological Surgeons, pp.
261--270.
Mannila, H. (1997). Methods and problems in data mining. Em Proceedings of the 6th
biennial International Conference on Database Theory (ICDT’97), Lecture Notes in
Computer Science, Vol. 1186, pp. 41–55. Springer-Verlag.
Maranzato, R.; Pereira, A.; Neubert, M. & do Lago, A. P. (2010). Fraud detection in
reputation systems in e-markets using logistic regression and stepwise optimization.
SIGAPP Appl. Comput. Rev., 11:14--26. ISSN 1559-6915.
Referências Bibliográficas 109
Metwally, A.; Agrawal, D. & Abbadi, A. E. (2005). Using association rules for fraud
detection in web advertising networks. Em Proceedings of the 31st international
conference on Very large data bases, VLDB ’05, pp. 169–180. VLDB Endowment.
Mindware Research Group, C. (2011). 2011 Online Fraud Report. California, USA,
12th annual edition edição.
Ngai, E. W. T.; Hu, Y.; Wong, Y. H.; Chen, Y. & Sun, X. (2011). The application
of data mining techniques in financial fraud detection: A classification framework
and an academic review of literature. Decis. Support Syst., 50(3):559--569. ISSN
0167-9236.
Pal, N. R. & Jain, L. (2005). Data Mining A Knowledge Discovery Approach. Springer.
Philip K. Chan, Wei Fan, A. P. & Stolfo, S. J. (1999). Distributed data mining in
credit card fraud detection. IEEE Intelligent Systems, 14:67--74.
Phua, C.; Alahakoon, D. & Lee, V. (2004). Minority report in fraud detection: classi-
fication of skewed data. SIGKDD Explor. Newsl., 6(1):50--59.
Phua, C.; Lee, V.; Smith-Miles, K. & Gayler, R. (2005). A comprehensive survey of
data mining-based fraud detection research.
S., A. & A., B. (1998). Advanced Techniques in Knowledge Discoveryand Data Mining.
Springer.
Shearer, C. (2000). The CRISP-DM model: The new blueprint for data mining. Journal
of Data Warehousing, 5:13–22.
Simoudis, E. (1996). Reality check for data mining. IEEE Expert: Intelligent Systems
and Their Applications, 11:26–33. ISSN 0885-9000.
110 Referências Bibliográficas
Tan, P.-N.; Steinbach, M. & Kumar, V. (2009). Introdução ao Data Mining: Mineração
de Dados. Ciência Moderna.
Thomas, B. (2009). OCA - Oracle Database 11g Administrator - Study Guide. Wiley.
Thomas, B.; Clergue, J.; Schaad, A. & Dacier, M. (2004). A comparison of conven-
tional and online fraud. Em CRIS’04, 2nd International Conference on Critical
Infrastructures, October 25-27, 2004 - Grenoble, France.
Torgo, L. (2010). Data Mining with R: Learning with Case Studies. CRC Press.
Vasiu, L. & Vasiu, I. (2004). Dissecting computer fraud: From definitional issues to a
taxonomy. Em Proceedings of the Proceedings of the 37th Annual Hawaii Internati-
onal Conference on System Sciences (HICSS’04) - Track 7 - Volume 7, HICSS ’04,
pp. 70170.3--, Washington, DC, USA. IEEE Computer Society.
Veloso, A.; Meira, W. & Zaki, M. J. (2006). Lazy associative classification. Em Int.
Conf. on Data Mining, pp. 645--654.
Whitrow, C.; Hand, D. J.; Juszczak, P.; Weston, D. & Adams, N. M. (2009). Tran-
saction aggregation as a strategy for credit card fraud detection. Data Min. Knowl.
Discov., 18(1):30--55. ISSN 1384-5810.
Williams, G. J. & Huang, Z. (1997). Mining the knowledge mine: The hot spots
methodology for mining large real world databases.
Wong, N.; Ray, P.; Stephens, G. & Lewis, L. (2012a). Artificial immune systems for the
detection of credit card fraud: an architecture, prototype and preliminary results.
Information Systems Journal, 22(1):53--76. ISSN 1365-2575.
Wong, N.; Ray, P.; Stephens, G. & Lewis, L. (2012b). Artificial immune systems for the
detection of credit card fraud: an architecture, prototype and preliminary results.
Inf. Syst. J, 22(1):53--76.
Written, I. W. & Frank, E. (2005). Data Mining: Practical Machine Learning Tools
and Techniques. Elsevier.