Вы находитесь на странице: 1из 6

VIII ERMAC

8 o Encontro Regional de Matemtica Aplicada e Computacional


20-22 de Novembro de 2008 Universidade Federal do Rio Grande do Norte Natal/RN

UMA ANLISE COMPARATIVA ENTRE ALGORITMOS ESTATSTICOS DE MINERAO DE DADOS


Jos Carlos Jnior, Eric Rommel, Daniel Silva
Departamento de Exatas e Tecnologia Centro Universitrio de Joo Pessoa (UNIP) 58.053-000 Joo Pessoa PB Brasil, {jcapjunior, ericrommel, danielpk.lima}@gmail.com

Ryan Ribeiro de Azevedo, Wendell Campos Veras


Centro de Informtica-Universidade Federal de Pernambuco Av. Prof. Luis Freire, s/n, Cidade Universitria - Recife-PE Brasil +55 81 21268430, 50740-540 {rra2,wcv}@cin.ufpe.br

Resumo: A informao o ativo mais importante


para os negcios das corporaes, tornando-se algo essencial para ganho de competitividade entre as empresas de pequeno, mdio e grande porte. As estratgias assumidas para tal ganho, devem basearse em informaes concretas, visando uma diminuio substancial na ocorrncia de erros. Avanos tecnolgicos tm facilitado a obteno dessas informaes atravs de processos de descoberta do conhecimento em banco de dados (Knowledge Discovery in Database KDD), capaz de identificar padres e descobrir informaes relevantes que auxiliem na formao de posturas estratgicas de marketing, na busca e conquista de clientes, na descoberta de falhas em linhas de produo, dentre outras.

Palavras-chave: Descoberta de Conhecimento,


KDD, Data Mining, Algoritmos de Minerao.

fazer um comparativo entre os algoritmos Tertius e Predictive Apriori, destacando uma anlise mais detalhada e completa dos algoritmos utilizados, assim como as evolues propostas e os aspectos da integrao destas tecnologias com o KDD, conceituando, esclarecendo e despertando o interesse das empresas sobre a importncia da sua utilizao nas tomadas de decises. As demais sees deste artigo esto estruturadas da seguinte forma: a Seo 2 foca nos principais conceitos do processo de descoberta de conhecimento; a Seo 3 foca nos conceitos e benefcios das regras de associao; a Seo 4 foca na apresentao e funcionamento do algoritmo Tertius, baseado na Inteligncia Artificial; a Seo 5 foca na apresentao e funcionamento do algoritmo Predictive Apriori, baseado na Estatstica. So apresentados na Seo 6 os experimentos e os resultados. Por fim, na Seo 7 apresenta-se s concluses e trabalhos futuros.

Introduo
A previso na tecnologia abordada de maneira interessante e diversificada, na maioria das vezes baseando-se em idias e fantasias, no obstante ser o que move a tecnologia para as constantes evolues tecnolgicas atuais e futuras. A informao armazenada em colees organizadas e interrelacionadas de dados persistentes alvo de inmeras perquiries na busca da descoberta de conhecimentos ocultos na minerao dos dados concretos, reais e verdadeiros, essencial para a sobrevivncia ou crescimento das pequenas, mdias e grandes corporaes, seja comercial ou acadmica. O discernimento dos processos de descoberta de conhecimento, tendo como fundamento as variadas tcnicas de descoberta das regras de associaes existentes, e a utilizao de algumas tcnicas computacionais de minerao de dados, essencial para a correta anlise e entendimento do problema. Este trabalho teve como base metodolgica uma pesquisa exploratria e descritiva, na qual se buscou

2. Descoberta de Conhecimento em Bases de Dados 2.1. Fases do KDD


Aps a fase inicial, o foco passa a ser a escolha ou seleo da massa de dados a ser minerada, podendo ser um conjunto de dados ou um subconjunto de variveis onde a extrao ser realizada. A fase de Data Cleaning e Pr-Processamento tm por objetivo assegurar a qualidade dos dados envolvidos no KDD realizando operaes bsicas como a remoo de rudos, que podem ser, por exemplo, atributos nulos. A fase seguinte consiste na Seleo e Transformao dos dados em que sero selecionados os atributos realmente interessantes ao usurio, alm de transformados utilizando o padro ideal para aplicar algoritmos de minerao. Aps a realizao das fases anteriores, a Minerao de Dados (Data Mining) iniciada. Esta fase a mais importante do KDD, sendo realizada atravs da

