• Nenhum resultado encontrado

Uma arquitetura baseada em geração de predicados para obtenção de regras de associação espacial

N/A
N/A
Protected

Academic year: 2021

Share "Uma arquitetura baseada em geração de predicados para obtenção de regras de associação espacial"

Copied!
120
0
0

Texto

(1)

Uma Arquitetura Baseada em Geração de Predicados para Obtenção de Regras de

Associação Espacial Wesley Vaz Silva Dissertação de Mestrado

(2)

Instituto ele Computação l'ni\'ersiclade Estadual de Campinas

Uma Arquitetura Baseada em Geração de Predicados

para Obtenção de Regras de Associação Espacial

Wesley Vaz Silva

1

Setembro de 2003

Banca Examinadora:

• Prof. Dr. Geovane C. \lagalhães

Instituto de Computação- "Cê\ICA'v!P (Orientador) • Prof. Dr. Ricardo R. Ciferri

Departamento de Informática- l'niversidade Estadual de .\laringá • Prof. Dra. Claudia B . .\!edeiros

Instituto de Computação - l'ê\ICA.\IP • Prof. Dra. Eliane l\lartins

Instituto de Computação - l"ê\ICAl\IP (Suplente)

(3)

Uma Arquitetura Baseada em Geração de Predicados

para Obtenção de Regras de Associação Espacial

Es11' t'Xt·tupLn ciJlTt'spundt' i-1 n'd<l<JHl fiH;d da Disst'rl;HJio d•·\·id;tnwlll~' c1Jrrlgida t' dt.ft'tullda

