Luciana Braga Rocha Previsão de clientes inativos utilizando técnicas de DATA MINING. Monografia de Final de Curso 31/08/2015 Monografia apresentada ao Departamento de Engenharia Elétrica da PUC/Rio como parte dos requisitos para a obtenção do título de Especialização em Business Intelligence. Orientador: Marley Vellasco 2 Dedicatória Esse trabalho é dedicado a três pessoas mais importantes da minha vida. Ao meu noivo, Julio César Oliveira Maciel, que sempre está ao meu lado, compartilhando momentos de alegrias e dificuldades. A minha mãe, Maria Cornélia Braga, que é o meu maior exemplo de profissional, de estudante, de Mãe, de Pai, de Amiga e principalmente de ser humano. Busco sempre agradecer todo o esforço feito para que hoje eu possa escrever esse trabalho de conclusão de curso. Ao meu irmão, João Carlos Braga Rocha, que é meu maior orgulho. Somos grandes amigos. Por mais novo que o João seja, seu conhecimento sobre a vida é imenso. Busco sempre aprender e na medida do possível apoiar em seus sonhos. A realização de seus sonhos é a minha satisfação. 3 Agradecimentos Agradeço a minha professora orientadora Marley Vellasco. 4 Sumário 1 Introdução ............................................................................................... 7 1.1 Motivação ............................................................................................. 9 1.2 Objetivos do trabalho ......................................................................... 11 1.3 Descrição do trabalho ........................................................................ 13 1.4 Organização da monografia ............................................................... 14 2 Descrição do Problema ......................................................................... 15 3 Metodologias ......................................................................................... 21 3.1 Métodos Disponíveis .......................................................................... 21 3.1. 1 One-R ............................................................................................. 24 3.1. 2 J48.................................................................................................. 25 3.1. 3 Naive Bayes ................................................................................... 25 4. Arquitetura do Sistema Proposto.......................................................... 27 4.1 Proposta ............................................................................................. 27 4.2 Pré - processamento .......................................................................... 28 4.3 Mineração de dados ........................................................................... 34 4.4 Pós - processamento ......................................................................... 34 4.5 Regras de negócios ........................................................................... 35 4.6 Regras Específicas do Sistema .......................................................... 36 4.7 Arquitetura para o sistema ................................................................. 38 4.8 Camada de dados .............................................................................. 39 4.9 Camada de aplicação ......................................................................... 39 4.10 Camada de apresentação .............................................................. 410 4.11 Diagrama de casos de uso ............................................................... 41 4.12 Diagrama de atividade:..................................................................... 42 4.13 Implantação e possíveis expansões ................................................. 42 5 Resultados Obtidos ............................................................................... 43 5.1 Weka .................................................................................................. 43 5.2 Algoritmos .......................................................................................... 44 5.3 Resultados alcançados ...................................................................... 45 6 Conclusões e Trabalhos Futuros........................................................... 59 7 Referências Bibliográficas ..................................................................... 61 5 Resumo O trabalho proposto apresenta um estudo de Mineração de Dados WEB, no qual transforma dados relacionados ao comportamento dos usuários digitais em informações preditivas. Mediante a análise de informações web, a monografia propõe-se compreender e solucionar questões reais referentes ao acréscimo na parcela de clientes classificados como inativos da empresa teste. Ressalta-se que o problema abordado apresenta um nível de complexidade alto, em função das variáveis exógenas e imprevisíveis que podem impactar na insatisfação do cliente. Portanto, a proposta dessa monografia tem o intuito de reter os clientes ativos, na empresa teste. Diversos fatores, tais como entrada de novos concorrentes e dificuldades econômicas, no cenário financeiro, influenciaram na queda do percentual de clientes ativos. É preciso, mediante o conhecimento adquirido sobre seus clientes, ser capaz de interpretar seus objetivos, desejos e motivações. O sistema proposto denominado SAD EMPRESA TESTE utilizará técnicas de DATA MINING, a fim de classificar os atuais clientes em três grupos. São eles: • Grupo 01: Clientes ativos sem probabilidade de se tornarem inativos; • Grupo 02: Clientes ativos com probabilidade de se tornar inativo em 02 meses; • Grupo 03: Clientes inativos sem probabilidade de se tornar ativo; No presente estudo será utilizada a mineração de dados preditiva, cujo objetivo primordial será a classificação dos clientes da empresa teste em grupos, utilizando a ferramenta de informática WEKA (Waikato Environement for Knownledge Analysis). A técnica de mineração de dados empregada consiste na utilização de modelos de árvore de decisão e métodos estatísticos. Nesse estudo foram empregados três algoritmos para comparação. São eles: One R (indução de regras simples – árvore de decisão), J48 (árvore de decisão) e Naive Bayes (métodos probabilísticos). Os melhores resultados forma obtidos através da árvore de decisão, por esse motivo, o sistema especificado para a solução do problema utilizará a técnica de árvore de decisão. É de suma importância informar que, antes do desenvolvimento da monografia, foi solicitado ao departamento de tecnologia da empresa o desenvolvimento de um programa 6 que fosse capaz de armazenar os registros dos logs de uma amostra de clientes. Esses logs armazenaram as seguintes informações: código do cliente, IP do computador, data e hora de entrada e saída, nome das páginas ou seções visitadas no site. Na abordagem de coleta de dados, uma amostra de 300 clientes foi definida. 1/3 é composto por clientes ativos com propensão de permanecer nessa classe, outro 1/3 é formado por clientes ativos com probabilidade de se tornar inativo em menos de 01 mês e o restante é constituído por clientes inativos com tendência de continuarem inativos. Em seguida, técnicas de pré-processamento foram utilizadas. Dentre essas, destaca-se o processo de descarte das variáveis menos importantes. A partir dos dados depurados, são executados os processos de treinamentos e testes. Assim que o nível de erro atingir um mínimo aceitável é possível afirmar que o estudo desenvolveu um modelo capaz de prever quais os atuais clientes ativos da EMPRESA TESTE serão inativos. Contendo esse conhecimento, os departamentos comerciais, poderão elaborar campanhas de incentivo cujo objetivo é evitar a inativação. Nesse estudo, as informações de navegabilidade delimitam-se ao canal Portal Tradicional. Em função do tempo e das dificuldades tecnológicas, não foi possível considerar os dados sobre o comportamento de navegação dos usuários no Portal Móvel, Central de Atendimento (URA), Redes Sociais e Hotsite. Em virtude do não armazenamento dos dados, não foi possível considerá-los como canais. Futuramente, com técnicas mais aprimoradas, será possível acrescentar os dados dos clientes nas redes sociais e em outros canais. 7 1 Introdução Com o crescente avanço tecnológico, o acirramento da relação entre os concorrentes e o aumento do nível de exigência dos consumidores, a informação passa a ter um papel fundamental na estratégia das empresas. E, é justamente nesse panorama em que a empresa objeto desse estudo está inserida. Dessa maneira, a empresa que utiliza a informação, juntamente com técnicas matemáticas de modelagem robusta, consegue se adaptar às mudanças mercadológicas de maneira mais assertiva e dinâmica. É indiscutível que, a transformação de dados brutos em informações inteligentes, garante um diferencial competitivo para qualquer empresa, em qualquer cenário. Porém, em ambientes mais competitivos, onde as circunstâncias são mais complexas, a atividade de bussiness intelligence passa a ser uma questão de sobrevivência. No entanto, é preciso estabelecer processos que possibilitem a extração do conhecimento necessário para a tomada de decisão, a partir de dados. Caso contrário, os dados serão apenas excessos armazenados em servidores e não trarão benefícios para a corporação. Nesse sentido, considerando que a análise de grandes quantidades de dados pelo homem é inviável, os sistemas de apoio a decisão surgem com o objetivo de suportar as decisões de maneira mais ágil e eficiente. Ou seja, com o acréscimo de volume de dados nas empresas e a redução de tempo para resposta às mudanças, o uso da data warehouse se faz necessário com o intuito de atender à necessidade de integração dos sistemas. A empresa objeto desse estudo é uma das maiores corretora de valores da BM&F Bovespa, atuante no setor financeiro. Fundada em 1993, foi uma das pioneiras no sistema de negociação on-line, com a criação do Home Broker. Além disso, foi precursora do modelo de corretagem fixa, no qual um valor fixo é cobrado por cada transação de compra ou venda de ativo é realizada. Normalmente, o modelo de cobrança era executado a partir de um percentual sobre o montante negociado. Estas inovações transformaram o mercado de corretagem atual. Atuando em todas as modalidades de operações da BM&F BOVESPA, a Corretora disponibiliza aos diferentes investidores, produtos adequados e especializados no mercado de ações, bem como Fundos de Investimento, BM&F, Tesouro Direto e Clubes de Investimentos. Durante muitos anos, em função de um posicionamento assertivo e de uma estratégia pautada em inovações, a empresa teste liderou o mercado. Porém, a partir do segundo 8 semestre de 2009, alguns fatores internos e externos fizeram com que, certos clientes, insatisfeitos, deixassem de operar ativamente pela corretora e passassem a negociar na concorrência. Diante dessa realidade, a área denominada Descoberta de Conhecimento em Bases de Dados (Knowledge Discovery in Databases), popularmente, conhecida como, Mineração de Dados ou Data Mining se faz mister. Mediante a essa técnica, é possível compreender um padrão a fim de deduzir o que acontecerá, futuramente ou identificar algo descrito em um conjunto de símbolos. Ou seja, a mineração de dados permite que seja feita correlações, que seja definido padrões e que seja descoberto tendências, tomando como base um grande volume de dados. Portanto, de maneira bastante objetiva, pode-se dizer que a partir da investigação de dados é possível extrair conhecimento. O modelo de Mineração de Dados, objeto desse estudo, visa a compreensão do comportamento do consumidor, no Portal da empresa, a fim de determinar padrões de navegabilidade dos diferentes tipos de cliente. Analisando questões como: tempo médio consumido de um cliente ativo versus um cliente inativo, freqüência de visitas de um cliente ativo versus um cliente inativo, páginas visualizadas por um cliente ativo versus um cliente inativo, será possível desenvolver um sistema capaz de prever quais clientes considerados, hoje, ativos operacionalmente, podem se tornar inativos, futuramente. É importante relembrar que, os dados de navegabilidade analisados referem-se ao portal tradicional da empresa teste. Devido a algumas limitações técnicas não será possível analisar o comportamento do cliente em outros canais, tais como Portal Móvel, Central de Atendimento (URA), Redes Sociais e Hotsites.Tal limitação, não compromete a excelência do trabalho, uma vez que o volume de tráfego no Portal tradicional é significativamente maior do que os demais canais. Dentro do contexto de mineração de dados centrada no cliente, BRAGA (2005)2 1 declara: “É preciso, mediante o conhecimento adquirido sobre seus clientes, ser capaz de interpretar seus objetivos, expectativas e desejos. Isto é conseguido pela “mineração de dados” (Data Mining), ou ainda pela “mineração de dados centrada no cliente” (customer centric Data Mining), que é uma coleção de 1 BRAGA, Luis Paulo Vieira. Rio de Janeiro: E-papers serviços editoriais, 2005 9 técnicas e métodos facilitadora da aquisição e retenção da parte do mercado que cabe a uma empresa (market share).” Em um cenário mais competitivo, onde o surgimento de novos entrantes deixa de ser inexpressivo e passa a ser significativa, a empresa teste necessita, de forma rápida, responder às ações dos outros players, oferecendo benefícios percebidos aos clientes. O objetivo do trabalho consiste em selecionar, clientes que receberão benefícios, através de um critério de relevância. Sabe-se que, oferecer benefícios a base total de clientes, pode ser oneroso, para tanto, focaremos os esforços, em uma parcela de clientes mais insatisfeita, que pode reagir melhor ao beneficio oferecido. 1.1 Motivação O mercado de business intelligence, no qual, o Data Mining está inserido vem crescendo. De acordo com um relatório da consultoria IDC, principal provedora global de inteligência de mercado, serviços de consultoria e eventos para as indústrias de tecnologia da Informação e telecomunicações, o Mercado brasileiro de software de BI movimentou mais de US$ 300 milhões em 2010. As primeiras avaliações relatavam que em 2010 este mercado cresceria 16% em relação a 2009 e atingiria o patamar de US$ 289 milhões. Porém, houve um super-aquecimento e o aumento quase se aproximou dos 20%. Segundo release apresentado no site da IDC3 2 , o mercado de BI, quando comparado aos Estados Unidos, o Brasil cresceu num ritmo mais forte, mas em nível de maturidade ainda fica um pouco atrás. Segundo Carvalho, 70% das aplicações de BI no país ainda referem-se à geração de relatórios. Já na comparação com a América Latina, o Brasil representa mais 50% do mercado total de BI, puxando o desempenho da região. Dessa maneira, a expansão desse mercado propicia a pesquisa e o desenvolvimento de ferramentas melhores e mais sofisticadas. Cabe ressaltar que a chave do processo de busca de conhecimento é a mineração de dados, a 2 IDC, Mercado brasileiro de software de BI movimentou mais de US$ 300 milhões em 2010, segundo estimativa da IDC – 2011. Disponível em: http://www.idclatin.com/news.asp?ctr=bra&year=2011&id_release=1966. Acesso em:17/09/2011. 10 complexidade do processo de KDD está na dificuldade em perceber e interpretar adequadamente inúmeros fatos e na dificuldade em conjugar dinamicamente tais interpretações. Do ponto de vista de negócios, a aplicação prática de mineração de dados, no âmbito de comportamento do consumidor é interessante, visto que, as empresas estão cada vez mais aumentando o seu foco no cliente, compreendendo-o individualmente com o intuito de oferecer-lhe mais benefícios percebidos. A rede mundial de computadores adquire expressiva expansão e passa a fazer parte do cotidiano dos brasileiros, a partir da década de 90. Desde então, salas de chats tornam-se pontos de encontros virtuais, desempregados buscam empregos através de sites de agências de trabalho e consumidores obtêm seus produtos e serviços sem saírem de suas residências, garimpando verdadeiros shopping centers virtuais. A era da internet não apenas propiciou modificações comportamentais. Também é possível perceber mudanças no âmbito empresarial, uma vez que as organizações passam a ter em seu alcance dados valiosos sobre seus e-consumidores 3 . Sendo assim, as empresas conhecem quais são as seções mais visitadas do site, quais são as páginas mais rejeitadas, quais são os caminhos de navegação mais percorridos pelos consumidores digitais e qual é tempo médio de visitação. Nesse cenário, a análise e extração de dados sobre o comportamento dos consumidores virtuais ganham maior relevância. O processo de decomposição dos dados e geração de informações suporta a tomada de decisão estratégica das empresas. A empresa objeto desse estudo é uma corretora de valores da BM&F Bovespa, presente no setor financeiro, há alguns anos. Após longo período de liderança do setor, a empresa teste enfrenta difíceis desafios, propiciados por fatores externos e internos, tais como: entrada de novos concorrentes ocasionando guerra de preços, morosidade no processo de lançamento de produtos, atrasos na entrega de projetos importantes relacionados a otimizações de processos que repercutem no cliente. Todos esses aspectos influenciam na satisfação dos consumidores. Conseqüentemente, clientes com sua satisfação abalada deixam de operar ativamente pela corretora e passam a negociar na concorrência. Nesse panorama, o presente estudo tem o objetivo de especificar 3 E-consumidores: São consumidores virtuais ou digitais. São aqueles que utilizam meios digitais, tais como sites, para consumirem produtos ou serviços. 11 um sistema capaz de prever quais clientes da base atual podem tornar-se inativos, considerando a maneira pela qual os clientes portam-se no site. O sistema proposto denominado SAD EMPRESA TESTE utilizará técnicas de DATA MINING, a fim de classificar os atuais clientes ativos em três grupos. São eles: • Grupo 01: Clientes ativos sem probabilidade de se tornarem inativos; • Grupo 02: Clientes ativos com probabilidade de se tornar inativo em 02 meses; • Grupo 03: Clientes inativos sem probabilidade de se tornar ativo; O modelo sugerido visa descobrir padrões e regras, através de análises dos dados de grupos de clientes inativos e ativos, a fim de construir regras de inferências com o intuito de classificá-los, nas classes especificadas, anteriormente. Com base no histórico de navegação de uma amostra de clientes, no site da empresa teste, foi descoberta uma função capaz de mapear os atuais clientes ativos em um dos grupos. Nesse estudo, as informações de navegabilidade delimitam-se ao canal Portal Tradicional. Em função do tempo e das dificuldades tecnológicas, não foi possível considerar os dados sobre o comportamento de navegação dos usuários no Portal Móvel, Central de Atendimento (URA), Redes Sociais e Hotsite. Em virtude do não armazenamento dos dados, não foi possível considerá-los como canais. Futuramente, com técnicas mais aprimoradas, será possível acrescentar os dados dos clientes nas redes sociais e em outros canais. 1.2 Objetivos do trabalho A priori, o estudo proposto teve o objetivo de compreender o comportamento dos usuários, no Portal tradicional da empresa teste, considerando três diferentes perfis. O primeiro perfil é composto por clientes ativos sem probabilidade de se tornar inativos. O segundo é representado por clientes ativos com probabilidade de se tornar inativo em 02 meses. Por último, o terceiro grupo é formado por clientes inativos sem probabilidade de se tornar ativo. Analisando o comportamento desses três perfis, será possível desenvolver um sistema capaz de prever quais clientes considerados, hoje, ativos 12 operacionalmente, podem se tornar inativos, no futuro. Porém, para que fosse possível construir essa análise, foi necessário desenvolver e armazenar Log´s contendo dados referentes ao comportamento de navegabilidade de uma amostra clientes, durante um mês. Do ponto de vista corporativo, o objetivo principal consiste em minimizar a parcela de clientes que podem tornar-se inativos na empresa teste.. Após certo período de crescimento, a EMPRESA TESTE enfrenta diversos desafios, propiciados por fatores externos e internos. São eles: entrada de novos concorrentes ocasionando guerra de preços, morosidade no processo de lançamento de novos produtos, atrasos na entrega de projetos importantes relacionados à otimizações de processos Todos esses aspectos influenciam de forma negativa no nível de satisfação do cliente. O trabalho proposto não busca compreender as razões que geraram este fato. Neste trabalho, o objetivo é traçar uma série de ações focadas na retenção dos clientes, com propensão de tornarem-se inativos. Para tanto, é necessário possuir um sistema capaz de prever quais são os atuais clientes, que podem tornar-se inativos no intervalo de 06 meses. Após a análise detalhada do problema, decidiu-se utilizar técnicas de mineração de dados. O sistema proposto poderá consistir em uma árvore de decisão, onde o algoritmo de aprendizado utilizado será o J48 ou 1-R ou poderá consistir em um modelo estatístico, cujo algoritmo é o Naive Bayes. Ao longo desse estudo, serão apresentados resultados comparativos dos seguintes algoritmos de aprendizagem: 1-R, J48 e Naive Bayes. Dessa maneira, o algoritmo que apresentar melhores resultados é escolhido para empregar o sistema proposto. Mais adiante, detalharemos informações sobre cada algoritmo. Através deste, será possível detectar padrões e regras, através de análises do fluxo de navegação dos atuais clientes inativos e construir regras de inferências com o intuito de classificar os atuais clientes ativos nos seguintes grupos: • Grupo 01: Clientes ativos sem probabilidade de se tornarem inativos; • Grupo 02: Clientes ativos com probabilidade de se tornar inativo em 02 meses; • Grupo 03: Clientes inativos sem probabilidade de se tornar ativo; 13 1.3 Descrição do trabalho O processo de mineração de dados ou de uma maneira um pouco mais ampla, o processo de Descoberta de Conhecimento em Bases de Dados, é composto por algumas etapas. HAN e KAMBER (2001) 4 citam que as sequencias para descoberta do conhecimento são: • Data cleaning: remover dados inconsistentes. • Data integration: diversas fontes de dados são combinadas. • Data selection: relevantes dados para o processo de análise são reparados. • Data transformation: dados são modificados e consolidados de forma apropriada para mineração. • Data Mining: processo essencial, no qual métodos inteligentes são aplicados com o objetivo de extrair padrões da base de dados. • Pattern evaluation: identificar dentre os inúmeros padrões e regras gerados, quais são os mais importantes. • Knowledge presentation: visualização do conhecimento já minerado para os usuários. Partindo da mesma ótica, a elaboração dessa monografia envolveu três grandes etapas: pré-processamento, mineração de dados e pós-processamento. • Pré-processamento: essa etapa engloba algumas outras subetapas, dentre as quais destacamos a seleção de dados, a limpeza de dados, a codificação de dados e o enriquecimento dos dados. A seleção consistiu na seleção dos dados considerados efetivamente importante, segundo a visão do especialista. A limpeza abrange o tratamento realizado para assegurar a qualidade. Sendo assim, informações ausentes, errôneas ou inconsistentes apresentadas nas bases devem ser corrigidas. A codificação é realizada para que os dados fiquem em uma forma que possam ser utilizados como entrada 4 HAN, Jiawei e KAMBER, Micheline. Data Mining Concepts and Techniques. USA: Academic Press, 2001. 14 dos algoritmos de mineração de dados. E, por último, o enriquecimento dos dados consistiu na consulta de informações sobre o panorama do mercado financeiro. Dessa forma, verificamos se naquele determinado momento, o mercado financeiro estava atravessando por momentos difíceis ou não. • Mineração: Nessa etapa foi utilizada técnicas de redes neurais, onde a principal tarefa consiste em classificar os atuais clientes ativos da corretora, em 03 grupos, através de uma inferência indutiva. • Pós - processamento: Nessa fase, analisamos o conhecimento gerado pela a etapa de mineração de dados. 1.4 Organização da monografia Esta monografia está dividida em quatro capítulos adicionais, descritos a seguir: O capítulo 2 apresenta a descrição detalhada de todos os aspectos pertinentes do problema, objeto desse estudo. O capítulo 3 apresenta os métodos disponíveis e a metodologia escolhida para ser aplicada no caso prático referente a mineração de dados web. Nesse capítulo, é descrito sucintamente as técnicas utilizadas no estudo proposto. O capítulo 4 detalha a arquitetura do sistema. O capítulo 5 relata os resultados obtidos, apresentando um comparativo entre os diversos experimentos. Finalmente, o capítulo 6 descreve as conclusões do trabalho e identifica possíveis trabalhos futuros. 15 2 Descrição do Problema No primeiro semestre de 2009, o departamento de Data Base Marketing da empresa teste apresentou relatórios e números alertando sobre a redução percentual de clientes ativos, na base total. Para manter o sigilo, não foi possível apresentar números absolutos e/ ou percentuais relacionados à perda de clientes, porém, salienta-se que esses valores são considerados bastante significativos. Tão significativo a ponto de ocasionar na perda da posição da liderança do mercado de Corretora de Valores. A priori, é importante conceituar a definição de inatividade. Compreende-se que, clientes inativos são aqueles que não operaram no intervalo de 3 meses, possuem saldo zero em tesouro direto e fundos. Esse grupo pode possuir ou não algum ativo em custódia. O próprio departamento de DBM, após elaboração de alguns estudos de base, desenvolveu internamente esse conceito. É importante chamar a atenção para um particular aspecto, presente no mercado de Corretora de Valores. Clientes das corretoras, geralmente, não fecham sua conta, visto que não existem custos de manutenção. Dessa maneira, quando o cliente passa a estar insatisfeito com a corretora, ele transfere a custódia de seus ativos para outra corretora e / ou para de executar operações de compra ou venda de ativos financeiros. Sendo assim, o desafio apresentado nesse mercado, consiste em manter os clientes ativos e com contas abertas. A seleção dos dados a serem analisados é uma etapa primordial na fase de planejamento desse trabalho. Em um primeiro momento, durante a fase de planejamento desse estudo, o escopo inicial consistia em analisar os dados históricos relacionados a operações realizadas pelos clientes. Ou seja, o ciclo de vida do cliente seria acompanhado e seria percebido o momento em que este deixaria de realizar operações, com o intuito de oferecer benefícios a fim de mantê-los ativos. Nesse escopo, o sistema propõe-se a monitorar as operações de compra e venda de ativos realizados e consequentemente identificar clientes que reduziram o numero de operações executadas. Com essas informações o departamento comercial atuaria nessa base de clientes com os objetivos de ativá-los. Porém, após reflexões, foi concluído que o ato de não realizar operações já é a consequência final de um processo de insatisfação. Certamente, esse cliente que deixou de operar na corretora, já deixou alguns indícios de insatisfação, anteriormente. Nesse presente trabalho, serão 16 analisados dados relativos ao comportamento do cliente no Portal Tradicional da empresa teste, a fim de identificar indícios de insatisfação. Com base nesses indícios é possível identificar mais antecipadamente quais os clientes que poderão tornar-se inativos. Conforme discorrido, anteriormente, existem inúmeros fatores que influenciaram na redução de clientes ativos da corretora. Dentre esses, destacamos a entrada de novos concorrentes, com preços mais competitivos e atraentes. Paralelo a essa questão, o mercado financeiro vem enfrentando uma crise prolongada, onde, o numero de operações realizadas na Bolsa de Valores vem decaindo. Como exemplo, pode-se citar que a BM&F BOVESPA determinou uma meta de gerar novos investidores, porém, esta não está sendo cumprida. Nesse cenário de estagnação do mercado, a empresa teste deixa de adotar a estratégia de captação para focar seus esforços na retenção dos clientes existentes. A maneira proposta nesse trabalho para que a empresa teste possa manter os atuais clientes é oferecer benefícios percebidos a uma classe de clientes prestes a se tornarem inativos. Sabe-se que oferecer incentivos a base total de cliente é custoso e oferecer benefícios a clientes sem nenhum critério definido pode não ser assertivo. Além disso, é sabido que, em geral, o custo de aquisição de um novo cliente é superior à manutenção dos atuais. Portanto, o modelo apresentado consistirá na classificação de clientes em grupos com propensão a se tornarem inativos. Conforme AMO (2003) 5 , a classificação é o processo de encontrar um conjunto de modelos (funções) que descrevem e distinguem classes ou conceitos, com o propósito de utilizar o modelo para predizer a classe de objetos que ainda não foram classificados. A classificação é uma das tarefas mais importantes e populares de KDD (Knowledge Discovery in Databases). De acordo com HAN e KAMBER (2001) 6 a classificação é um processo de descoberta de modelos ou funções que descrevem ou distinguem classes de dados cujo propósito é de ser apto a utilizar o modelo para prever objetos em que a classificação ainda não é conhecida. Os modelos derivados podem ser representados de várias formas, tais como regras de classificação, árvore de decisão, fórmulas matemáticas e rede neural. 5 AMO, S, Curso de Data Mining, Programa de Mestrado em Ciência da Computação, Universidade Federal de Uberlândia, 2003. disponível em: http://www.deamo.prof.ufu.br/CursoDM.html Acesso em 04/03/2012. 6 HAN, Jiawei e KAMBER, Micheline. Data Mining Concepts and Techniques. USA: Academic Press, 2001. 17 O termo KDD foi formalizado em 1989 fazendo referência ao amplo conceito de buscar conhecimento a partir de base de dados. Uma das definições mais conhecidas foi concebida por um grupo de pesquisadores. Segundo FAYYAD ET. AL (1996) 7 , “KDD é um processo, de várias etapas, não trivial, interativo, e iterativo, para identificação de padrões compreensíveis, válidos, novos e potencialmente úteis a partir de grandes conjuntos de dados”. É importante pontuar as diferenças entre dado, informação e conhecimento. A ilustração a seguir elucida tais diferenças. Figura 1 - Hierarquia entre Dado, Informação e Conhecimento Se Capacidade Mensal de endividamento > 60% Então Crédito = SIM Capacidade Mensal de Endividamento Mensal = 100* (Renda Mensal – Despesas Mensais) / Renda Mensal Renda Mensal, Despesas Mensais Fonte: Data Mining, um guia prático, conceitos, técnicas, ferramentas, orientações e aplicações, 2005 p.02. O dado pode ser compreendido como elementos, captados e armazenados nos sistemas operacionais da empresa. No caso de uma financeira, por exemplo, a base pode ser formada pela renda mensal e despesas mensais de seus clientes. Atingindo um nível mais alto encontramos a informação. As informações são dados processados, com significado e contexto definido. No exemplo citado na pirâmide, a capacidade de endividamento é uma equação, que correlaciona renda e despesas mensais. No último nível da pirâmide está o conhecimento. O conhecimento é a combinação, no qual envolvemos e relacionamos os dados e informações. 7 FAYYAD, U.M.; PIATETSKY-SHAPIRO,G.;SMYTH, P., D, Data Mining to Knowledge Discovery: na overview. Knowledge Discovery and Data Mining, Menlo Park: AAAI Press, 1996ª. 18 E, o conhecimento para que seja formulado, é preciso perseguir algumas etapas importantes. De uma maneira geral, as etapas são: pré-processamento, mineração de dados e pós-processamento. Todas essas apresentam sua relevância, porém, alguns estudiosos destacam a importância da fase de mineração de dados, visto que sua complexidade é grande. No site do Wikipédia 8 encontra-se a definição de Data Mining. Segundo esta fonte de informação, a mineração de dados “é o processo de explorar grandes quantidades de dados à procura de padrões consistentes, como regras de associação ou sequências temporais, para detectar relacionamentos sistemáticos entre variáveis, detectando assim novos subconjuntos de dados”. Destaca-se o adjetivo “grande” presente na frase “grande quantidade de dados”, pois, a complexidade desse fase se dá em função dessa característica. Ou seja, em função do elevado volume de dados, a tarefa de descoberta de padrões e tendências passa a ganhar dificuldades. De acordo com WITTEN e FRANK (2005) 9 o conceito de Data Mining é: “Data Mining é definido como o processo de descoberta de padrões a partir de dados”. O conceito de Data Mining (ou mineração de dados), segundo Cabena (1997) 10 , é a técnica de extrair informação, previamente desconhecida e de máxima abrangência a partir de bases de dados, para usá-la na tomada de decisão. Portanto, a Mineração de dados é uma etapa do KDD (Knowledge Discovery in Databases) cujo objetivo primordial é a seleção dos métodos a serem utilizados para identificar padrões nos dados, seguindo uma forma particular de representação, juntamente com a busca pelo melhor ajuste dos parâmetros do algoritmo para a tarefa em questão. Salienta-se que, a mineração de dados é um tema amplo que envolve inúmeras disciplinas e técnicas, tais como estatística, tecnologia, rede neural, processamento de imagens e outros. Além disso, sua aplicabilidade é extensa, podendo auxiliar na resolução de diversos tipos de problemas. Em princípio, a mineração de dados pode ser 8 WIKIPEDIA.definição de Mineração de dados. Disponível em: http://pt.wikipedia.org/wiki/Minera%C3%A7%C3%A3o_de_dado. Acesso em:04/03/2012 9 WITTEN, Ian H. e FRANK, Mark A. Hall, Data Mining Pratical Machine Learning Tools and Techniques, 2005 10 CABENA, Peter et al. Discovering data mining: from concept to implementation. New Jersey : Prentice Hall, 1997. 19 aplicada em qualquer tipo de informação, incluindo dados de databases, data warehouse, sistemas avançados de database e dados da internet. HAN e KAMBER (2001) 11 informam que, de uma maneira geral, questões de Data Mining podem ser classificados em duas categorias: descritivo e preditivo. A mineração descritiva consiste, simplesmente, em caracterizar os dados dos bancos de dados. E, a mineração preditiva realiza inferências nos dados atuais a fim de executar previsões. A monografia faz referência à mineração preditiva. Existem alguns tipos de predição e o que os diferencia é o tipo de relacionamento estabelecido entre os dados para a obtenção do conhecimento. Identificando o resultado que se pretende alcançar é possível, saber o tipo de predição será utilizada. Os principais tipos de predição são: • Classificação: A partir da descoberta de uma função que mapeie o conjunto de registros em conjuntos de rótulos categóricos predefinidos. Uma vez descrita tal função é possível submeter novos dados e, conseqüentemente, classificá-los em grupos. Redes Neurais, Algoritmos Genéticos e Lógica Indutiva são exemplos de tecnologias que podem ser aplicadas na tarefa de classificação. • Segmentação: Mais conhecida como clustering, sua principal diferença para a classificação é que a primeira não pressupõe a existência de classes prédefinidas. Os dados são agrupados conforme a semelhança de seus atributos. Nessa tarefa, o objetivo é maximizar a similaridade intracluster e minimizar a similaridade intercluster. • Regressão: Similar a tarefa de classificação, a regressão se restringe a atributos numéricos. • Associação: também conhecida como grupos de afinidade ou análise de cesta, a associação permite identificar transações que sempre acontecem em conjunto. O desafio apontado, no presente trabalho consiste em ativar clientes considerados inativos. Ou seja, reter os atuais clientes da empresa teste. E para isso, será feita uma classificação, onde os atuais clientes da empresa teste serão distribuídos em três grupos. Conforme descrito em parágrafos anteriores, 11 HAN, Jiawei e KAMBER, Micheline. Data Mining Concepts and Techniques. USA: Academic Press, 2001. 20 os clientes são divididos em grupos, conforme seu nível de ativação. Ou seja, de acordo com seu comportamento no Portal tradicional, será feita uma previsão com relação ao nível de inativação dos usuários. Com base nisso, o departamento comercial da empresa teste oferecerá benefícios com o intuito de manter os consumidores satisfeitos. A satisfação dos consumidores exige o conhecimento de seu comportamento e o seu nível de fidelização. Os clientes devem ser tratados de maneia individualizada para que sua satisfação possa ser mantida. Através da mineração de dados é possível arquitetar estratégias para transformar clientes inativos em ativos. 21 3 Metodologias Neste capítulo são apresentados os métodos disponíveis e a metodologia proposta de um estudo de caso prático referente à mineração de dados web, dos clientes da empresa teste. 3.1 Métodos Disponíveis Nesse cenário, onde a concorrência é extremamente acirrada, a fidelização dos clientes é uma tarefa trivial. Contudo, não basta designar uma quantia significativa de investimento em prol de uma fidelização e comprometer os resultados financeiros da empresa. O desafio consiste em manter os clientes fiéis, mantendo a saúde financeira da empresa. Dessa forma, identificar os clientes com propensão à inativação é uma das principais atividades cujo objetivo é tornar eficiente o processo de fidelização. Avanços tecnológicos e os sistemas de apoio à decisão fornecem insumos para auxiliar à empresa, na escolha de ações mais assertivas. No presente trabalho, os requisitos funcionais de um Sistema de Apoio a Decisão denominado SAD EMPRESA TESTE foram detalhados. Ressalta-se que os benefícios perceptíveis do SAD são decisões de melhor qualidade e maior satisfação dos clientes. Buscando estes benefícios, o estudo propõe-se compreender e solucionar questões reais relacionadas ao acréscimo do percentual de clientes inativos da empresa teste. Para essa problemática, as técnicas de mineração de dados são os fundamentos computacionais que permitem o emprego de algoritmos cujo objetivo é realizar a busca por padrões nos dados. Inúmeras técnicas podem ser empregadas a fim de atender a esse escopo. Os métodos podem ser baseados em: • Redes Neurais: Classificação, Regressão, Previsão de séries Temporais e Clusterização são exemplos de tarefas de mineração de dados que podem ser implementadas por métodos de redes neurais. A topologia da rede neural varia em função do problema e da representação adotada para os dados. De uma maneira geral, em aplicações de Mineração de Dados, a camada de entrada do 22 modelo recebe dados pré-processados. A rede por sua vez, processa os dados, gerando uma saída, cuja natureza varia conforme a aplicação. O algoritmo BackPropagation e Kohonen dão alguns algoritmos de aprendizado. O primeiro deles, também conhecido como algoritmos de retropropagação do erro, é um algoritmo de aprendizado supervisionado, cuja aplicação é adequada a tarefas de Mineração de Dados tais como Classificação, Regressão ou Previsão de Séries Temporais. O mapa Kohonen pertence à classe das redes neurais autoorganizáveis. O método de aprendizado mais comum em redes autoorganizáveis é denominado “competitive learning”. Entre as principais aplicações estão: tarefa de clusterização e detecção de regularidades. • Algoritmos Genéticos: Problemas que envolvam as técnicas de Algoritmos Genéticos estão relacionados com Otimizações. Dessa maneira, na Mineração de Dados, o Algoritmo Genético auxilia na escolha de atributos que fará parte da regra, na descoberta de faixa de valores para atributos quantitativos e na descoberta de conjunto de categorias para dados categóricos. Relembrando que a mineração pode ser compreendida como um processo de inferência de uma regra a fim de descobrir padrões (atributos, valores / categorias) que satisfazem a uma classe. As regras são avaliadas em função de sua acurácia (grau de confiança ou certeza obtida ao confrontar a regra com um conjunto de exemplos) e abrangência (grau de cobertura da regra). Considerando esses atributos de avaliação, a classificação por Algoritmos Genéticos procura descobrir a (s) regra (s) que melhor caracterizam cada grupo. • Instâncias: Consiste em um método, no qual, ao processar um novo registro se verifica as instâncias ou registros existentes na base de dados. Um dos principais métodos de Mineração baseado em instâncias denomina-se K-NN (K-Nearest Neighbors). Destaca-se que o método não necessita de treinamento prévio e sua aplicação é simples. Simplificando, o método consiste no calculo da distância entre o novo registro e cada um dos registros existentes, na identificação dos registros mais similares, na apuração da classe mais freqüente entre os registros identificados no passo anterior e na comparação da classe apurada com a classe real. • Estatísticos: A estatística é pautada em teorias probabilísticas para justificar a frequência da ocorrência de eventos. Diversos Algoritmos de Mineração de Dados são fundamentados em princípios estatísticos, tal como o 23 Teorema de Bayes. No estudo apresentado foi utilizado o algoritmo Naive Bayes, em função de sua baixa complexidade. • Específicos: São desenvolvidos, como o próprio nome diz, especificamente para implementar alguma tarefa. Destaca-se o algoritmo A priori, desenvolvido para a Descoberta de Associações. Alguns exemplos padrões, onde se utiliza esse algoritmo é aplicado na identificação de associações de cestas de produtos. • Árvores de Decisão: consiste em um diagrama que descreve uma decisão que está sendo utilizada e as implicações da escolha de uma ou outra das alternativas possíveis. Consideram-se as probabilidades e os custos de cada caminho lógico de eventos e decisões futuras. Um dos mais tradicionais algoritmos utilizados na tarefa de classificação é o C4.5. Nesse algoritmo buscase particionar as bases de dados e extrair árvores de decisão. Nessa monografia um dos algoritmos empregados é o J48. A seleção deste se dá em virtude dos resultados apresentados em outros estudos. Salienta-se que no estudo proposto também foi utilizado um método de indução de regra simples. Esta é a maneira mais simplista para encontrar regras de classificação. Algoritmo 1-R é o mais empregado. Nesse é gerado uma árvore de decisão de um nível. • Lógica Nebulosa: considerada como uma teoria matemática onde se busca imitar a habilidade humana de tomar decisões em ambiente impreciso. No estudo proposto foram utilizadas duas categorias (árvore de decisão e estatística. Considerando essas duas metodologias, foram selecionados três algoritmos. São eles: • 1- R (árvore de decisão); • J48 (árvore de decisão); • Naive Bayes (estatítica); 24 3.1. 1 One-R O algoritmo 1-R segue a premissa onde as regras são feitas e testadas com um único atributo e único ramo de árvore. Cada atributo gera diferentes conjuntos de regras, uma regra para cada valor de atributo. E, para criar uma regra para cada atributo é necessário determinar a classe mais frequente. Entende-se como classe mais frequente como aquela que aparece mais vezes para um dado atributo. Sendo assim, uma “regra” nada mais é do que um conjunto de valores de atributos limitados pela sua classe majoritária. É a maneira mais simplista para encontrar regras de classificação. Abaixo, é apresentada uma tabela onde ilustra como o algoritmo 1-R funciona. Nesse exemplo, o objetivo é determinar a condição do tempo. Tabela 2 – Valoração dos atributos de dados relacionados a tempo *Uma escolha randômica foi feita entre dois resultados prováveis Fonte: Data Mining Pratical Machine Learning Tools and Techniques, 2005 p.85. Considerando o exemplo acima, as regras selecionadas foram a primeira e a terceira. De acordo com o algoritmo 1-R, a melhor regra é aquela onde o total de erros é o menor, Na eventualidade de duas ou mais regras terem a mesma quantidade de erros, a regra é escolhida ao acaso. No presente trabalho, esse algoritmo foi selecionado e utilizado no sistema WEKA, a fim de servir como base de comparação, em função de sua simplicidade e necessidade de 25 apenas 01 atributo. Portanto, o método 1-R utiliza um simples atributo como base para tomar suas decisões. 3.1. 2 J48 O J48 é um algoritmo mais complexo, quando comparado ao 1- R. Utiliza a técnica de árvore de decisão para classificação, sendo constituído por uma versão java do algoritmo C4.5, que representa as relações entre as variáveis no formato de uma árvore de decisão, a partir da qual podem ser lidas as regras. Segundo GOLDSCHMIDT e PASSOS (2005) 12 , uma árvore de decisão é uma estrutura em que cada nó interno da árvore representa uma decisão sobre um atributo que determina como os dados são distribuídos pelos seus nós filhos. Para classificar um objeto, começa-se pela raiz da árvore, faz-se o teste de decisão usando os atributos associados aquele nó e selecionasse o ramo da árvore cujo teste foi positivo. O processo continua até encontrar uma folha que indica a classe a qual o objeto pertence. A função aprendida é representada por uma árvore de decisão ou um conjunto de regras “If – Then”. As entradas são objetos ou situação (alvo) descrita por um conjunto de propriedades ou atributos. E a saída é a decisão sobre o alvo. Geralmente é “Sim” ou “Não”. Além dessas características essa técnica segue a idéia de testar primeiro o atributo mais importante. Utilizou-se esse algoritmo, pois, após análise de outros estudos foi verificado que, utilizando o J-48 é possível atingir ótimos resultados. Sendo assim, a expectativa é de bons retornos. 3.1. 3 Naive Bayes O Naive Bayes é um dos mais simples classificadores probabilísticos. Consiste em um conjunto de probabilidade, onde essas são estimadas pela contagem da frequência de cada valor de característica para as instâncias dos dados de treino. Dada uma nova instância, o classificador estima a probabilidade de essa instância pertencer a uma classe específica, baseada no produto das 12 GOLDSCHMIDT, Ronaldo e PASSOS, Emmanuel. Data Mining: um guia prático. Editora Campus, Rio de Janeiro: Elsevier, 2005 26 probabilidades condicionais individuas pra os valores característicos da instância. O nome é dado, pois, o cálculo utiliza o teorema de Bayes. O algoritmo é também chamado de Naïve, uma vez que todos os atributos são independentes dado o valor da variável da classe. 27 4. Arquitetura do Sistema Proposto Neste capítulo são apresentadas as especificações funcionais e regras de negócios do sistema proposto. Não foi possível implementá-lo, porém as regras de negócios detalhadas a seguir auxiliarão no desenvolvimento do sistema. 4.1 Proposta O estudo proposto aborda problemas relacionados à classificação. Após avaliação teórica de todos os métodos e análise de alguns exemplos e cases práticos relacionados a problemas de classificação em outros cenários, concluise que para fins comparativos os modelos baseados em métodos estatísticos e árvore de decisão são mais aplicáveis. Para atingir tão conclusão, os critérios utilizados foram: complexidade do modelo (opta-se pelo mais simples) e resultados atingidos (verifica-se que é possível atingir bons resultados). O SAD EMPRESA TESTE utilizará técnicas de DATA MINING, a fim de classificar os atuais clientes ativos em três grupos: • Grupo 01: Clientes ativos sem probabilidade de se tornarem inativos; • Grupo 02: Clientes ativos com probabilidade de se tornar inativo em 02 meses; • Grupo 03: Clientes inativos sem probabilidade de se tornar ativo; Focando na questão prática do problema, a descoberta de conhecimento em bases de dados é um processo formado por etapas operacionais. As figuras 02 e 03 demonstram um resumo dessas etapas executadas no processo de KDD. 28 Figura 3 Etapas do processo de KDD Figura 4 - Etapas da Mineração de Dados A primeira delas é a etapa de pré-processamento. Nesta, os dados são captados, organizados, tratados e preparados. Devido ao seu grau de importante, no tópico abaixo, será detalhado todo o processo de preparo dos dados. 4.2 Pré - processamento Durante 01 mês, foram armazenados os rastros de navegabilidade de uma amostra de clientes, composta por 300 usuários segregados em três perfis. O primeiro perfil é composto por clientes ativos sem probabilidade de tornar-se inativos. O segundo é representado por clientes ativos com probabilidade de se tornar inativo em 02 meses. Por último, o terceiro grupo é formado por clientes inativos sem probabilidade de se tornar ativo. Para a seleção dos 300 clientes foram considerados os seguintes critérios: • Histórico e frequência das operações de compra e venda de ativos, no ultimo ano, • Patrimônio líquido declarado; 29 • Quantidade de ativos custodiados. Analisando o comportamento dos usuários foi possível prever quais clientes considerados, hoje, ativos operacionalmente podem se tornar inativos. Para essa amostra de cliente, durante 01 mês, os registros dos logs de acesso ao Portal foram capturados. Abaixo, apresenta-se um exemplo dos registros de LOG´s de acesso ao Portal: Figura 5 - Tela de Log Conforme apresentado na imagem anterior, os atributos retidos foram: • Data; • código do cliente na empresa teste; • hora de entrada na página; • IP do computador; • URL da página, sem o domínio principal do site. Com base no arquivo TXT, foi preciso calcular o tempo médio gasto em cada página, através da diferença entre a hora de acesso à primeira página e a hora de acesso à segunda página. No caso da última página foi preciso construir uma regra de cálculo. Sendo assim, o tempo médio de acesso foi calculado pela média do tempo de acesso nas páginas anteriores, naquele dia. Como exemplo, hoje, o cliente 01gastou 01 minuto na página A, 03 minutos na página B e 02 minutos na página D, o tempo desprendido para acessar a página E foi de 2 minutos. É importante salientar que foram analisadas outras duas alternativas 30 para solucionar o problema da ausência de tempo da ultima página. A primeira delas foi considerar o tempo como Zero. O principal sistema de análises de métricas da WEB, o Google Analytics, considera dessa maneira. Porém, considero que essa alternativa seja muito distante da realidade. A segunda alternativa, a mais conservadora de todas, foi desconsiderar o acesso a ultima página. Além disso, o dado relacionado ao acesso a uma página é de extrema importância. Após realização desses acertos, percebe-se que a média do tempo gira em torno de 05 minutos. As URL´s descritas nos TXT eram inúmeras. A fim de reduzir a quantidade de atributos de entrada, foi feito o agrupamento das URL´s em 06 associações, levando em consideração as quatro principais áreas do Portal (analises-noticias, minha conta, ferramentas e onde investir), a página de conteúdo restrito e a página de transferência. Os profissionais da empresa teste informaram que clientes inativos, na maioria das vezes, são impedidos de acessarem algumas páginas sobre informações, análises e recomendações sobre o mercado financeiro. Ao longo do tempo, a empresa teste percebeu que alguns clientes usufruíam de informações e recomendações sobre o mercado, disponibilizadas no portal, no entanto, operavam por outras corretoras. Dessa forma, com o intuito de reverter essa situação, a empresa desenvolveu um projeto baseado em algumas regras os conteúdos sobre recomendações foram bloqueados. Na prática, quando o cliente tenta acessar essas páginas, automaticamente, é direcionado para uma página de conteúdo restrito. Como essa é uma página específica do grupo de clientes inativos, determina-se uma única classe para os acessos nesta. A página de transferência relata o processo de passagem de custódia entre corretoras. Sendo assim, é notado que clientes insatisfeitos acessam essa página a fim de terem o conhecimento sobre a maneira de enviar a custódia de seus ativos para outra corretora. Ressalta-se que a seção “Minha conta” apresenta o maior volume de tráfego. Páginas como extrato, saldos, limites, resumo de investimento, carteira de ações e posições atuais em fundos, clubes, tesouro estão presentes, nesse grupo. A divisão “Análise e Notícias” apresentam relatórios, informações, recomendações e opiniões sobre a dinâmica do mercado financeiro. Em geral, pode-se dizer que o usuário ao acessar essas páginas está com o intuito de realizar operações, por isso, procura por indicações de investimento ou análises de mercado a fim de se manter atualizado e proteger os seus ativos custodiados. Em “Ferramentas” apresentam-se todos os produtos e serviços que auxiliam na gestão dos 31 investimentos. O Home Broker, a Calculadora de Imposto de Renda e os Simuladores de Risco x Retorno são alguns exemplos de ferramentas. Por último, o setor relacionado a “Onde Investir” fala sobre todos os produtos financeiros, como por exemplo, ação, opção, ofertas públicas, termo, fundos de investimentos e outros. O atributo URL ou página foi decodificado em números, antes de ser importado para o sistema WEKA, da seguinte maneira: • 0 – Análises e notícias; • 1 - Minha Conta; • 2 – Conteúdo restrito; • 3 – Ferramentas; • 4 – Onde investir; • 5 – Transferência. Alguns profissionais da empresa teste analisaram os dados gerados e foi possível elencar algumas informações consideradas relevantes para o processo de classificação dos clientes. Saber se o usuário acessou o Home Broker, se rejeitou o site e se visitou mais de 05 vezes durante o período de trinta dias são fatos considerados importantes. Por outro lado, o código do IP do computador é um dado considerado irrelevante nesse processo, segundo alguns profissionais da empresa. Por esse motivo, descartamos essa informação. É importante ressaltar que a qualidade do dado possui grande influência na qualidade dos modelos de conhecimento a serem extraídos dessa base. Dessa forma, além do processo de identificação das variáveis úteis, foi realizada a limpeza dos dados. Essa etapa envolve uma verificação da consistência das informações, a correção de possíveis erros e o preenchimento ou a eliminação de valores redundantes. Conforme dito anteriormente, foi realizada a exclusão do dado “IP do computador” e foi executado o preenchimento com medidas estatísticas do tempo gasto na visualização da última página. Medidas estatísticas podem ser empregadas como alternativa, no processo de preenchimento de valores ausente. Além dessas duas ações, efetuou-se a limpeza de valores não pertencentes ao Domínio. Na prática, foram retirados códigos de clientes que não faziam parte da amostra dos 300 clientes. Após a fase de limpeza de dados, foi efetuada a codificação dos dados. É importante compreender que os dados devem ser codificados de forma a atender às necessidades específicas dos algoritmos de mineração de dados. 32 Como a base a ser processada apresentava valores nominais, estes tiveram que ser codificados antes de serem submetidos à rede. A codificação pode ser Numérica – Categórica, que divide valores de atributos contínuos em intervalos codificados ou Categórica – Numérica, que representa valores de atributos categóricos por códigos numéricos. Salienta-se que, para analisar os dados referentes à navegabilidade e mensurar os resultados alcançados, utiliza-se o software WEKA, versão 3.7.1. Nos resultados alcançados, apresentam-se as principais características desse sistema. No presente trabalho, a codificação utilizada é a Categórica – Numérica. De uma maneira simplificada, foi feita a substituição de dados categóricos em dados de representação binária padrão. Nessa representação, cada valor categórico é associado a um valor de 1 até N e é representado por uma cadeia de dígitos binários. Sendo assim, temos: Tabela 1 – Codificação 01 Valores Originais da URL Representação Binária Padrão Analises e noticias 0001 Minha Conta 0010 Conteúdo Restrito 0100 Ferramentas 1000 Onde Investir 0011 Transferência 0110 33 Tabela 2 – Codificação 02 Valores Originais Representação Binária Padrão Yes 0 No 1 Tabela 3 - Codificação 03 Valores Originais Representação Binária Padrão Inativo 06 01 Inativo 02 10 Ativo 11 Ressalta-se que o atributo tempo é considerado, no WEKA, como numeric. Não foi possível utilizar o formato de tempo padrão (00:00:00). Para isso, foi preciso normalizar essa variável. Em GOLDSCHIMIDT e PASSOS (2005) 13 é ressaltado que essa operação consiste em ajustar a escala de valores de cada atributo de forma que os valores fiquem em pequenos intervalos, tais como de -1 e 1. Partindo do pressuposto que a média do tempo está na escala de minutos, foi feita a normalização linear do tempo no intervalo de 0 a 1. Para isso, foi considerado os valores mínimo e máximo de cada atributo no ajuste de escala. Recomenda-se a utilização deste método somente nos casos em que exista a certeza de que o domínio do atributo está entre os valores mínimo e máximo. A´ = (A-Min) / (Max – Min), onde: A´= valor normalizado; A = valor do atributo a ser normalizado; 13 GOLDSCHMIDT, Ronaldo e PASSOS, Emmanuel. Data Mining: um guia prático. Editora Campus, Rio de Janeiro: Elsevier, 2005 34 Min = valor mínimo do atributo a ser normalizado; Max = valor máximo do atributo a ser normalizado; 4.3 Mineração de dados É na fase de mineração de dados em que acontece a busca por novos conhecimentos, a partir do banco de dados. Segundo GOLDSCHIMIDT e PASSOS (2005) 14 a execução da etapa de mineração de dados compreende a aplicação de algoritmos sobre os dados procurando extrair conhecimento. A escolha do algoritmo a ser utilizado está relacionada com o objetivo da tarefa de mineração de dados. Este objetivo determinará quais as opções possíveis de aprendizado se aplicam ao problema. Além disso, outros detalhes devem ser levados em consideração, como por exemplo, a necessidade de que o conhecimento aprendido seja interpretável. No problema em questão esta necessidade não existe. Algumas vezes, certas alternativas podem apresentar ótimos resultados, porém, consomem parcelas elevadas relativas a tempo de processamento computacional. Em função das circunstâncias descritas no parágrafo anterior, para a etapa de mineração de dados foram selecionados técnicas de árvore de decisão e métodos estatísticos. Além disso, serão utilizados algoritmos 1-R, J48 e Naive Bayes. 4.4 Pós - processamento Essa etapa envolve a visualização, a análise e a interpretação do modelo de conhecimento gerado a partir da etapa de mineração de dados. É nesse momento, em que o especialista avalia os resultados obtidos e definem novas alternativas de investigação dos dados. 14 GOLDSCHMIDT, Ronaldo e PASSOS, Emmanuel. Data Mining: um guia prático. Editora Campus, Rio de Janeiro: Elsevier, 2005 35 4.5 Regras de negócios O SAD EMPRESA TESTE será uma aplicação Client, no qual cada usuário terá login e senha. A atualização de dados será diária. Ao final do dia, haverá uma rotina automática que coletará os dados dos diversos sistemas legados. O SAD EMPRESA TESTE utilizará fonte de dados internos e externos. (a) INTERNOS: Dados sobre o fluxo de navegação dos clientes nos diversos canais. O estudo proposto apenas considera Dados oriundos de 01 canal (Portal). Idealmente, deve-se considerar mais canais. (b) EXTERNOS: Dados mercadológicos, tais como número total de operações executadas na Bolsa de Valores e Índice Bovespa. Nesse estudo, utilizaremos os dados internos do cliente, levando em consideração os seguintes canais: Em virtude de não armazenarmos os dados dos clientes nas redes sociais (twitter, linkedin, youtube), não é possível considerá-las como canais, no âmbito desse estudo. Futuramente, com técnicas mais aprimoradas, será possível considerar os dados dos clientes nas redes sociais. Ou seja, será possível avaliar o número de vezes que o cliente utilizou o nome da corretora em uma rede social de forma negativa. (c) PORTAL: Nesse canal, coletaremos os seguintes dados, segmentados por cliente: páginas visitadas, fluxo de navegação (de quais páginas vieram e para onde foram), origens do tráfego (Google, links patrocinados, site da bovespa e outros), tempo médio da visita, a taxa de rejeição ao site, número de vezes que o cliente retornou ao site, a freqüência que o cliente utilizou os 36 fóruns e chats, o numero de vezes que o cliente utilizou o atendimento online e a ouvidoria. (d) CENTRAL DE ATENDIMENTO: Nesse canal, coletaremos os seguintes dados, segmentados por cliente: o numero de vezes que o cliente utilizou a central para efetuar reclamações. (e) PORTA MÓVEL: Nesse canal, coletaremos os seguintes dados, segmentados por cliente: páginas visitadas, fluxo de navegação (de quais páginas vieram e para onde foram), origens do tráfego, tempo médio da visita, a taxa de rejeição ao site número de vezes que o cliente retornou ao site. (f) FERRAMENTAS DE NEGOCIAÇÃO: Nesse canal, coletaremos os seguintes dados, segmentados por cliente: quantidade e valor das operações e freqüência. 4.6 Regras Específicas do Sistema O SAD EMPRESA TESTE apresentará 03 menus. São eles: Home, Dados Internos e dados do mercado. Tela principal: Na home, serão apresentadas informações sobre a quantidade de clientes ativos (segmentados por grupo) e clientes inativos. Além disso, apresentaremos informações básicas sobre o mercado (análise externa). 37 Em dados internos, apresentaremos informações detalhadas de cada cliente ativo, segmentada por grupo. O usuário selecionará o grupo no filtro “selecionar grupo”e a data em “selecionar data”. No resultado gerado, os campos “saldo em c/c”e o “canal último contato”são botões que usuário poderá selecionar. Ao selecionar aparecerá o histórico das operações e o histórico de contato do cliente com a EMPRESA TESTE. Em dados do mercado, serão apresentados os seguintes dados do mercado: (g) Índice Bovespa (h) Total das operações da Bovespa (i) Total das operações da Bovespa no Home Broker (j) Ranking das corretoras 38 4.7 Arquitetura para o sistema O SAD EMPRESA TESTE terá arquitetura Cliente-Servidor, onde os dados são centralizados. A arquitetura é composta por três camadas: (a) Camada de dados (b) Camada de aplicação (c) Camada de apresentação 39 4.8 Camada de dados Essa camada refere-se à coleção de dados inter-relacionados armazenados de forma estruturada. Em função das informações a serem analisadas no SAD EMPRESA TESTE, será preciso extrair dados dos seguintes sistemas legados: (a) SINACOR – Principal sistema da EMPRESA TESTE corretora. Neste estão armazenadas dados das operações (quantidade, valor e data da operação) dos clientes em todos os mercados (Bovespa, Renda Fixa, BMF, Clubes e Fundos) (b) GECAD – Gerenciador de cadastro dos clientes da EMPRESA TESTE. Neste estão armazenados dados cadastrais dos clientes da EMPRESA TESTE (Nome, CPF, CBCL, endereço e assim por diante). Além disso, é importante citar que a classificação do cliente (ativo ou inativo) encontra-se nesse sistema. (c) URA – A URA ou Central de Atendimento é um dos canais, no qual o cliente pode estabelecer contato com a EMPRESA TESTE. Portanto, faz-se necessário obter dados de acesso de navegação do cliente na Central de Atendimento. (d) PORTAIS – Através da extração dos registros dos Log’s dos clientes, no Portal Tradicional e no Portal Móvel, será possível verificar o comportamento dos clientes nestes canais. 4.9 Camada de aplicação A extração consiste basicamente na captura de diversas fontes. O BD de apoio à decisão pode ser uma árvore de decisão ou um modelo pautado em estatística (o que definirá a técnica é o resultado apresentado no próximo capítulo), cujo principal objetivo será de descobrir padrões e regras, através de análises nos dados dos atuais clientes inativos e construir regras de inferências com o intuito de classificar os atuais clientes ativos nos grupos descritos anteriormente. 40 O SGBD é um conjunto complexo que integra o módulo de consultas e diretório de dados. 4.10 Camada de apresentação A camada de apresentação consiste em toda a comunicação entre o usuário e o SAD. 41 4.11 Diagrama de casos de uso 42 4.12 Diagrama de atividade: 4.13 Implantação e possíveis expansões Com base nessa proposta, a equipe de desenvolvimento tecnológico (TI) com o envolvimento da equipe de Projetos elaborará um cronograma das atividades, detalhando os prazos e as ações a serem feitas por cada equipe. É importante salientar que o projeto seguirá a metodologia “SCRUM”. Sendo assim, o desenvolvimento do projeto será dividido em “sprints”. Em um segundo momento, o projeto “SAD EMPRESA TESTE” englobará as redes sociais. Em virtude de não armazenarmos os dados dos clientes nas redes sociais (twitter, linkedin, youtube), não é possível considerá-las como canais, no âmbito desse estudo. Futuramente, com técnicas mais aprimoradas, será possível considerar os dados dos clientes nas redes sociais. Ou seja, será possível avaliar o número de vezes que o cliente utilizou o nome da corretora em uma rede social de forma negativa. 43 5 Resultados Obtidos Serão demonstrados os resultados dos experimentos realizados ao longo do trabalho, bem como a apresentação de alguns algoritmos. 5.1 Weka Para apresentação dos resultados e construção do modelo utiliza-se o sistema Weka, um conhecimento software free de domínio público, escrito na linguagem Java, desenvolvida pela Universidade de Waikato, da Nova Zelândia. O Weka disponibiliza uma coleção de ferramentas capazes de facilitar o usuário na visualização de seus dados, bem como uma extensa gama de algoritmos e modelos preditivos. Uma de suas principais característica é a disponibilização de um conjunto de rotinas para pré-processamento (discretização, normalização, amostragem, seleção de variáveis, transformação e combinação de atributos), além de métodos de avaliação. Tarefas de mineração de dados, tais como, classificação, clusterização e regressão são possíveis de serem resolvidas através do sistema. É importante citar que o sistema trabalha com arquivos nos formatos ARFF., CSV, C.45 e binary. Parte da etapa de pré-processamento consistiu na formatação do arquivo arff. No estudo proposto, esse arquivo seguiu a seguinte estrutura: @relation SAD9 @attribute LANDINGPG {0001,0010, 0100, 1000,0011,0110} @attribute HB {0,1} @attribute mais 5 vezes {0,1} @attribute REJEICAO {0,1} @attribute TEMPO numeric @attribute CLASSE {001,010,100} 44 @data 1,1,1,1,0,0, 10,1,1,1,1,0, 100,1,1,1,1,0, 5.2 Algoritmos Após o período de pré-processamento dos dados, detalhado em páginas anteriores, foi possível inputar a base de dados no sistema Weka. É importante ressaltar que foi feita a divisão da base de dados em duas partes, onde, 80% dos dados foram utilizados para a etapa de treinamento e 20% restante foram usados para a fase de teste. A fim de averiguar outros experimentos, foi criada uma base de dados, onde 70% dos dados foram utilizados para a etapa de treinamento e 30% restante foram usados para a fase de teste. Foram utilizados três algoritmos. O primeiro é o 1-R. O algoritmo 1-R cria uma regra para cada atributo dos dados de treino e seleciona a regra com menor percentagem de erro como regra única. Aprende uma árvore de decisão de um nível. Para criar uma regra para um atributo é necessário determinar a classe mais frequente para cada atributo. Como classe mais frequente entende-se a classe que aparece mais vezes para um dado atributo. “Uma regra” é simplesmente um conjunto de valores de atributos limitados pela sua classe de maior frequência. A percentagem de erro de uma regra é o número de instâncias de treino na qual a classe de um valor de atributo não é concordante com a classificação desse atributo na regra. Como parâmetro foi escolhido o algoritmo J48. Este é um algoritmo baseado em modelos de decisão em árvore, geralmente escolhido para comparar a porcentagem de acerto com outros algoritmos. O modelo de árvore de decisão é construído pela análise dos dados de treino e o modelo utilizado para classificar dados ainda não classificados. O J48 gera árvores de decisão, em que cada nó da árvore avalia a existência ou significância de cada atributo individual. As árvores de decisão são construídas do topo para a base, através da escolha do atributo mais apropriado para cada situação. Uma vez escolhido o atributo, os dados de treino são divididos em subgrupos, correspondendo aos 45 diferentes valores dos atributos e o processo é repetido para cada subgrupo até que uma grande parte dos atributos em cada subgrupo pertence a uma única classe. A indução por árvore de decisão é um algoritmo que habitualmente aprende um conjunto de regras com elevada acuidade. Por último foi usado o modelo bayesiana. Esse modelo é o oposto do 1R, pois se utiliza todos os atributos. Compreende-se que todos os atributos são igualmente importantes e estatisticamente independentes. O Naive Bayes podese dizer que é um conjunto de probabilidades. As probabilidades são estimadas pela contagem da frequência de cada valor de característica para as instâncias dos dados de treino. Dada uma nova instância, o classificador estima a probabilidade de essa instância pertencer a uma classe específica, baseada no produto das probabilidades condicionais individuas pra os valores característicos da instância. O cálculo exato utiliza o teorema de Bayes e é por essa razão que o algoritmo é denominado um classificador de Bayes. O algoritmo é também denominado de Naive, uma vez que todos os atributos são independentes dados o valor da variável da classe. Apesar deste pressuposto, o algoritmo apresenta um bom desempenho em muitos dos cenários de predição de classes. Estudos experimentais sugerem que este algoritmo tende a aprender mais rapidamente que a maioria dos algoritmos de indução e daí o seu uso na nossa análise. 5.3 Resultados alcançados Conforme dito no bloco anterior, três algoritmos de classificação foram utilizados para comparação. São eles: 1-R, J48 e o Naive Bayes 1-R Treino ( 80% e 20%): Classificação correta em %: 71.3716 % Classificação incorreta em %: 28.6284 % MAE: 0.1909 RMSE : 0.4369 RAE (%): 48.7687 % RRSE (%):98.7677% 46 Treino ( 70% e 30%): Classificação correta em %: 74.8636% Classificação incorreta em %: 25.1364% MAE: 0.1676 RMSE : 0.4094 RAE (%):46.1279% RRSE (%):96.0624% 47 Teste ( 80% e 20%): Classificação correta em %: 71.3716% Classificação incorreta em %: 28.6284% MAE 0.1909 RMSE : 0.4369 RAE (%):48.7679% RRSE (%):98.7675% Teste ( 70% e 30%): Classificação correta em %: 74.279 % Classificação incorreta em %: 25.721 % MAE 0.1715 RMSE : 0.4141 RAE (%):47.1992 % RRSE (%):97.1729% 48 49 J48 Treino (80% e 20%) Classificação correta em %: 76.9844 Classificação incorreta em %: 23.0156 MAE : 0.189 RMSE: 0.3074 RAE (%):48.297 % RRSE (%):69.5007% 50 Treino (70% e 30%) Classificação correta em %: 80.3585 % Classificação incorreta em %: 19.6415 % MAE : 19.6415 RMSE: 0.2867 RAE (%):48.297 % RRSE (%):67.2884% Teste (80% e 20%) Classificação correta em %: 75.822 % Classificação incorreta em %: 24.178 % MAE: 0.1926 RMSE: 0.3139 RAE (%):49.2228% RRSE (%):70.9588% 51 Teste (70% e 30%) Classificação correta em %: 78.5269% Classificação incorreta em %: 21.47310% MAE: 0.1703 RMSE: 0.295 RAE (%):46.8638% RRSE (%):69.2223% 52 Naive Bayes Treino (80% e 20%) Classificação correta em %: 74.2278 % Classificação incorreta em %: 25.7722 % MAE: 0.2204 RMSE: 0.3268 RAE (%) 56.3155% RRSE (%) 73.8808 % Treino (70% e 30%) Classificação correta em %: 77.007% Classificação incorreta em %: 22.993 % MAE: 0.1972 RMSE: 0.3094 RAE (%) 54.2777% RRSE (%) 72.5969% 53 54 Teste (80% e 20%) Classificação correta em %: 73.3 % Classificação incorreta em %: 26.7 % MAE: 0.2219 RMSE: 0.3284 RAE (%)56.6912% RRSE (%)74.255% Teste (70% e 30%) Classificação correta em %: 76.6952 % Classificação incorreta em %: 23.3048% MAE: 0.1998 RMSE: 0.3112 RAE (%):54.9919 % RRSE (%):73.026 % 55 A análise de dados foi realizada utilizando os algoritmos em um teste cross-validation (em 10 folds), com as seguintes configurações: 80% treino e 20% teste e 70% treino e 30% teste. Os resultados obtidos, em função da percentagem de acerto, para o algoritmo J48 foram de 76,98% e 80,32% para uma percentagem de 80% / 20% (1º Experimento) e 70%/30% (2º Experimento) respectivamente. Já para o algoritmo One R, os resultados foram 71,37% e 74,86% para uma percentagem o primeiro e segundo experimento, respectivamente. Por fim, para o algoritmo Naive Bayes, os resultados foram, respectivamente, de 74,22%, 77,00% para as mesmas condições de experimentos. Veja gráficos a seguir. 56 Gráfico 1 - Classificação Correta ( 1º Experimento) Gráfico 2 - Classificação Correta (2º Experimento) Considerando o atributo classificação correta, o algoritmo J48 e o 2º experimento (70% de treino e 30% de teste) obtiveram o resultado mais satisfatório. Em relação ao tempo de aprendizagem, o algoritmo J48 apresenta valores de 0,14s e 0,20s para uma percentagem de 80% / 20% e 70% / 30% respectivamente. Nas mesmas condições, os tempos de aprendizagem do algoritmo One R foram, respectivamente, de 0,06s e 0,08s. Finalmente, e em relação ao algoritmo Naïve Bayes, os resultados em função do tempo de aprendizagem, foram de 0,15s e 0,14s, respectivamente para uma 80% / 20% e 70% / 30% de treino / teste. 57 Gráfico 3 - Tempo de Aprendizagem (1º Experimento) Gráfico 4 - Tempo de Aprendizagem (2º Experimento) Os restantes resultados encontram-se esquematizados na Tabela 4. Quando comparados em relação à percentagem de acerto, os valores dos algoritmos J48 e Naïve Bayes apresentam de uma forma geral resultados melhores que o One R. Percebe-se que todos os três algoritmos apresentam relação direta com a percentagem de treino. Ou seja, quando modificamos o percentual de treino, aumentamos sua percentagem de acerto (Gráficos1 e 2). A variável “tempo” não foi levada em consideração, visto que, nenhum experimento gastou mais do que 60 segundos. 58 Tabela 4 - Demais Resultados 59 6 Conclusões e Trabalhos Futuros Na elaboração deste trabalho testamos três algoritmos (J48, 1-R e Naive Bayes) e dois diferentes experimentos (um considerando 80% dos dados como treino e 20% como teste e outro considerando 70% dos dados como treino e 30% como teste) para classificar os atuais clientes da Empresa teste em três grupos. São eles: • Grupo 01: Clientes ativos sem probabilidade de se tornarem inativos; • Grupo 02: Clientes ativos com probabilidade de se tornar inativo em 02 meses; • Grupo 03: Clientes inativos sem probabilidade de se tornar ativo; Após as etapas de pré – processamento e mineração dos dados foram realizadas análises da percentagem de acerto (MAE, RMSE, RAE e RRSE) e do tempo de aprendizagem de cada experimento. Pela análise dos resultados acima, pode-se concluir que todos os três algoritmos apresentam características que permitem uma rápida aprendizagem. Sendo assim, a variável “tempo médio” não será um critério de escolha do algoritmo. No entanto, a percentagem de acerto dos algoritmos J48 e Naïve Bayes são substancialmente superiores ao One R. A interpretação dos dados, principalmente a percentagem de acerto, sugere que o algoritmo J48 apresenta o melhor desempenho de entre os algoritmos escolhidos. Sendo assim, o SAD EMPRESA TESTE será pautado no algoritmo J48 e utilizará a técnica de árvore de decisão. Vale a pena citar que durante a fase de planejamento e estudos de cases práticos foi notado que o algoritmo J48 apresentava melhores resultados quando comparado com o 1-R e o Naive Bayes. Mesmo assim, foi preciso testar os dados no sistema WEKA e mensurar os resultados. Ao final desse, é verificado que o algoritmo J 48 realmente apresentou melhores resultados. Quando se compara as duas metodologias (estatística e árvore de decisão) a metodologia baseada em árvore de decisão é a mais complexa. 60 Considerando o atributo classificação correta, o algoritmo J48 e o 2º experimento (70% de treino e 30% de teste) obtiveram o resultado mais satisfatório. Como não foi possível considerar os dados de navegabilidade dos clientes em outros canais, pode-se afirmar que existem limitações a este estudo. Em investigações futuras, é sugerido que os dados do comportamento do consumidor no Portal Móvel, URA e Ferramentas de Negociação sejam considerados. Inclusive, o capitulo 04 detalha as regras de negócios, considerando esses inputs de entrada. 61 7 Referências Bibliográficas AMO, S, Curso de Data Mining, Programa de Mestrado em Ciência da Computação, Universidade Federal de Uberlândia, 2003. disponível em: http://www.deamo.prof.ufu.br/CursoDM.html Acesso em 04/03/2012 ANDERSON, T. W., An Introduction to Multivariate Statistical Methods, New York: John Willey, 1984. AZEVEDO, H. L. C., Mineração de Dados Aplicada na Solução de Problemas de Marketing Direto e Segmentação de Mercado, Rio de Janeiro: PUC-Rio, 2001. BRAGA, Luis Paulo Vieira, E-papers serviços editoriais, Rio de Janeiro, 2005 BERKHIN, P., Survey of Clustering Data Mining Techniques, 2002. Disponível em <www.citeulike.org/user/metamerist/article/556827>. Acesso em outubro de 2011. CABENA, Peter et al. Discovering data mining: from concept to implementation,. New Jersey Prentice Hall, 1997 FAYYAD, U.M.; PIATETSKY-SHAPIRO, G.;SMYTH, P., D, Data Mining to Knowledge Discovery: na overview. Knowledge Discovery and Data Mining, Menlo Park: AAAI Press, 1996. GOLDSCHMIDT, Ronaldo e PASSOS, Emmanuel. Data Mining: um guia prático. Editora Campus, Rio de Janeiro: Elsevier, 2005 62 HAN, Jiawei e KAMBER, Micheline. Data Mining Concepts and Techniques. USA: Academic Press, 2001 JAIN, A.K., MURTY, M.N. & FLYNN, P.J. Data Clustering: A Review, ACM Computing Surveys, 1999. KAISER, H. F., The Varimax Criterion for Analytical Rotation in Factor Analysis, Psychometrika: 1958. THOMÉ, A. Carlos Gay, Redes Neurais, Uma Ferramenta para KDD e Data Mining, 2008. Disponível em <http://funk.on.br/esantos/doutorado/INTELIG%CANCIA%20ARTIFICIAL/T%C9 CNICAS/REDES%20NEURAIS/CURSO%20UFRJ%20de%20RN/22.pdf>. Acesso em outubro de 2011. WEINSTEIN, A., tradução de RIMOLI, C. A., Segmentação de Mercado, São Paulo: Atlas, 1995. WEISS, S. M., I. N., Predictive Data Mining, Morgan Kaufmann Publishers, Inc: 1998 WITTEN, Ian H. e FRANK, Mark A. Hall, Data Mining Pratical Machine Learning Tools and Techniques, 2005