escolha do mtodo e do algoritmo mais compatvel com o objetivo da extrao, a fim de encontrar padres nos dados que sirva de subsdios para descobrir conhecimentos ocultos. Na Seo 3.2. um aprofundamento desta fase ser realizado. A Avaliao ou Ps-Processamento a fase que identifica, entre os padres extrados na etapa de Data Mining, os padres interessantes ao critrio estabelecido pelo usurio, podendo voltar fase inicial para novas iteraes. apresentado na Figura 1 de uma maneira simplificada todas as fases do KDD.

Figura 1: Fases do Processo de KDD [3].

2.2. Minerao de dados


Data Mining ou Minerao de Dados o processo de pesquisa em grandes quantidades de dados para extrao de conhecimento, utilizando tcnicas de Inteligncia Computacional para procurar relaes de similaridade ou discordncia entre dados, com o objetivo de encontrar padres, irregularidades e regras, com o intuito de transformar dados, aparentemente ocultos, em informaes relevantes para a tomada de deciso e/ou avaliao de resultados. A minerao de dados possibilita a busca em grandes bases de dados de informaes desconhecidas, permitindo aos gestores uma maior agilidade nas tomadas de decises. Uma empresa que utiliza Data Mining capaz de criar parmetros para entender o comportamento do consumidor, identificando afinidades entre as escolhas de produtos e servios, prevendo hbitos de compras e analisando comportamentos habituais para deteco de fraudes [8].

2.2.1. Mtodos de Data Mining


De acordo com [3], existem diversos mtodos de Data Mining para encontrar respostas ou extrair conhecimento em repositrios de dados, sendo os mais importantes para o KDD: Classificao, Modelos de Relacionamento entre Variveis, Anlise de Agrupamento, Sumarizao, Modelo de Dependncia, Regras de Associao e Anlise de Sries Temporais. Deve-se ressaltar que a maioria desses mtodos serve de base para tcnicas das reas de aprendizado de mquina, reconhecimento de padres e estatstica. Um breve resumo dos mtodos mais importantes descrito a seguir.

A Classificao associa ou classifica um item a uma ou vrias classes categricas pr-definidas, utilizando comumente uma tcnica estatstica chamada anlise discriminante, objetivando envolver a descrio grfica ou algbrica das caractersticas diferenciais das observaes de vrias populaes, alm da classificao em uma ou mais classes prdeterminadas. Os Modelos de Relacionamento entre Variveis associam um item a uma ou mais variveis de predio de valores reais, consideradas variveis independentes ou exploratrias. Regresso linear simples, mltipla e modelos lineares por transformao so as tcnicas mais utilizadas para verificar a existncia do relacionamento funcional entre duas variveis quantitativas. A Anlise de Agrupamento, ou Cluster, associa um item a uma ou vrias classes categricas (ou clusters), determinando as classes pelos dados, independentemente da classificao pr-definida. Os clusters so definidos por meio do agrupamento de dados baseados em medidas de similaridade ou modelos probabilsticos, visando detectar a existncia de diferentes grupos dentro de um determinado conjunto de dados e, em caso de sua existncia, determinar quais so eles. A Sumarizao determina uma descrio com disperso reduzida para um dado subconjunto no prprocessamento dos dados, freqentemente utilizadas na anlise de descobrimento de dados. Podemos citar como exemplos simples de sumarizao de dados, as medidas de posio e variabilidade. O Modelo de Dependncia descreve dependncias entre variveis. Modelos de dependncia existem em dois nveis: estruturado e quantitativo. O nvel estruturado especifica, geralmente em forma de grfico, quais variveis so localmente dependentes. O nvel quantitativo especifica o grau de dependncia, usando alguma escala numrica. As Regras de Associao determinam relaes entre campos de um banco de dados, contribuindo para a tomada de deciso, recebendo assim, na Seo 3.3, um maior aprofundamento. Por fim, a Anlise de Sries Temporais determinam caractersticas seqenciais, como dados com dependncia no tempo. Seu objetivo modelar o estado do processo extraindo e registrando desvios e tendncias no tempo.