por \\·,,sli'_\· \·az ~ih·a i' npr(J\·ad;i jwla 8;nw<l Ex;nui lltH l 1 ;r;l.

l'wf D> G>'"'"'"

~b»·•

-Iusl i1u1" d•· C"mpul

'";ií"-

l":\:ICA\IP

Dis.st·rl ;lJ~;lo apn'Sí'Il1 a da iHJ Iust Íllil iJ dí· Conl-put ;H~<lo. t · ;-: lCA.:\1P. conw rcq 11isit o parcial para a oht t'Il!~il.o do 1 ítnlu dí' .\Iesl n· Plll Cit"·ncia da

(4)

TERMO DE APROVAÇÃO

Tese defendida e aprovada em 17 de março de 2003, pela Banca examinadora composta pelos Professores Doutores:

Prof. Dr. Ricardo Rodrigues Ciferri UEM

Proffi. Ora. Claudia MarJ:á Bauzer Medeiros IC- UNICAMP

Prof. Dr. Geovane Cayres/Magalhães IC-UNICAMP

(5)

PREÇO ·:.lew-i"-'-i"-"""''--DATA

N"CPD

Si38a

FICHA CA TALOGRÁFICA ELABORADA PELA BIBLIOTECA DO IMECC DA lJNICAMP

Silva. \Ves!cy Vaz

Lma arquitetura baseada em geração de predicados para obtt:nçüo de regras de associação espacial \Vesk) Vaz Si h a-- Campinas.[S.P. :s.n.l. 2U03.

Orientador: Geü\·anc Cayres \hga!hãcs

Dissertação (mestrado)- Lni\·ersidadc Estadual de Campinas. Instituto de Computação.

L Banco de dados 2. Sistemas de informação geográfica. 3. Sistemas de recuperação de informação. L :-v1agalhàes. Ckovanc Cayres. [l. Lnivcrsidade Estadual de Campinas. Instituto de Computação. lll. Título

(6)

©

vVesley Vaz Sih·a, 2003. Todos os direitos reserYados.

(7)
(8)

Resumo

Essa dissertar;ão propoe e desenYoln• modelos e técnicas para a obteução de regras ele associação espacial. Isto se baseia em um processo de duas fases. '\'a primeira. o banco de dados geográfico é pré-processado usando uma base de conhecimento especificada por um usuário especialista para indicar os relaciomnnentos de interesse. Isso produz um arquiYo onde os dados estão organizados em termos de predicados espaciais e convencionais. Este arquivo pode ser processado por algoritmos padrões de mineração de dados. Isso simplifica o processo ele derivação de regras espaciais para um problema clássico de aplicação de algoritmos de mineração de regras de associação tradicionais.

O primeiro passo usa dois modelos propostos. O primeiro

r

o 1\lodelo de Derivação Relaciona!. cuja meta é identificar predicados convencionais baseada na análise dos atri-butos descritims. O segundo é o \lodclo de Derivação Espacial. respons;hel por checar relacionamemos espaciais entre objetos c gerar predicados espaciais. para serem usados para derivar regras de associação espacial. Um algoritmo de denorrnalização combina os predicados espaciais e conYencionais em um simples arquiYo, usado para minerar regras

de associação.

As principais contribuições deste trabalho são: (i) a especificação e validação de um modelo para derivar predicados espaciais, (íi) criação de uma arquitetura que permite obter regras de associação espacial usando algoritmos de mineração ele dados relaciona! padrão, (iii) o uso de uma base de conhecimento para obter predicados que são relevantes ao usuário e (iY) implementação de um protótipo.

(9)

Abstract

This thesis proposcs and dc,·clops modcls anel techniqucs for the obtention of spatial association rules. This is bascd ou a t\Yo-stcp process. In tlw first stage. tlw geographic database is preprocesscd using a kno\\·lcdgc base spccificd by an expert nscr to indicate the relationships of interest. This prodnccs a file where data are organized in terms of conwnt.ional anel spatial predicatcs. This file can next be proc:esscd by standard data mining algorithms. This simplifies t h c process of dcriving spatial rules to a classical problern of applying traditional association rule mining algorithms.

The first step uses two proposed moclcls. Thc first is t h c :\lodcl o f Rclational Deri,·a-tion. whose goal is to identify c:onwntional predicates bascd on thc analysis o f desc:riptive attributes. The sec:ond is the :\!ode] of Spatial Deri,·ation, responsible for chec:king spatial relationships arnong objects and generat.ing spatial predicaics, to bc subscquently used to derive spatial association rules. A subsequent denormalization algorithrn combines conventional and spatial predicates into a single file. used to mine association rules.

The main contributions of this work are: (i) the specification anel validation of a model to derive spatial predicates, (ii) the creation o f an architecrure that allows obtaining spatial association rules using standard relational mining algorithms (iii) thc use of a knowledge base to obtain predicares which are relevant to the user anel (iv) the implementation of a prototvpe.

lX

p

8!

(10)

Agradecimentos

Agradecer a Deus é essrncial! Antes a.gradec('ssc-'Inos todos os dias~ nws pela ausE~ncia (' falta de consideração não o fazemos. Portanto, agradeço ao Deus elas pequenas coisas. aquelas que podemos tocar e usufruir todos os dias, corno o sol que aquece. a sombra que protege, a noite que inspira. Ao Deus do inimagináwL da criati\·idade, elas idéias. Ao Deus da crença. da proteçiio e da fé. Enfim. a Deus em todas as suas manifcstaçoes. frequentemente despercebidas por nós.

O segundo pilar: a família. Sem eles não estaria realizando. diariamente. pedacinhos de um sonho maior. Agradeço a minha mãe pela proteção. carinho e preocupação fre-quentes. A.o meu pai. pelo apoio irrestrito a todos os passos ela minha ,-ida e pela força nos momentos difíceis desde o início, com sua paciência e calma inacredi táwis. A. os meus irmãos \Yilian c \\'ilton pela amizade e bom humor. A minha vó, protetora e carinhosa. que também nunca negou apoio em minhas decisões. Ao meu avô .João e tio h·ani que já se foram' E ao João Pedro, que vem chegando.

Amigos. O terceiro pilar!!' Cm tesouro muito valioso. "-\gracleço ao \!arco pelo apoio e estímulo mesmo a distância. Ao Luciano pelo companheirismo e garra, de quem cu retiro vários exemplos de vida. "-\os meus amigos A.ndré Lauar, com seu mau humor árabe e sua amizade irrestrita; Danilo Tavares, o santista; \lurilo Lopes: o paulistano com alma de goiano, companheiro pra todas as horas: Rarnon Brandão: o goiano original e amigo presente.

A

Alessandra, irreverente e amiga, que me fazia esquecer os problemas com suas histórias hilárias.

A

:\larccla. autêntica e carinhosa.

:\'ão vou esquecer de agradecer os amigos do IC: Gustm·o Kasprzak, que me ensinou que estar feliz e ter disciplina tem corno resultado o alcance dos objetivos mais cedo -"Companheiro é companheiro ... "; Flávio . que me deu várias idéias nessa dissertação e. principalmente, me alertou para idéias que certamente dariam errado. Henrique Rocha, pelas piadas e inteligência apuradas, que me fizeram ver mais uma vez que a "pressa é inimiga da perfeição''.

A

Silvânia Resende, por demonstrar sua disciplina impressio-nante, sua capacidade de estudar e desenvolver idéias com rapidez. Ao Zé Cláudio, pela amizade e apoio sempre que necessário. Agradeço também â Juliana, Lazáro, Bazinho. Gláuber, DanieL Rancla!L :'Jielsen, Chenca, Felipe \lagrâo, Gustavo Baiano, Thaísa,

(11)

sias. Triste. Guido, Borin. Bartho, Fernando, etc Enfim. a todos os amigos que fiz nesse período.

Agradeço o apoio do meu orientador Geo,·anc C. l\lagalhães, pela paciÊoncia e dicas essenciais para o bom direcionamento deste trabalho.

A

professora Claudia Bauzer '.!c-eleiros que com sua competência ,, criatiúcladc se tornou um dos exemplos abson·idos rwssc período. .-\gradcço também as entidades financiadoras deste trabalho ( C:\Pq e PRO:\EX/SAI).

Cma simples palana de força c estímulo de cada uma destas pessoas é parte deste resultado finaL Obrigado a todos1

(12)

Sumário

Resumo Abstract Agradecimentos 1 Introdução e Motivação 2 Regras de Associação 2.1 Conceitos Gerais

2.2 Obtenção de Itemsets Frequentes

2.2.1 Determinação do Suporte dos Itemsets

2.2.2 Extração de Jtemsets Frequentes Baseados em Contagem

2.2.3 Extração de Jtemsets Frequentes Baseados em Interseção de

Con-v VIl lX xi 3 9 9 11 12 12 juntos . . . 18 2.3 Geração de Regras de Associação . . . 20 2.4 Regras de Associação :'vlulti-dimensionais, 1\Iulti-'\íveis e Quantitativas 21

2.4.1 Regras de Associação '\lulti-dimensionais 22

2.4.2 Regras de Associação Quantitati,-as e l\Iulti-ní,-eis . . . 22 Regras de Associação Espacial . . . 24 2.5.1 '\létodo e Algoritmo para Obtenção de Regras de Associação Espacial 25

2.5.2 Predicados Espaciais . . . 29

3 Arquitetura para Geração de Regras de Associação Espacial 3.1 Descrição da Arquitetura . . 35 39 40 41 3.1.1 Repositório de Dados 3.1.2 Pré-processamento 41 Xlll

p

(13)

3.1.4 AYaliação 3.2 Pré-processamento

3.2.1 '\!odeio de DeriYação Relaciona! 3.2.2 I\Iodelo de DeriYação Espacial 3.2.3 :\Iódulo de Desnormalização 4 Modelo de Derivação Espacial

4.1 Introdução .

4.2 Relacionamentos Topológicos

4.2.1 Relacionamento "Está Contulo'·

4.2.2 Relacionamentos Topológicos Simétricos 4.3 Relacionamentos Baseados em Distância

4.3.1 Hierarquias de Conceito 4.4 Processo de Desnormalizaçii.o 5 Estudo de Caso

5.1 Infra-Estrutura

5.1.1 Modelo de Dados do SPRI'\G 5.1.2 Banco de Dados Geo.\linas . 5.2 Ilustração dos '\lódulos da Arquitetura

5.2.1 Definição das Classes Relacionamento e Hierarquia 5.2.2 Ilustração do Algoritmo GPE

5.2.3 Ilustração do Algoritmo de Desnormalizaçii.o 5.3 Protótipo da Fase de Pré-Processamento

5.4 Avaliação do Conjunto de Dados Alterado 5.4.1 Quantidade de Tuplas Geradas 5.4.2 Completude do Resultado

5.4.3 Diminuição do '\úmero de Consultas Espaciais . 6 Conclusões e Extensões 6.1 Contribuições 6. 2 Extensões Bibliografia Xl\' 41 -12 43 47 cj1 55 00 56 :í6 61 64 Gc! 68 73 73 74 lO 76 l i 79 90 92 94 94 96 98 99 99 101 104

(14)

Lista de Tabelas

2.1 :\lapeamento entre predicados e códigos

2.2 Geração de item.sets frequentes. onde o rrânún:wns-u.pport ó 2 2.3 Forma do Conjunto de Dados a ser :\lincrado .

5.1 Objetos Espaciais Considerados

5.2 Atributos da Classe Camcterí.sticaObjeto

5.3 Descrição dos Atributos da Classe Relacionamento . 5.4 Dicionário dos Atributos da Classe '\cíHierarquia. o.o Instâncias da Classe Relacionamento

5.6 Dicionário de Dados da Tabela TRespPoliCPoli 5.7 ComparatíYo entre os Conjuntos ele Dados

XV 1-± 16 20 76 78 19 79 80 86 95

(15)

Lista de Figuras

2.1 Hierarquia de Conceito Quantitati\·a

2.2 Hierarquia de Operações Topológicas Espaciais .

23 26 2.3 Arvore de Execução do l\létodo Baseado em Cálculo Proposto por Clementini 34 3.1 l\létodo para Obtenção de Hegms ck Associação Espacial 35 3.2 '\létodo Alternativo para Obtenção dr: Regras de .-\ssociação Espaciais . 36 3.3 Exemplo Ilustrati,·o de Derivação de Predicados Espaciais 38 3.4 Ilustração de Entrada e Saída da Fase de Pré-Processamento 39 .3.5 Arquitetura para Obtenção de Regras de .-\ssociar;iio Espacial Proposta 40

3.6 Hierarquia de Conceito Relaciona! -!5

3.7 l\lodelo de Derivação Espacial 50

4.1 Arvore de Execução .·\Iterada 62

4.2 Exemplo de Hierarquia de Conceito para Operações de Distância . 66

4.3 Exemplo de Desnorrnalizaçâo para urna Instância 69

5.1 l\!ódulos componentes da arquitetura ' '

5.2 Instâncias de l\lunicípios e '\lacro-áreas 81

5.3 Areas administrativa "Baixo Sapucaí" contida na l\lacro-área ·'Sul de l\linas"

82

5.-t Sub-conjunto de l\!unicípios contidos em l\lacro-Area 84 5.5 \"ovo Espaço de Busca para l\lunicípios sobre l\lacro-área 8.5

.5.6 Exemplo da Execução de PoliCPoli 86

5.7 Sub-conjunto de Rodm·ias que Cruzam a :'llacro-Area 88

5.8 Hierarquia "D"Específica . 89

5.9 Conjunto de Aeroportos que ficam a menos de 1000 metros de um Curso

d'água . . . 90

5.10 Ilustração do Processo de Desnormalizaçâo . . 91 .5.11 Diagrama de Classes do Protótipo da Fase de Pré-Processamento

.5.12 Hierarquia de Distância ..

XYll

92 98

(16)

Uma Arquitetura Baseada em Geração de Predicados

para Obtenção de Regras de Associação Espacial

Wesley Vaz Silva

17 de março de 2003

(17)

Capítulo

1

Introdução e Motivação

Recentemente, as capacidades tanto de geração quanto de coleta de cheios eletrônicos em yários campos do conhecimento têm crescido rapidamente. O uso de código de barras em produtos. o aumento elo nível de informatizaçiio ele empresas c gon:rnos em conjunto

com o avanço das ferramentas de análise de dados tem nos propiciado lidar com grandes quantidades de dados. C rn vasto número de sistemas de bancos de dados têm sido usados em gerência empresariaL administraçiio governamentaL gerência ele dados científicos e muitas outras aplicações. Esse crescimento explosi,·o de dados tem gerado a necessidade de obtençiio de novas técnicas e ferramentas que podem transformar os dados processados em informações úteis e conhecimento.

Para citar uma frase de Louis V. Gerstner .)r., chairrn.an da IB?I'l sobre a importância do conhecimento nos negócios: "Hoje e no jútum, as companhias de sucesso serão aquelas

que souberem como gerenciar o conhecimento mais rápido do que os competidores. ls.so

não é urna questão de conseguir a informação. É a abilidade de extrair informação do

seu negócio para visualizar tendências mais rapidamente que seus competidores".

Alguns autores descrevem a descoberta de conhecimento como um processo composto de ,-árias fases. O processo exige um entendimento do domínio da aplicação considerada (normalmente destinada aos especialistas) além da definição de objetivos para o processo como um todo. Fayyad em [FPSS96] distingue dois tipos de objetivos na mineração: (i)verificação de uma hipótese do usuário, confirmando-a ou refutando-a e (ii)descoberta

de um novo conhecimento, implícito em um padrão ou exceção desconhecidos.

A primeira fase do processo de descoberta de conhecimento em bancos de dados 1

descrita em [FPSS96] é a Seleção dos Dados, dada basicamente pelo estabelecimento de um sub-conjunto dos dados do banco de dados a ser minerado. A fase de Limpeza dos Dados (Data Cleaning) sugere a conferencia da completude e validade dos dados que serão submetidos a mineraçiio [GB\VSOO]. A fase de Transformação dos Dados permite alterar

1 Do inglês Knov.·ledge Discovery in Databases

(18)

4 Capítulo 1. Introdução e ·HotiFação

sintaticamente o subconjunto de dados a ser minerado em dif(:rentcs níveis de abstração. pois alguns algoritmos c técnicas ele Doto ;'vfininq (regra;; ele associa,;ão generalizadas. por exemplo) requerem essa alteração. A fase ele Mineração propriarneutc dita opera sobre os dados transformados pelas fases anteriores c pcnnirem descoberta de conhecimento usando algoritmos e objet.iYos especificos. A penúltima fase elo processo é a de Apresentação dos resultados da mineração. Em alguns casos. corno regras de associação, o número de soluções pode ser grande e as próprias soluções podem ser de difícil entendimento. dependendo do número de predicados. Esse problema busca ser resoh·ido na fase de Avaliação e Interpretação do conhec:imemo obtido. :\esscr fase busca-se considerar apenas os fatos interessantes e rele,-antes ao domínio da aplicação. Conhecido:; os padrôes implícitos, as açôes a serem tomadas dependem elo domínio da aplicação e são sugeridos noYamentP pelo especialista.

Dentro de todo esse processo. uma das fases mais importantes t' a de ~lineração de Dados. ou Data lvfininq, definido corno sendo um processo de e:rtm.çôo ruio tr-ivial de

dados implícitos, previamente desconhecidos c potcncio.lrn.ente úteis em. !Jo:n.co.< de

da.-dos[FPS\!92]. Data iV!ining representa a integração de vários campos de pesquisa, in-cluindo "l\1achine Learnin.g", sistemas de bancos ele dados. ,·isualização ele dados, es-tatística e teoria da informação !KH95]. \·isando obter conhecimento interessante 2 e útil no processo de tomada de decisões no domínio da aplicação considerado.

Algoritmos c métodos de Data J'vhning podem ser classificados separadamente em tn~s

classes, que caracterizam os tipos de dados a serem analisados, os tipos de técnicas a serem utilizadas e os tipos de conhecimento a serem obtidos ífPSi\!92, HKOl]. Sistemas

de Data i'vlining podem ser idealizados para lidar com dados relacionais, multimídia,

espa-ciais, orientados a objetos, temporais, dados heterogêneos. científicos. etc. :\metodologia utilizada para a obtenção de conhecimento pode ser a análise estatística, métodos interati-,-os, baseados em redes neurais, algoritmos genéticos, árvores de decisão. redes bayesianas. etc. Finalmente os tipos de conhecimento a serem obridos podem se caracterizar como regras de classificação, padrões de agrupamento e caracterização. regras discriminantes, regras de associação, dentre outras. L m resumo das características dessas classes pode ser encontrado em [GG99].

Embora existam muitos estudos de Data !\!!ining em bancos de dados relacionais [AS94, AS95, HF9.5, SA96], essa área de pesquisa tem grande interesse em analisar outros tipos de dados, incluindo os espaciais, temporais, orientados a objeto e multimídia. Bancos de dados espaciais, especificamente, possuem objetos espaciais e atributos que os descreYem. :\o caso deste trabalho, o interesse é em dados geográficos, uma classe especial dos dados espaciais, que representam objetos e fenômenos em que a localização geográfica é uma 2Em trabalhos de mineração de dados, o termo ;'interessante:' é utilizado no sentido de caracterizar o conhecimento obtido que possui relevância e importância no contexto considerado

(19)

característica inerente à informação e indispensável para analisá-la [CCH+96].

A análise estatística tem sido a abordagem mais comum para a análise de dados ge-ográficos [Ope91]. Essa área de pesquisa produziu vários algoritmos de manipulação de objetos espaciais. incluindo algumas técnicas de otimização [FloOl]. Eles manipulam da-dos numéricos de maneira precisa e usualmente produz modelos que refletem fenômenos espaciais reais. Entn:tanto .. essa abordagcrn não & adequada quando a dependência en-tre os dados espaciais é considerada. A maioria dos mrtodos são exploratórios e quando aplicados a dados espacialmente correlatos alguns deles siio desconsiderados inicialmcnH:. assim como acontece em muitas áreas da estatística para situações onde as obserTações são independentes iSW91]. Isso viola a primeira lei da geografia descrita por Cold em [CS\VOOl]: tudo está relacionado com tudo, mos as coisas mais prá:rirrw.s estão mais

relacionadas do que as distantes. Em outras palanas. os \'alores dos atributos de

ob-jetos espacialmente próximos t.emlern a afetar um ao outro. Esses constrastcs deYido à natureza dos dados espaciais. em que objetos espaciais são influenciados por seus ob-jetos de vizinhança, fazem com que surjam nonrs abordagens para a análise de dados geo- referenciados.

A principal delas é denominada Data Mining Espacial, ou descoberta de conheci-mento em bancos de dados espaciais. que se refere à extraçéio de conhecimento implícito,

relações espaciais ou out-ros pa.dn!es armazenados errr bancos de dados espaciais de for·ma.

nâo-ex:plícita. [KH95].

Todas as aplicações que possuem intrinsecamente a considcraçiio de posições geográficas para o negócio lidam, geralmente. com dados espaciais. Vários exemplos de aplicações im-portantes possuem correlação direta entre a posição geográfica dos pontos e sua descrição. Para citar algumas:

1. Sistemas de Controle Ambiental:

Possibilita a identificação e controle de áreas de nsco de queimadas, enchentes, desastres naturais. áreas e épocas favoráveis ao plantio de determinadas culturas, dent.re outras.

2. Sistemas de Controle Criminal, Político e Social:

Possibilita, dentre outras funcionalidades, identificação de áreas de possível aumento de criminalidade, definição de regiões de baixa qualidade de vida em grandes cidades, identificação de demanda de projetos sociais por região, análise de saúde pública [:mc+oo] e outros.

3. Sistemas de Gerenciamento de Redes de Telecomunicações:

(20)

6 Capítulo 1. Introdução e Motivação

rede de distribuição de sen·iço, áreas de mercado consumidor potencialmente ath·o, distribuição ele terminais públicos obrigatórios c outros.

Tais aplicaçiíes. assim como outras que c:m·olwm ,-ariáwis e:;pac:iais no negócio, pro-vaYelmente possuem relacionamentos interessantes e implicitos entre os dcldos espaciais c os não-espaciais. A obtenção de conhecimento rclcnmte para essa situaçiío se enquadra m1 definiçiío de Data Min:ing Espacial descrita acima . .'\este trabalho iremos considerar um tipo específico de conhecimento a ser obtido usando técnicas de Dal.a i\iininq de-nominado Regras de Associação 3 em um tipo de dado Pspccífico: dado:; espaciais

geo-referenciados (ou dados geográfico:;).

A extração de regras de associação ,·isa encontrar associações ou relacionamentos in-teressantes em um grande conjunto de itens de dados. Com grandes quantidades de dados sendo coletados e armazenados. muitas indústrias estão interessadas ern extrair associaçoes dos seus bancos de dados. Cm exemplo típico de extração de regras de as-sociaçã.o é a análise de dados de transaçiíes de vendas. Esse proces:;o analisa hábitos de compra dos consumidores encontrando associaçôPs entre os diferentes itens que os clientes adquirem. O descobrimento dessas associaçiíes pode auxiliar no desenvolYimento de no-vas estratégias de marketing, como nova distribuiçiío física dos produtos frequentemente associados. Por exemplo, uma regra que dita que 90'/c dos consumidores que compram pão também compram leite pode sugerir uma relação de proximidade entre os dois itens dentro elo supermercado. estimulando a venda desses produtos em conjunto.

Regras de associaçiío que possuem pelo meno:; um predicado que caracteriza relaciona-mento espacial são denominadas regras de associaçiío espacial. Como exemplo, podemos citar uma regra que dita que 80'/c dos consumidores que compraram um carro no último ano moram na região sul de determinada cidade. O fato ele estarem agrupados em

deter-minada região é urna característica deriYada do relacionamento espacial está dentro da região sul , o que caracteriza essa regra como uma regra de associação espacial.

Para exemplificar a importância deste tipo de regra, utilizaremos o contexto da indústria de telecomunicações. Três exemplos simples e bastante práticos nos sugere tratar também

as variáYeis espaciais no processo de Data lvfining:

1. TCP 4: A A.'\ATEL 5 estabelece urna regra para as operadoras de telefonia fixa

no Brasil, de caráter social: deve hawr pelo menos um telefone público em um raio de 300 metros nas grandes cidades brasileiras. A otimização da distribuição desses telefones deve ser feita considerando o cumprimento da lei pré-definida, o que

3 Alguns autores também definem como Análise de Padrões Sequenciais ( Sequential Pattern Analysis) "Sigla para "Telefone de Cso Público"

ôSigla para "Agência ~acionai de Telecomunicações':, reguladora das operações de empresas presta-doras de serviços de telecomunicaçoes no Brasil

(21)

7

envolve a disposição espacial dos pontos que representam os TCP 's. C ma associação do tipo "80o/c dos telefones públicos de determinada região possuem lucro acima do esperado'' caracteriza uma regra de associação espacial típica e possui informação que permite ao especialista tornar decisões corno aumentar o número de telefones públicos naquela regrao, ou mesmo tentar identificar o moti\·o do aumento dessa utilização.

2. Análise ele '\Iercado: A identificação de regiões de alto potencial para oferecimento de novos produtos baseado nas informaçôes já contidas no banco de dados é uma das aplicaçôes possíveis com a obtenção de regras de associação espacial. A utilização de técnicas de estudo e prospecção de mercado considerando sua localização geográfica é denominada Geom.arketing. Regras do tipo "75'!t das pessoas que moram em regiões ,·izinhas a um shopping center e possuem salário maior que 3000.00 gastam um \·alor maior que 150,00 mensalmente em suas contas telefônicas··. A identificação dessa regra pode estimular uma campanha de mo:rketinq para esses clientes em específico. v-isando o oferecimento de nm-os produtos.

3. Ident.ificação de Erros: Alguns erros em equipamentos ele transmissão de sinal podem ocorrer pela danificação dos aparelhos cle,·ido a sua disposição física. A descoberta e a tentativ-a de prcYisão de pontos problemáticos pode ser obtida atrav-és da análise espacial das características principais que geram o erro. Por exemplo. "80% das pessoas que reclamaram do serviço Y residem em região adjacente a uma linha

de transmissão". Essa regra pode sugerir algum problema de interferência causada pela linha ele transmissão considerada.

Trabalhos que elucidam técnicas de Data Mining e Data Warehov.sing e que tratam diretamente com dados da indústria de t.elecomunicaçôes tem sido usados para demonstrar corno pode ser obtido conhecimento interessante da aplicação sobre esses dados [CDH99. CHDOOJ. Entretanto, os fatores e características espaciais são desconsiderados na análise. embora seja útil para essa aplicação em específico considerar os padrões e tendências dos dados e seus respectiv-os relacionamentos espaciais.

Portanto, consideramos extremamente v-álida e oportuna a inserção da variável es-pacial para o processo de Data Mining em quaisquer aplicaçôes que lidam com dados geo-referenciados na operacionalização do negócio. Contudo, os tipos ele conhecimento a serem obtidos sobre esses dados podem não ser obtidos através de métodos de Data

i\1ining aplicados a dados relacionais.

O objetivo desta dissertação é propor modelos e técnicas que permitam obter regras de associação espacial utilizando algoritmos de mineração que lidem com dados conven-cionais. Os modelos propostos sugerem modificar a forma e conteúdo elos dados a partir de uma base de conhecimento em determinado contexto, sem que haja perda semântica.

(22)

8 Capítulo 1. Introdução e lVIotivação

As principais contribuições deste trabalho são: i) descrição formal de um modelo para obtenção de predicados espaciais: ii) descrição e utilização de uma base de conhecimento

para prm·cr obtenção de predicados mais significati,·os e iii) criação de urna arquitetura que permite obter regras de associação espacial utilizando algoritmos tradicionais de mi-neração relacionaL

O restante da dissertação está organizado da seguinte maneira: o Capítulo 2 ilustra algoritmos da literatura utilizados p<lr<l a obtenção de regras de associação e descreve modelos formais para verificação de relacionamentos topológicos entre objetos espaciais: o Capítulo 3 ilustra a arquitetura para obtenção de regras de associação espacial a partir da alteração na forma e conteúdo dos dados espaciais: o Capítulo .J descreve o modelo res-ponsán:l pela geração de predicados espaciais. atrm·és da verificação dos rdacionamentos entre os objetos: o Capítulo 5 ilustra a execução do :\lodelo de Derivação Espacial (pro-posto no Capítulo .J) a partir de um estudo ele caso c, finalmente. o Capítulo 6 apresenta as contribuições do trabalho e suas possíwis extensões.

(23)

Capítulo

2

Regras de Associação

A extração ele regras de associação visa encontrar associações e/ ou relacionamentos inte-ressantes em um grande conjunto ele dados. Com grandes quantidades de dados continua-mente sendo coletados e armazenados. muitas indústrias estão interessadas em encontrar regras de associação em suas bases de dados. O descobrimento desses relacionamentos in-teressantes pode ajudar no processo de tomada de decisão. como o design de um catálogo.

análise de mercado, ações de marketing, planejamento de infra-estrutura, oferecimento de

produtos, etc.

2.1

Conceitos Gerais

1Jma regra de associação é uma forma geral de regra de dependência definida em bancos de dados relacionais. Ela é da forma 'TV -+ E'', que significa que '·se nm padrão W aparece em uma transação, então o padrão B tende a aparecer na mesma transação,., onde \V e B são conjuntos de valores de atributos. Por exemplo, em um banco de dados de transações de vendas podemos encontrar regras como "pão-+ leite (30%. 90% )", que

significa que 90% das compras efetuadas pelos clientes que possuem o item pão também possuem o item leite, o que equivale, nesse caso, a 30% de todas as transações de venda consideradas.

Mais formalmente, podemos definir regras de associação através de um modelo ma-temático proposto em [AIS93, AS94] para lidar com o problema de obtenção destas regras. Seja oi=

{i

1 , i2 , ... ,

im}

um conjunto de literais, denominados itens. Seja Dum conjunto

de transações, onde cada transação T é um conjunto de itens tais que T Ç 0

( . Cada

transação é associada a um identificador, denominado TID. Seja X um conjunto de itens. Uma transação T contém X -;=} X Ç T 1Jma regra de associação é uma implicação da

forma X -+ Y, onde X C 'f, Y C 'i e X

n }'

= 0. A regra X -+ Y está no conjunto da

transação D com canJiança c se c% das transações em D que contêm X também contém

(24)

10 Capítulo 2. Regras de Associação

Y. A regra X~}' tem .s-aporte s em. D se

.s%

das transações em D contêm X U }'.

Confio:n.ça. denota a força da irnplicação c wporte indica a freqnência dos padrões

ocor-ridos na regra. R.cgras com alta confiança e suporte são denominadas rcynJ.s fortes[A.S9.J].

A tarefa de encontrar regras de associação 6 essencialmente descobrir regras de associação fortes em grandes bancos de dados. Em [AS9.J] o problema ele extraçiio de regras de associaçiio é decomposto nos seguintes passos:

l. Dc.scobrir os nuúores conjuntos de itens (itcmsets 1

). isto é, o.s conJuntos de itens

que têm suporte nas transações a.cúno de u.m suporte m.ínúno pr-é-dder-rnino.do .s;

2. Usa.r o.s conjuntos de itens obtidos no passo ar1terior para gwro.r o.s ncgro.s de u..sso-cw.ço.o.

O gargalo no desempenho para encontrar regras de assouaçiio {> de•tcrminado pelo processo de descobrimento dos maiores conjuntos de itens.

Dois grandes problemas n!Oti,-am a pesquisa em mineração de regras de associação: 1. Complexidade dos :\lgoritmos

A complexidade elos algoritmos de obtençiio ele itemscts frequente; é exporumcial no número de itens. O esforço no dcsenvoh·imento do:s algoritmos mais recentes é destinado à melhoria do processo de poda no espaço de busca. baseado nos índices mínimos de suporte. Isso faz com que o número de operações sobre os itens c as transações sejam minirnizados.

2. Geração de R.egras Interessantes

O número de regras de associação geradas a partir de grandes volumes de dados

é normalmente excessivo. Muitas delas siio redundantes ou irrelevantes para a aplicaçiio considerada. DeYido a isso, a análise do nível de interesse das regras de associaçiio tem sido bastante estudada. Siio utilizados, dentre outros, métodos baseados em probabilidade, em índices de correlaçiio [TKOO, KMR~94] e definiçiio

de constro.ints para a geraçiio de regras de associação [FH95].

As regras de associação podem ser di,·ididas em três diferentes classes, baseadas nos tipos de valores manipulados, dimensiio dos dados e níveis de abstraçiio.

Baseada nos tipos de valores manipulados, uma regra é denominada booleana quando revela apenas associações que denotam presença ou ausência de itens ou quantitativa quando descreve associações entre itens ou atributos qnantitativos. As regras Possu.i(X,

1 Neste trabalho o termo em inglês 11

itemsets-''será utilizado como tradução imediata da expressão "con-juntos de itens"

(25)

2.2. Obtenção de Iternsets Frequentes 11

"telefone celular") --+ Possui(X "serviço identificador de chamadas") (40%, 85%) e

Pos-sui(X, "telefone celular") 1\ Renda.Farniliar(X. "entre 2000JIO c 6000JIO") --+

Fatur·a-mento(X, "entre 2511,011 e 5110,110") 65%) são regras de associação booleanas

(pre-dicado Possui denota presença do item referido) e qnantitati,·as. respecti,·amcntc.

Quanto à dimensão dos dados. uma regra de associação pode ser mono-dimensional ou multi-dimensionaL Se a regm faz rcfPrôncia a apena!i uma dimensão semântica ela é

caracterizada con1o n1ono-dirnensional. Entretanto: se ur11a regra refere-se a dua.s ou rnais dimensões semânticas ela é considerada multi-dimensionaL Corno exemplo. podemos citar a regra Possui(X, '·telefone celular') --+ Possui()( ·'.serviço ident?fiuuior de chamadas")

(40%, 85%) corno mono-dimensional e Possui(X. ·'telefone celular") 1\ RendaFamiliar(X.

"entre 21100. OI! e 6000, IJIY) --+ Faturamento (X. "entre 250, (]() e 500,110 '') (S

%.

65%) corno

multi-dimensionaL pela presença dos predicados Faturamento. RendaFamiliar e Po.ssvJ

Considerando os nín;is de abstração envoh·idos, uma regra pode ser mono-nível ou multi-níveL Regras com o mesmo predicado podem referenciar itens através de diferentes nh·cis de abstração mapeados atrm·és ele estruturas de representação semântica. como as hierarquias de conceito. Considere as regras Possui(X, "Internet Banda Larga') --+

Tmbalha-em(X, "Rua A. Centro'') (20%, 80%) c Possvi(X. "Internet Banda Largo') --+

Tmbalha-em(X, "Centro") (30%. 80%). As regras acima são referenciadas por diferentes

nh·eis ele abstração no predicado Trabalha-em(). A primeira refere-se a um nível de abstração inferior à segunda regra (hierarquicamente o níwl Bairro é mais alto que o nível Logradouro). Esses tipos de regras são consideradas multi-níveis, pois analisam dados em nín;is ele abstraçâo diferentes.

A caracterização diferenciada das regras de associação exige modificações nos algorit-mos ele extração mais simples (para regras booleanas. mono-níveis e mono-dimensionais). I\ o entanto, as etapas de obtenção ele itemsets frequentes e geração de regras de associação compõem a base para a obtenção de regras de associação de quaisquer tipos.

A próxima seção é destinada a descrever os principais métodos para obtenção de

iternsets frequentes existentes na literatura e o algoritmo simples ele geração de regras de

assooaçao.

2.2

Obtenção de

Itemsets

Frequentes

Como citado na seção anterior. o problema de obtenção de regras de associação resume-se a obter conjuntos de itens mais frequentes. ou seja. os que têm suporte nas transações acima ele nm mínimo pré-definido: e gerar regras de associação fortes baseadas nesse conjunto de itens obtidos. Esta seção ilustra alguns métodos utilizados para obter os conjuntos de itens frequentes e seus algoritmos.

(26)

12 Capítulo 2. Regras de Associação

2.2.1

Determinação do Suporte dos

Itemsets

Existem duas estratégias para determinar o wporte de um item ou conjunto de itens em um conjunto de dados. A primeira abordagem consiste em fazer a ·'contagem·· das ocorrências no banco de dados. l"m contador é inicializado com zero para cada itemset

inwstigado. Todas as transaçôes são lidas e o contador {: incrementado para determi-nado item quando ele é encontrado. A geração de subccmjuntos de itemsets candidatos é implementado tipicanwnte em estruturas do tipo hash ou similares.

C ma outra estratégia consiste em determinar os ,-alorcs de suporte dos conjuntos can-c!idatos por ·'interse~ão de conjuntos". Essa abordagem utiliza um identificador único de transaçôes e armazena. para cada item. urna lista de identificadores das uansaçôes ( tid.s)

que contém o item referido. Essas listas de tids siio armazenadas em ordem ascendente para permitir que operações de interseção sejam feitas de forma eficiente. Para esse tipo de abordagem, é necessário que sejam armazenadas as listas de tid em memória. o que pode causar problemas para um grande número de itens.

As próximas subseções fazem referência aos algoritmos que utilizam essas abordagens.

2.2.2 Extração de

Itemsets Frequentes Baseados em Contagem

Algoritmos para extração de iternsets frequentes realizam n\rios acessos aos dados. \"o primeiro passo, faz-se a contagem do suporte de cada item indi\·idualrnentc para deter-minar quais deles são frequentes. Em cada pa:;so subscquente. cada itemset descoberto no passo anterior é usado para combinar com outros itemsets visando gerar outros po-tencialmente frequentes, chamados "iternsets candidatos". Para cada üernset candidato descoberto é verificado seu suporte e, caso esteja acima de um valor pré-definido s. ele é considerado um itemset frequente e portanto será analisado no próximo passo. Esse

processo continua até que nenhum iternset frequente seja encontrado no passo k.

'\os algoritmos AIS e SET:VI [AS94] os itemsets são gerados enquanto os dados estão sendo lidos. Especificamente, depois da leitura de uma transação. são determinados quais

itemset.s frequentes encontrados no passo anterior estão presentes na transação. \"ovos

itemsets candidatos são gerados acoplando esses iternsets a outros itens na transação. Entretanto, a medida que o algoritmo faz suas iteraçôes, esses resultados são gerados desnecessariamente, gerando e contando muitos itemsets candidatos que tendem a ter

cardinalidade pequena.

Os algoritmos Apriori e AprioriTID geram itemsets candidatos para serem contados usando apenas os itemsets frequentes encontrados no passo anterior - sem considerar as transações originais do banco de dados. A intuição básica é que qualquer subconjunto de

um itemset frequente deve ser frequente. Os iternsets candidatos que possuem k itens

(27)

2.2. Obtenção de Itemsets Frequentes 13

todos aqueles que contêm algum subconjunto não-frequente. Isso resulta na geração de un1 núrnero de iteTnsets candidatos rnuito lllPnor.

Esta dissertação ilustra o algoritrno A[!'r-torí para obtenção de itnnsets frequentes. Y árias ,-ersões otimizadas deste algoritmo podem ser encontradas em IAS94. PCY95. B:\ICT]. Elas incluem mapeamento de ítcmscts candidatos em estruturas de hash. uti-lização ele án·ores condicionais para eliminar a necessidade de geração de candidatos. dentre outras. A seguir, o algoritmo Aprú;ri básico é descrito. Esta descrição se justifica

pela simplicidade do entendimento e por conter as principais propriedades contidas em

suas versões otirnizadas. Algoritmo Apriorí

Apríorí é um algoritmo para extração de itcmsets frequentes que possibilita a geração

de regras ele associação. O nome do algoritmo é baseado no fato ele que o algoritmo usa

conhecimento prévio dos conjuntos de items (iternset.s) frcqucntt>s já conhecidos. Apriorí

é projetado usando uma abordagem iterativa. onde k-itcmset.s são usados para explorar

os (k

+

l)-iternsets. Primeiramente. cria-se o conjunto elos mais frequentes l-iternsets é

encontrado. Este conjunto é denotado por L1 . Da mesma maneira_ L1 é usado para

encontrar L2 . o conjunto dos 2-itemsets mais frequentes . que é usado para encontrar L:~

e assim por diante. até que nenhum k-ítem.scts mais frequentes ( itemsets cuja ocorrência supere o índice de suporte mínimo pré-definido) possam ser encontrados.

Para prover eficiência na geração ele íternsets frequentes, uma propriedade importante denominada Propriedade Apriori é usada para eliminar buscas desnecessárias no banco ele dados. Essa propriedade é baseada na seguinte definição: se um ítemset I não satisfaz o índice ele suporte mínimo ( min-sup), então I não é frequente, isto é, F (I) <min-sup.

Se um item A é adicionado ao itemset I, então o ítemset resultante (isto é, I U A) não pode ocorrer mais frequentemente que I. Dessa forma. I U A também não é frequente, isto é, F (I U A) <rnín-sup.

Para entender corno a Propriedade Apriori é aplicada no algoritmo, ,·amos analisar corno Lk~: é usado para encontrar Lk· Cm processo em dois passos é descrito abaixo, consistindo em ações ele junção e poda 2

L Junção: Para encontrar Lb um conjunto de k-iternsets candidatos é gerado pela junção de Lk~: com si mesmo. Este conjunto de candidatos é denominado

Ck-Sejam 11 e 12 dois iternsets em Lk~l· A notação li[j] refere-se ao j-ésimo item em

11 (por exemplo, lt[k- 2] refere-se ao antepenúltimo item em /1 ). Por convenção,

Apr-íori assume que itens e ítemsets são considerados na ordem lexicográfica. A

junção Lk~: N Lk~: é efetuada se seus primeiros (k- 2) items são os mesmos. Isto

(28)

14 Capítulo 2. Regras de Associação

é. membros 11 e 12 de Lk-r são intercalados se (IJ[1]

=

12[1])t,(l![2]

=

12[2])/\ ...

/\(II[k-2] = 12

[k-

2]) 1\ (II[k -1]

<

l2[k -1]) .. -\condição (ldk -1]

<

l2[k -1]í simplesmente assegura que item . .set.s duplicados não serão gerarlos. O item.set resultante é formado pclajunçãode/1 e/2 éll[1]11 .11[k-1]12[k-l].

·o Poda: Ck é um superconjunto de Lk. isto é, seus membros podem ou não ser fre-quentes, mas todos os k-itemsets freqrH'utes estão presentes em Ck. C ma nurcdura

no banco de dados para determinar a contagem rlc cada candidato em Ck dew

re-sultar na determinação de Lk (isto é. todos os candidatos cuja contagem seja maior do que um suporte mínimo são frequentes por definição, e dessa forma compõem

Lk). Entretanto. Ck pode possuir ,·ários itens. o que pode envolwr grande esforço

computacional. Para reduzir o tamanho de C, em cada iteração. a Propriedade Apriori é usada como se segue. Quaisquer (k- 1)-itemsets que não são frequen-tes não podem ser um subconjunto frequente dc um k-itwmset . . -\ssim, se qualquer

( k- 1) subconjunto de um k-itcm.set candidato não cst á em L~c_1, então o candidato não pode ser frequente e deve ser remm·ido de C~c. Esse teste no subconjunto pode ser feiro rapidamente mantenrlo uma cstrutma lw.sh de todos os itcm.sets frequen-tes, melhorando a performance do algoritmo baseado na diminuição do número de

dcmsets candidatos a serem gerados.

O algoritmo continua a iteração até que Lk =

O.

:\esse ponto. o algoritmo finaliza retornando como itcmsets frequentes aqueles contidos em Lk-l·

_-\baixo exemplificamos a obtenção de item.sets frequentes utilizando Apriori. Para ilustrar o exemplo. serão considerados predicados relacionados ao serTiço de telefonia celular. A tabela 2.1 descreve sucintamente os predicados associados, sendo C o código que identifica um cliente, e Xi(''ii

2:

1) um ,·alor real. A cada predicado está associado um código de Item.

Considere o conjunto de D dados contendo os códigos dos clientes e o conjunto Ii('ii

2:

1) de predicados. Os atributos em D são o código do cliente (CID) e o conjunto de predicados associados (itemsets). A partir de D. a execução de Apriori será ilustrada nas figuras e as transições de estados descritas abaixo:

l. :\a primeira iteração, cada item é membro de C1 . O algoritmo simplesmente faz a

contagem do número de ocorrências de cada item

2. Supondo que minimurnsupport (índice de suporte mínimo) é 2 (i.e, mmimumsupport =

2/9

=

22o/c). L1 é determinado pelos itens de C1 que satisfazem este índice.

3. Para descobrir os 2-iternsets frequentes (L2 ), o algoritmo usa L1 N L1 para gerar C2.

(29)

2.2. Obtenção de Itemsets Frequentes

15

Predicado Descrição I Código do Item

Fatv.m.mento (C,> ),·,) Interurbano{ C,> X Deslocarn.ento(C.> .\3) TernpoCliente(C.> .':1)

RendaJV!ensal(C.> X,)

Cliente possu1 1nccüa cie contas , rnaior que X,

1ncnsa1s !

! 11

1 l:l!Cnte possm mecila de contas mterurlla-1 nas mensais maior que .\ 2

Cliente possm mecha de contas em deslo-' camento mensais maior que X:3

Cliente efetin1 a mais de X4 meses

I

Clwntc possm renda mensal declarada em contrato nHÜor que +Y">

12

13

14

15

Tabela

2.1:

'llapcamcmo entre predicados e códigos

D C lftemsets C001 Il, I2, !5 C002 i !2. I4 Cü03

I

I2' I.3 C004 i IL I2 .I4 C005 'i Il. I:3 C006 I I2. !3 Cü07 , !1. 13 C008 . !1. !2, !3, Iõ C009 I, I1, !2. I3

i {

11}

I

{12} 1 I {13}

r--t{/4}

1 { 1s} Sup.Count 6 G 2 2 Item.set Sup.Count 6 6 2 2

i

!

4. As transações em D são relidas e a contagem é feita para cada itemset candidato em C2.

o. O conjunto dos 2-itemsets frequentes (l2 ) é determinada comparando a contagem

elos itens com minimumsupport.

6. Seja

=

{{11,12,13}, {11,12,15},{11,13,15},{12,13,14}, {12,13,15},{12,14,15}}

Baseado na Propriedade ApriorL que determina que todos os subconjuntos ele

itemsets frequentes também elevem ser frequentes, conclui-se que os quatro últimos

candidatos de C3 não podem ser frequentes. Dessa forma, os subconjuntos

(30)

16 Capítulo 2. Regras de Associação

c2

Item.oet Item.sel Snp.Count

{ IL 12} {11.12} .J L2 { 11. 13} {11.13} l Itemset '! Sup.Count {Il.H} ! {11,1-.l} 1 {11.12} 4 {IL 15} ' { 11. r:;} 2 {JLI3} 4 I 3 {12.13} 4 '· { 12. 13} ..1 5 {JLI5} 2 .----) {12 I 4}

7{12.

14} 2 c--J+{/2 13} 4 {12, f)} i {12. r:;} 2 1 {121!} 2

{13.

!4}

{13, 14} () I {12.15} 2 I {13.15} { J:3. ]] } 1 {J . .Lfs} I {141)}

o

c,

C:l

L"

Itemset Ite-mset Sup.Count Iten1.set Sup.Count

6 {11. 12. 13} 2 8 ' {I L J2.J:3} ·)

~ {ILI2, 15}

.1

{11.1;.

/.~}

+-fll.L!.J} 2

~{I1.12I:i}

2

Tabela 2.2: Geração de itemsets frequentes. onde o minimv.rnsv.pport é 2

1. As transações em D são relidas para a determinação de L3 .

8. O algoritmo usa L:3 1><1 L3 para gerar C4 . Embora o resultado da junção seja

{ { IL 12. 13. 15} }. esse itemset não é considerado pois seu subconjunto { { 12. 13, 15}} não é frequente. Assim. C4 = 0 e o algoritmo termina, tendo em L3 todos os iternsets

frequentes em D.

Em Apriori, para determinar quando um iternset candidato está contido em uma transação, os itens correspondentes são comparados. ('ma estrutura em forma de hash é usada para otimizar os testes entre o conjunto de itemsets candidatos e os componentes das transações. :\o algoritmo AprioriTID, depois de cada passo, um conjunto de todos os itemsets contidos na transação é utilizado no lugar da própria transação. :\o passo seguinte, iternsets candidatos são testados através da checagem de onde os iíernsets usados para gerar os outros iternsets candidatos estão contidos no conjunto que representa a transação. Em Apriori, o teste é efetuado para todas as transações em cada passo. Entretanto, em AprioriTID, se uma transação não contém nenhum itemset frequente ela

(31)

2.2. Obtenção de Itemsets Frequentes 17

não será considerada nos passos subsequentes do algoritmo. Consequent.emente, o número de conjuntos que mapeiam transações pode ser muito inferior ao número de transações originais do banco de dados. Entretanto, nos passos iniciais (que geram um grande número de itemsets candidatos). os conjuntos que mapeiam as transações e os itern.sets frequentes contidos nela podem srr maiores que os próprios bancos de dados. Crn algoritmo híbrido foi proposto em [AS9-f, que se usa o algoritmo Apriori nos passos iniciais e o Ap-rioriTID

nos passos finais do processo.

Algoritmo FP-growth

Conforme vimos. a Propriedade Apriori atinge bom desempenho quando comparado aos algoritmos ameriores a ele simplesmente pelo fato de reduzir o número de conjuntos candidatos através da operação dc poda. Entretanto. quando licliunos com índices ele

suporte baixo ou um grande número de itens em cada transação. um algoritmo

Avriori-like pode agregar custos não-triviais [HPYOO]:

• \lanipular um número grande de conjuntos candidatos é caro computacionalmente. Por exemplo, se existem 104 1-itemsets frequentes, o algoritmo Apriori

necessi-tará gerar mais que 107 2-itemsets. além de acumular e restar a frequência de suas

ocorréncias nas transações. Dessa forma. para descobrir um iternset de

cardinali-dade 100. o algoritmo dew gerar 2100 = 1030 candidatos no total. Esse é um custo

inerente do processo de geração de candidatos. independente das estruturas de dados ou implementações diferentes de algoritmos baseados em Apriori.

• Ler repetidamente o banco de dados checando um grande número de conjuntos candidatos exige grande esforço computacional.

Em [HPYOO], os autores constataram que o gargalo no desempenho dos algoritmos

Apriori-like é justamente o teste e geração dos conjuntos candidatos. Se urna dessas

operações for ot.imizada, o desempenho da mineração poderá ser substancialmente melho-rado.

Para isso, propõem o algoritmo FP-growth que consiste de três fases distintas:

1. A construção de urna estrutura em forma de árvore pré-fixada compacta que ar-mazena informações quantitativas sobre os padrões mais frequentes. Somente os

1-itemsets frequentes terão nós na árvore, e os nós são arranjados de urna forma que

os nós que ocorrem mais frequentemente terão maiores chances de compartilhar nós do que os menos frequentes. Essa estrutura é denominada Frequent-Pattern Tree,

(32)

18 Capítulo 2. Regras de /1ssociação

2. Crn método de mineração de fragmentos dos padrôes baseada na FP- Tree é execu-tado. Ele inicia do conjunto l-itemsct (como um padrão inicial denominado .svfii:o),

examina somente sua base "condicional de padrões" (um subconjunto dos dados que consiste do conjunto de iternsets frequentes que possuem os ite-rnset.s ·'sufixos··).

constrói sua nm·a FP- Tree baseada na base condicional. c executa rccursi,·amente

o percurso da án·ore. Os nm·os itemset.s (padrões) são gerados atnn·és da conca-tenação elos sufixos com os novos gerados ela FP- Tree condicional. Como os iternscts

frequentes em qualquer transação são sempre simbolizados pelos seus caminhos

cor-respondentes na FP- Tree, a excêcução recursi,·a ele FP-Growth assegura a completude do resultado. :\esse contexto. o método proposto não (' corno o ,-\priori (ele gcraçào e testes) mas somente ck testes restritos. As operações ck mineração se resumem à acumulação ele contadores e ajuste ele caminhos pré-fixados. o que 6 nmito menos

caro elo que a geração e teste dos candidatos propostos em algoritmos baseados em Apriori.

3. Enquanto Apriori faz a geração bottom-vp de combinações de itcmsefs frequentes. a técnica de busca utilizada em FP-Grm\"th é baseada em particionamento e divisão e conquista. Isso reduz dramaticamente o tamanho da base condicional gerada na procura de iternsets no nível subsequentc. assim como o tamanho da sua FP- Tree

condicional. Dessa forma. o problema de encontrar item.sets frequentes se transforma em encontrar itemsets menores e concatená-los com sufixos. Isso faz com que os

item.oets menos frequentes sejam sufixos. o que oferw:c grande scleti\·idade. Todas essas técnicas unidas contribuem para redução substancial dos custos de busca dos

itemsets frequentes.

2.2.3 Extração de Itemsets Frequentes Baseados em Interseção

de Conjuntos

Algoritmos qne utilizam essa abordagem possuem referência a um identificador único de transações tid. Para um único item a lista ele tids é o conjunto de identificadores que correspondem às transações que contêm esse item [HG:\00].

Serão descritos dois algoritmos bastante conhecidos que utilizam essa abordagem:

Par-tition [SO:.J95] e Eclat [ZP~IL91].

Partition

O algoritmo propõe a diminuição do n úrnero ele leituras a serem realizadas no banco de dados para testar iternsets candidatos. Em uma primeira leitura. ele gera um conjunto

(33)

2.2. Obtenção de Itemsets Frequentes 19

todos os itemsets frequentes, e por essa razão pode conter falsos candidatos (mas nao

falso negativos) [S0'\'95]. Durante uma segunda leitura. contadores para cada um desses itemsets são inicializados (' o suporte de cada um é medido.

A execução é feita em duas fases. Na primeira fase. o algoritmo divide logicamente o banco de dados em partições distintas .. '\s partições são consideradas urna por n'z e todos

os itemsets frequentes para cada partição são gerados. '\'o fim dessa fase. esses iternsets são combinados para gerar um conjunto de todos os itcmsets potencialmente frequentes. '\'a segunda fase. o suporte atual desses itemsets são gerados e os itemsets efetivamente frequentes são identificados. Os tamanhos das partições são escolhidos de forma que cada uma delas possa ser armazenada em memória principaL considerando que elas são lidas apenas uma fez em cada fase.

Esse algoritmo se baseia na Propriedade Apriori. e utiliza para contagem de cada

iternset a estrutura de tidlists (lista de identificadores de transações que contém o itern.set),

que são mantidas ordenadas. Dessa forma. a cardinalidade ela tidlist ele um itemset di;-idida pelo número total ele transações em uma partição nos fornece o suporte desse

itemset na partição.

Determinados os suportes de cada itemset candidato nas partições. o conjunto candi-dato global é gerado pela união de todos os itcmscts frequentes em cada partição. '\'esse ponto, a segunda fase do algoritmo é iniciada, e executa n iterações. onde n é o número de partições. Gm contador é setado para cada itemset candidato e inicializado com zero. Para cada partição, tidlists para todos os l-itemset.s são gerados. O suporte de um itemset candidato em cada partição é gerado pela intcrseçào das tidlists de todos os subconjuntos

de cardinalidade 1 de cada itemset. A contagem acumulati\·a desses valores fornece o suporte global elos itemsets candidatos [S0'\'95].

Eclat

Esse algoritmo é introduzido em [ZP'\!L97] e combina técnicas de busca em profundidade no espaço de busca dos itemsets e interseção de tidlists. Este tipo de técnica de busca visa manter as tidlists no caminho da raiz para o iternset investigado na memória. o que elimina a necessidade de particionar o banco de dados como Par-tition.

Eclat implementa uma otimização denominada '·interseções rápidas". Quando duas

tidlists são interseccionadas, o resultado que interessa é apenas uma tidlist resultante

que alcança o suporte mínimo. Em outras palavras, as interseções devem parar de ser realizadas sempre que o resultado não atingir o índice de suporte. O algoritmo gera apenas

itemsets frequentes de tamanho

2:

3. Derivações desse algoritmo como MaxEclat, Clique

e MaxClique estão descritas em [ZP'V!L97].

É importante verificar que a obtenção de itemsets tem sido estudada e os seus métodos se diferenciam quanto ao modo de contagem. estratégias de busca e estruturas utilizadas.

(34)

20 Capítulo 2. Regras de Associação

Em comum. todos os algoritmos mantêm a forma do conjunto de dados a ser minerado. como ilustra a tabela 2.2.3.

Conjunto de Dados TID .) i6 I 8 ! t cns

I,.h

I"

l:r

h.!;,.

I, I,. fs

lJ

f,

J,.

h],

r, .

.In

Tabela 2.3: Forma do Conjunto de Dados a ser :\Iinerado

2.3

Geração de Regras de Associação

O passo natural após a geração dos iternscts frequentes em um conjunto de dados D é gerar regras de associação, geralmente fortes, para esses itens (como já foi citado na Seção

2. regras de associação fortes são definidas como sendo aquelas que satisfazem suporte e

confiança mínimos). Isso pode ser feito usando a seguinte equação para confiança, na qual a probabilidade condicional dos termos é expressa em termos da contagem dos iternsets:

. . . . supportcount(A U E)

confwnca(A -7 E)

=

P(E 1 A)

=

.

. ( ) .

supportcount A

onde supportcount(A U E) é o número de transações contendo os itemsets (A U E), e

supportcount(A) é o número de transações contendo o itemset A. Baseado nessa equação,

regras de associação podem ser geradas corno se segue:

• Para cada itemset frequente l, gerar todos os subconjuntos não-vazios de l:

• Para todo subconjunto não-vazios de l, considere a regra "s -7 (l-s)" se ;:;;~;:~::~:!;\

>

mínimumconfidence. onde minímumconfidence é o índice de confiança mínimo

(35)

2.3. Geração de Regras de Associação 21

Como as regras são geradas de itemset.s frequentes. cada uma automaticamente satisfaz

o suporte mínimo pré-definido.

Considere o exemplo dos itemsets frequentes obtidos em 2.2.2, mais especificamente o

item.set frequente I= { Il. 12, I5 }. As regras de associação são geradas atnm's dos passos

descritos acima. O subconjuntos de I são {IL12}.{Il.I5}.{I2.!5}.{11},{12} e {15} .

. -'\s regras de associar;ão resultantes são as mostradas abaixo, cada uma com sua rcspecti,·a confidência:

11/112-+ Iõ.confúmco = 2/4 = õOVc 11/115-+ 12.confianco = 2/2

=

lOOo/c

12/115-+ 11. confionca = 2/2

=

1007<

I1 -+ 12 ;\ Iõ, confianca

=

2/G = 3.3o/c

12-+ I1 /1 !5. confianco

=

2/1 = 29Vc

15-+ 11 /1 12. confinnca

=

2/2

=

100%

Se o índice mínimo de confiança ( minimwnconfidence) for definido como 70%. então as regras 11 /1 15 -+ !2. 12 /1 15 -7 Il e !5 -+ Il /1 I2 são consideradas regras fortes para

o iternset considerado. Deri,·ando os literais atribuídos para predicados com semântica

descrita na tabela 2.1. obtemos as seguintes regras de associação fortes:

Fatummento(C.

>

Xl) /1 RendaMensal(C,

>

X5)-+ 1nterurbano(C,

>

X2 )

Interurbano( C,> X2 ) /1 RendaMensal(C,

>

X5)-+ Faturamento( C.> Xl)

RendaMensal(C,

>

X5)-+ Faturamento( C.> X1 ) /1 1nterurbano(C,

>

X2 )

A regra RendaMensal(C,

>

X5)-+ Faturamento( C.> X1 ) /1 1nterurbano(C,

>

X2 )

dita que 100% dos clientes que possuem renda mensal declarada maior que X5 corresponde

aos que fornecem de faturamento um valor maior que X 1 e gastam um valor maior que

x2

em ligações interurbanas.

Verifica-se que nem todas as regras de associação fortes obtidas são "interessantes" em determinado contexto. O conceito de nível de interesse 3 é apresentado em [HF95L e diferentes abordagens são exploradas. Em [HK01] o nível de interesse é definido através do conceito probabilístico de correlação. Mika et. al definem em [K'vlR +94j templates

para a obtenção de regras de associação em determinados contextos.

Referências

Documentos relacionados

Como objetivos específicos pretendeu-se iden- tificar os taxa existentes nesta gruta, determinar a riqueza de es- pécies de sua comunidade; verificar a influência de fatores

Essa tarefa não tem a necessidade de interface com o usuário, tornando-se uma boa candidata ao processamento em lotes, normalmente utilizados como a divisão

Ainda segundo Gil (2002), como a revisão bibliográfica esclarece os pressupostos teóricos que dão fundamentação à pesquisa e às contribuições oferecidas por

Quais são os requisitos de uma plataforma multilateral de software para possibilitar o aumento da quantidade de resíduos de equipamentos eletroeletrônicos (REEE) destinados

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

Outro aspecto a ser observado é que, apesar da maioria das enfermeiras referirem ter aprendido e executado as fases do processo na graduação, as dificuldades na prática

O DIRETOR DO LABORATÓRIO NACIONAL DE COMPUTAÇÃO CIENTÍFICA DO MINISTÉRIO DA CIÊNCIA, TECNOLOGIA, INOVAÇÕES E COMUNICAÇÕES, no uso da competência que lhe foi

[r]