2.3. Regras de Associao


O processo de extrao de regras de associao foi proposto inicialmente por [1], e representa um padro ocorrido em combinaes de itens com determinada freqncia em uma base de dados [5]. As regras de associao foram definidas atravs da seguinte formalizao [2]: seja I = {I1, I2, I3,..., In} um conjunto de itens e T um conjunto de transaes, sendo cada transao T um conjunto de itens, de forma que

T I, e cada T ser associado a um nico identificador TIT, tal que x T, x I. Desta maneira a regra de associao gerada ter como forma x y, ou seja, x ser o antecedente e y o conseqente da regra de associao criada. Outra abordagem para o conceito de regras de associao leva em considerao os conceitos de Confiana e Suporte [6], em que este estima a probabilidade da ocorrncia de um conjunto de itens I em uma transao T, e aquele, para um conjunto Z de itens, refere-se porcentagem de transaes de uma base de dados que contem esses itens de Z. No Quadro 1 [10], tem-se a frmula utilizada no Suporte, para uma regra X Y, onde X e Y so conjuntos de itens, tendo por numerador a quantidade de transaes em que ambos, X e Y, esto ocorrendo simultaneamente, e por denominador o nmero total de transaes. A Confiana evidenciada utilizando a mesma regra X Y, mas seu denominador representa o valor total de transaes em que o item X ocorre [10], visto no Quadro 2.

Apriori Tertius

play = no

humidity = high

play = no humidity = high OR humidity = normal

Quadro 1: Suporte

Quadro 2: Confiana

3. Algoritmos de Minerao de Dados 3.1. Algoritmo Tertius


De acordo com [4], o Algoritmo Tertius utiliza descoberta de lgica de primeira ordem para encontrar clusulas lgicas nas bases de dados das quais so criadas todas as possveis instncias, com estimativas otimistas, usando algoritmos de Busca pela Melhor Escolha (Best-First Search), com a abordagem A*, percorrendo o espao de possibilidades das regras de associao atravs de heursticas e realizando ainda um refinamento de operadores no redundantes para descartar buscas desnecessrias. [7] explica que o Tertius descobre regras de acordo com uma mtrica de confirmao, procurando regras com mltiplas condies, como o Apriori [2], mas diferente no fato destas condies serem OU lgico e no E lgico. A Tabela 1 mostra essa diferena num exemplo prtico. Tabela 1: Diferena entre o Apriori e o Tertius [7] Algoritmo Exemplo de regra Suporte

Uma busca, como soluo do problema, o processo que gera e analisa seqncias de aes para alcanar um objetivo, percorrendo um caminho entre o estado inicial e o estado final, sendo chamado de qualidade da soluo o custo desse caminho. A soma do tempo gasto com o consumo de memria resulta no custo da busca. A soma desses dois, custo do caminho e custo da busca, estima o custo total. Numa busca heurstica, estima-se qual o melhor n da fronteira a ser expandido com base em funes heursticas, utilizando como estratgia de busca a melhor escolha tendo como direo, do estado inicial para o objetivo e do objetivo para o estado inicial. No Algoritmo A*, o custo total da soluo minimizado associando economia, completude e decidibilidade, tendo como funo de avaliao f(n) = g(n) + h(n), onde g(n) a distncia de n ao n inicial e h(n) a distncia estimada de n ao n final. Se h admissvel, f(n) nunca ir superestimar o custo real da melhor soluo atravs de n. A funo heurstica h monotnica se h(n) h(sucessor(n)), isso vale para a maioria das funes heursticas. Transferindo-se esse comportamento para a funo de avaliao f(n) = g(n) + h(n), temos que f(sucessor(n)) f(n), uma vez que g(n) no decrescente. Em outras palavras, o custo de cada n gerado no mesmo caminho nunca diminui. Quando h(n) no monotnica, para se garantir a monotonicidade de f(n), temos: quando f(sucessor(n)) < f(n) usa-se f(sucessor(n)) = max(f(n), g(sucessor(n)) + h(sucessor(n))). No Quadro 3, temos o algoritmo Tertius representado numa linguagem de alto nvel.

Quadro 3: Tertius em Linguagem de Alto Nvel

A primeira coluna do resultado obtido com a aplicao do algoritmo Tertius, Quadro 4, indica o nmero da regra obtida. A segunda coluna informa o grau de confirmao da regra e enquanto a terceira coluna, a freqncia relativa desta mesma regra. Os prximos campos formam a regra encontrada. 7. /* 0,223743 0,000210 */ grupo = CAMA and idade = 38_42 ==> valor = 901_MAX or sexo = M Quadro 4: Exemplo de uma linha do resultado do Algoritmo Tertius com base nessas informaes que um analista especializado pode realizar suas consideraes e efetivar suas prximas estratgias. Ao final do resultado, o Tertius descreve tambm a quantidade de hipteses consideradas e a quantidade explorada., e ainda a durao do processamento.

O clculo da Predictive Accuracy esperada [9] representado no Quadro 5, sendo a Confiana, r um registro da base de dados D, sendo originado por um processo P e s(X) o Suporte:
E(c(r)|(r), s(X)) = cB[c, s(X)]((r))P(c)dc) B[c, s(X)]((r))P(c)dc)

Quadro 5: Predictive Accuracy Nos Quadros 6 e 7, tm-se a representao em linguagem de alto nvel do algoritmo Predictive Apriori e do algoritmo Rule Gen, sendo este utilizado por aquele. possvel visualizar tambm outros estimadores utilizados na sua estrutura, como a gerao dos itens sets, a seleo no espao de hipteses por ajuste dinmico, gerao de regras de associao e a remoo de regras redundantes.

3.2. Algoritmo Predictive Apriori


Utilizado para encontrar associaes de grande valor, convenincia ou interesse entre itens de dados, o Algoritmo Predictive Apriori foi definido por [9] com base no algoritmo Apriori, que d importncia ao Suporte e Confiana na gerao de regras associativas, combinando-os em uma medida nica, chamada de Predictive Accuracy, para encontrar as n melhores regras de associao j ordenadas em sua exibio. Para eliminar regras que no se manifestam com freqncia nas bases de dados usado um estimador chamado Suporte, sendo este uma porcentagem de registros onde aparecem juntos X e Y, sobre o total de registros. Um alto Suporte representa uma maior quantidade de regras, porm, com pouca preciso nas regras geradas em relao aos futuros dados. J a Confiana, indica o grau de acerto da regra, com base na porcentagem de registros que contm X e Y sobre o total de registros que possuem X. Confiana alta possibilita a gerao de regras confiveis para poucos registros, podendo apresentar regras otimistas em relao realidade. Este otimismo pode ser corrigido atravs do clculo do Suporte. O algoritmo Predictive Apriori, atravs de uma distribuio binomial, busca uma relao entre Suporte e Confiana de maneira a potencializar a ocasio favorvel de uma ntegra previso de dados no analisados, sendo estes dados, futuros ou no, utilizados na minerao dos dados. Para cada regra, a medida Predictive Accuracy, c(x y), servir para selecionar as n principais regras geradas em ordem decrescente. Esta medida fundamenta-se na probabilidade de uma previso correta para a regra, ajustando Suporte e Confiana e o aumento gradativo do Suporte mnimo para retornar as n regras de associao selecionadas.

Quadro 6: Algoritmo Predictive Apriori: Descoberta das n regras de associao preditas

Quadro 7: Algoritmo RuleGen: Pesquisa eficientemente por todas as regras com corpo x

Um exemplo dos resultados com a execuo do Predictive Apriori exibido no Quadro 8, informando no primeiro campo o nmero da regra obtida. A ltima coluna informa o valor de preciso da regra (accuracy). Entre a primeira e a ltima coluna est a regra encontrada pelo algoritmo. 4. grupo=A.SERVICO idade=38_42 151 ==> sexo=M 151 acc:(0.99487) Quadro 8: Resultado de uma linha do Predictive Apriori

5. Experimentos e Resultados
A base de dados utilizada nos experimentos e avaliao dos algoritmos Predictive Apriori e Tertius proveniente de uma empresa atuante na rea de varejo, atacado, consrcio, emprstimo e garantia estendida, optante por um acordo NDA (Non-Disclosure Agreement). O software de minerao de dados utilizado para realizar a gerao de padres teis foi o WEKA (http://www.cs.waikato.ac.nz/ml/weka/), tendo sido desenvolvida na linguagem Java pela Universidade de Waikato na Nova Zelndia, o qual trabalha com diversas tcnicas de Data Mining, alm de ser um software livre e de fcil manuseio. Aps anlise do banco de dados, foi selecionada uma amostra de 102.000 registros identificando as vendas realizadas no perodo de 01 de janeiro de 2008 a 30 de abril de 2008, de cerca de 10 filiais situadas no estado da Paraba. A Tabela 2 destaca os atributos da base de dados necessrios ao processo de minerao de dados. Tabela 2: Atributos submetidos minerao. Atributo Descrio Valores Distintos GRUPO Grupo no qual o produto foi 4 classificado VALOR Faixa de valores da compra 6 IDADE SEXO Faixa etria do cliente. Sexo do cliente. 6 2

O atributo GRUPO representa o grupo na qual o produto foi classificado, com 4 valores distintos, a saber: Eletro, Magazine, Mveis, Telecomunicao. Os valores das compras foram decompostos por faixa de valores: abaixo de R$100,00, de R$101,00 R$300,00, de R$301,00 R$500,00, de R$501,00 R$700,00, de R$701,00 R$900,00 e acima de R$900,00. A idade tambm foi um atributo organizado em faixa de valores: de 18 a 23 anos, de 24 a 29, de 30 a 37, de 38 a 42, de 43 a 50 e acima de 50 anos. Por fim, o atributo SEXO do cliente.

No clculo dos desempenhos em termos de alocao de recursos fez-se uso do programa CProcess (http://www.nirsoft.net/), capaz de registrar o valor mximo de alocao de memria RAM. No perodo dos experimentos estavam executando apenas o Weka e o CProcess, objetivando resultados concretos e contundentes. Primeiramente definiu-se o Domnio da Base de Dados como sendo um ambiente logstico onde seria levado em considerao o grupo do produto (classificao em categoria), a faixa de preo, a faixa etria e sexo do cliente que realizou a compra. Em seguida, foi definido o foco da avaliao dos algoritmos em: Tempo de Processamento (minutos), Alocao de Memria (MB), Quantidade de Regras Geradas (nmero de regras) e Qualidade das Regras Geradas. Com esse escopo definido, a Limpeza de Dados foi feita mediante os resultados obtidos nas consultas iniciais em relao aos cadastros de cliente, grupos de produtos e valores. Visando a remoo de inconsistncias, atributos nulos, entre outros. Como tambm garantir um grau de homogeneidade plausvel dos diferentes aspectos e caractersticas de cada atributo. Destarte, o almejo de uma maior variao nas regras que sero geradas pelo processo de minerao. Foram selecionados os atributos indicados na Tabela 1 e transformados para o layout padro do arquivo utilizado pelo Weka, iniciando a Minerao de Dados a fim de encontrar padres que sirvam de subsdios no descobrimento dos conhecimentos ocultos nos dados. Os resultados apresentados na Tabela 3 evidenciam que o algoritmo Tertius obteve um tempo menor de processamento enquanto a quantidade mxima de alocao de memria foi maior que o algoritmo Predictive Apriori. O desempenho foi uniforme para os dois algoritmos, encontrando 10 regras de associao, porm, no que tange a qualidade dessas, avaliadas pelo Gerente de Negcios da empresa, o algoritmo Tertius retornou regras obvias (Quadro 9) enquanto as regras extradas pelo algoritmo Predictive Apriori apresentaram conhecimentos relevantes (Quadro 10), pois quatro regras apresentam um conhecimento novo j que no haviam identificado que no segmento Magazine, com produtos at R$100,00, tinham maior venda entre os indivduos do sexo feminino at 29 anos, alm de verificar a preferncia masculina por produtos eletro-eletrnicos de custo acima dos R$700,00. O algoritmo Predictive Apriori trouxe duas regras com informaes duplicadas e as quatro regras restantes foram consideradas bvias, porm, corretas, levando em considerao o domnio de negcio e com relao faixa etria dos compradores, valor mdio de compras e sexo dos compradores. Tabela 3: Resultados obtidos com a aplicao dos dois algoritmos estudados

Regras Algoritmo Memria (MB) Tempo (s) geradas Predictive 57 178 10 Apriori Tertius 61 0,05 10

e propiciar melhores condies na tomada de decises de forma eficaz e eficiente.

Referncias
[1] Agrawal, R.; Imielinski T.; Srikant R. (1993) Mining Association Rules between Sets of Items in Large Databases, Proc. of the ACM SIGMOD Intl. Conf. on Management of Data, Washington, Estados Unidos, p. 207216. [2] Agrawal, R. et al. (1994) Fast algorithms for mining association rules in large databases, in: International Conference on Very Large Data Bases, VLDB, 20, Santiago, Proceedings Hove: Morgan Kaufmann, p. 478-499. [3] Fayyad, U. M., Piatetsky Shapiro, G., Smyth, P. & Uthurusamy, R. (1996) Advances in Knowledge Discovery and Data Mining, AAAIPress, The Mit Press. [4] Flach, Peter A.; Lachiche, Nicolas (2001) Confirmation-Guided Discovery of First-Order Rules with Tertius Machine Learning, 42, 6195, Kluwer Academic Publishers [5] Gonalves, Eduardo Corra (2005) Regras de Associao e suas Medidas de Interesse Objetivas e Subjetivas, UFF - Universidade Federal Fluminense, in INFOCOMP Journal of Computer Science, Rio de Janeiro, RJ.

Quadro 9: Resultado obtido com o algoritmo Tertius.

Quadro 10: Resultado obtido com o algoritmo Predictive Apriori Aps a anlise das regras e a verificao de um nicho de mercado a ser investido, os gestores optaram por medidas estratgicas especficas, com campanhas de marketing e promoes especficas definidas pelo entendimento que tiveram do conhecimento obtido.

[6] Gy rdi, Cornelia et al. (2004) A Comparative Study of Association Rules Mining Algorithms, in: 1st Romanian, Hungarian Joint Symposium on Applied Computational Intelligence, Oradea, Romania. [7] Peixoto, Joo Jos Lopes (2006) Algoritmos de Aprendizagem de Contexto em Computao Ubqua: Avaliao para o caso de estudo em PDAs. 172f Dissertao de mestrado em Informtica e Sistemas. Faculdade de Cincias e Tecnologia - Universidade de Coimbra. [8] Pinto, F.; Santos M. F. (2005) Descoberta de Conhecimento em Bases de Dados em Actividades de CRM; Datagadgets 2005; 1 Congresso Espanhol de Informtica CEDI 2005; Granada. [10]Scheffer, Tobias (2001) Finding association rules that trade support optimally against confidence, Proceedings of the European Conference on Principles and Practice of Knowledge Discovery in Databases (PKDD-01). [10]Vasconcelos, L. M. R. de; Carvalho, C. L. de (2004) Aplicao de Regras de Associao para Minerao de Dados na Web. UFG. Relatrio Tcnico. Gois, GO.

6. Concluses e Trabalhos Futuros


Este trabalho demonstrou o potencial para obter regras que trazem conhecimento a partir de algoritmos que utilizam a estatstica como base, mesmo tendo sido verificado a necessidade de um aperfeioamento do algoritmo Predictive Apriori no que tange o seu desempenho, alm de demonstrar na prtica como as diversas tecnologias ligadas ao processo de descoberta de conhecimento em bases de dados podem apoiar as tomadas de decises, de forma a manter as organizaes competitivas com relao concorrncia e, principalmente, manterem-se no mercado. Como trabalho futuro, pode-se realizar uma comparao entre outros algoritmos de regras de associao, realizando experimentos que integrem ferramentas de minerao de dados com ferramentas especficas para gesto do conhecimento, apoiando ainda mais o nvel gerencial corporativo para aumentar

Вам также может понравиться