descoberta de regras de classificação em bancos de dados com hierarquias conceituais

42
Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

Upload: charlotte-keon

Post on 03-Jan-2016

30 views

Category:

Documents


2 download

DESCRIPTION

Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais. Descoberta em múltiplos níveis conceituais. Padrões podem ser descobertos: 1) no nível conceitual representado no Banco de Dados (BD) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

Descoberta de Regras de Classificação em Bancos

de Dados com Hierarquias Conceituais

Page 2: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 2

Descoberta em múltiplos níveis conceituais

Padrões podem ser descobertos:1) no nível conceitual representado no Banco de Dados (BD)2) num nível conceitual mais elevado, utilizando informação de

hierarquias de conceitos descoberta de padrões de alto nível

Observações: em geral, não existem regularidades fortes em conceitos com baixo

nível de abstração. regularidades em conceitos de nível mais alto de abstração, podem

ser conhecidas ou de senso comum. conceitos em níveis intermediários podem apresentar maior grau de

interesse.

Page 3: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 3

Regras de Classificação

Seja um BD no qual uma tupla:t = (a1, ..., an), ak DOM (Ak) e (1 k n) e

C = {c1, ..., cm} um conjunto finito de classes.

Regras da forma:

Se A então ci,

na qual A é uma conjunção de pares atributo-valor, i.e., (A1, aa) (A2, ab) ... (An, az), e ci é uma classe.

note que A e ci são conjunto disjuntos.

Page 4: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 4

Regras de Classificação

Servem para:

descrição intensional de um conjunto: descrição através de uma propriedade.

previsão da classe de um novo exemplo, ainda desconhecido.

Page 5: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 5

Hierarquia de Conceitos - Fundamentos

um conjunto finito parcialmente ordenado de conceitos - define relações de generalização e especialização

pode ser representada como uma árvore os valores dos atributos estão no nível folha - menor

nível de especialização pode ser fornecida por um especialista de domínio ou ser

construída a partir do BD

Page 6: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 6

Hierarquia de Conceitos - Tipos

1. Hierarquia de esquema (entre atributos)rua bairro cidade estado ( é uma relação de ordem

parcial)

2. Hierarquia entre valores de atributo (instância)- {ES, MG, RJ, SP} Sudeste- {0.0 ... 4.9} Insatisfatório (valores contínuos em discretos)

3. Hierarquia baseada em regras (hierarquia condicional)- {6.5 ... 8.5} graduação Muito Bom

Page 7: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 7

Hierarquias de Conceitos - Representação e Armazenamento

representada através de uma árvore

uso de tabelas relacionais. cada linha da tabela significa um

caminho do vértice raiz até um vértice folha.

0 1 2QUALQUER clara amarelaQUALQUER clara brancaQUALQUER escura pretaQUALQUER escura marrom

Page 8: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 8

Medidas de Relevância

Completude: se a regra classifica todas as instâncias da classe.

Consistência: se a regra não classifica uma instância de outra classe

Page 9: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 9

Medidas de Relevância - sem hierarquia

Definição 1um objeto ou tupla de um BD é coberto ou satisfaz uma regra se os

atributos da tupla possuem os mesmo valores que os atributos da regra

Definição 2uma regra classifica corretamente uma tupla do BD se a tupla for

coberta pela regra e pertencer à classe da regra.

Page 10: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 10

Medidas de Relevância - com hierarquia

Definição 3um objeto ou tupla de um BD é coberto ou satisfaz uma regra de alto

nível, se os atributos da tupla possuem valores que pertencem aos conceitos dos atributos do antecedente da regra

Definição 4uma regra de alto nível classifica corretamente uma tupla do BD se a

tupla for coberta pela regra e pertencer à classe da regra.

Page 11: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 11

Medidas de Relevância

A C : (p, n) SUPORTE : número de tuplas classificadas corretamente

dividido pelo número de tuplas que pertencem à classe: p / P

CONFIANÇA: número de tuplas classificadas corretamente dividido pelo número de tuplas cobertas pelo antecedente da regra: p / (p + n).

Valores altos de suporte e confiança: regras fortes

Page 12: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 12

Primitiva de Contagem

Regras são convertidas em expressões SQL: SE ODOR ENTÃO ? SELECT odor, classe, COUNT(*) FROM tabela_dados

GROUP BY odor, classe;

SE FORMA = ACHATADA ODOR ENTÃO ? SELECT odor, classe, COUNT(*) FROM tabela_dados

WHERE forma = ‘achatada’ GROUP BY odor, classe;

Page 13: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 13

Cálculo do Suporte e Confiança (cont.)

Classes

C1 C2 C3 ... Cn

Av1 T11 T12 T13 ... T1n T1+

Av2 T21 T2+

Av3 T31 T3+

... ...Avk Tk1 ... ... ... Tkn Tk+

T+1 T+2 T+3 ... T+n T++

Tuplas por classe

Atributovalor

Tuplas por valor

de atributo

Page 14: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 14

Cálculo do Suporte e Confiança (cont.)

Suporte: p / P => T11 / T+1

Confiança: p / (p + n) => T11 / T1+

Page 15: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 15

Busca por Padrões em Múltiplos Níveis

Estratégias de mineração

1) especialização progressiva - top down

2) generalização progressiva - bottom up

Page 16: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 16

Espaço de Regras

Page 17: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 17

Tamanho do Espaço de Regras

tuplas com i atributos. cada atributo possui k valores possíveis número de possibilidades de tuplas: T = k i. número de diferentes de regras: R = (k+1) i

Page 18: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 18

Problema de Busca

Estado Inicial regra vaziaOperadores aplicação das operações na

especialização das regrasTeste do Estado Meta cálculo das medidas de relevância para

comparação com os valores mínimos

Page 19: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 19

Especialização de Hipóteses de Regras

Se (A1,v1) (A2, v2) ... (Ai, vi) então cn

Se (A1,v1) (A2, v2) ... (Ai, v’i) então cn

Se (A1,v1) ...(Ai, vi) (Ai+1, vi+1) então cn

especialização na hierarquia

adição de par Av

uso de

hierarquias de conceitos

uso de

hierarquias de conceitos

Page 20: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 20

Algoritmo de Busca - geral

nós CRIA-LISTA (regra vazia)laço faça

se a lista de nós estiver vazia então devolva falhanó SELECIONE(nós)se TESTA-META(nó) então armazena nó

senão nós INSERE-LISTA (nós, EXPANDA(nó))fim

Page 21: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 21

Geração das Regras

R’: cor = escuraR’1: cor = escura forma = achatada

R’: cor = escuraR’2: cor = preta

Page 22: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 22

Geração das Regras

Propriedadeo número de tuplas cobertas por uma regra mais específica é

menor ou igual ao número de tuplas cobertas pela regra mais geral.

Operações SUPORTE CONFIANÇAAdição de atributo ou Especialização na hierarquia ou

Page 23: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 23

Poda do Espaço de Regras

Expansão de nós cujo valor de suporte seja menor que o mínimo.

Tabelas de co-ocorrência (especialização pela adição de atributos):1) expansão de nós inexistentes no BD;2) expansão de nós com valor de suporte menor que o mínimo

Page 24: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 24

Poda no Espaço de Regras

ID COR ODOR1 marrom amêndoa2 branca peixe3 verde anis4 verde amêndoa5 branca anis

XXXXXXXX XXXX

Page 25: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 25

Sistemas de Descoberta

ParDRI (Merwyn Taylor, UMA, EUA)– ParkaDB - linguagem de representação do

conhecimento + SGBD.– tabelas de co-ocorrências.

DBMiner (Jiawei Han, SFU, Canadá)– generalização de tabelas - IOA (Indução Orientada a

Atributo).– nível de generalidade determiando pelo usuário.

Page 26: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 26

Critérios de Avaliação do Conjunto de Regras

1) Precisão de classificação– conjunto de teste

2) Complexidade do conjunto de regras– quantidade e tamanho das regras

3) Precisão em BD com ruído

4) Equivalência Semântica

5) Eficiência do Algoritmo de Busca– nós expandidos

Page 27: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 27

Objetivos do Trabalho

1) Desenvolvimento de um sistema de descoberta de regras de classificação, denominado NETUNO, utilizando múltiplas hierarquias conceituais.

2) Estender a idéia de primitiva de contagem considerando hierarquias conceituais.

3) Comparação do Sistema NETUNO com outros sistemas.4) Paralelo entre a busca exaustiva por regras e as técnicas de seleção

de características

Page 28: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 28

Cronograma

Objetivos MAI JUN JUL AGO SET OUT NOV DEZ1 2 3 4 Escrita

Page 29: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

29

Algoritmo de Busca

1. gerar as hierarquias numéricas2. gerar as listas de co-ocorrências3. LISTA-REGRAS-DESCOBERTAS 4. nós CRIA-LISTA (regra vazia)laço faça

se a lista de nós estiver vazia então devolva LISTA-REGRAS-DESCOBERTAS nó SELECIONE(nós)se TESTA-META(nó) então armazena nó LISTA-REGRAS-DESCOBERTAS

senão nós INSERE-LISTA (nós, EXPANDA(nó))fim

Page 30: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

Modelo funcional

Page 31: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 31

Propagando a contagem de tuplas pela Hierarquia

Av1: preta

QUALQUER 57

clara 27

Av4 : brancaAv3 : amarelaAv2 : marrom

escura 30

T31 = 10 T41 = 17T11 = 21 T21 = 9

Atributo A = corClasse = C1

Page 32: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 32

Cache em tabelas

São criados dois tipos de cache: Cache 1 - para cada atributo, são criadas tabelas contendo todas as

tuplas cujos valores correspondem aos vértices de mais alto nível (imediatamente abaixo da raiz).

C1 = (ID_tupla, Valor, Classe)

Page 33: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 33

Cache em tabelas (cont.)

São criados dois tipos de cache: Cache 2 - para cada regra é criada uma tabela que contém todas as

tuplas que satisfazem a regra.

C2 = (ID_tupla)

Uma regra especializada pela adição de mais um atributo:C2 C1

Page 34: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 34

Geração de Hierarquias Numéricas

Abordagem de baixo para cima. Agrupa valores individualmente em intervalos. Critério: menor aumento na entropia. Sucessivamente, os intervalos são agrupados

seguindo o mesmo critério, até formar o vértice raiz.

Vértice raiz vai do menor ao maior valor existente no BD.

Page 35: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 35

Geração de Hierarquias Numéricas

10

10 ~ 60

25 40 605327 33

53 ~ 60

33 ~ 6010 ~ 27

33 ~ 4025 ~ 27

Page 36: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 36

Avaliação

Banco de dados sobre cogumelos obtido do repositório de BD de aprendizado de máquina da UCI, EUA

contém 8416 tuplas, 23 atributos, 2 classes (cogumelos comestíveis e venenosos)

Page 37: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 37

Algoritmo implementado

utiliza SGBD PostgresSQL onde são armazenadas as hierarquias de conceitos e o BD

para a execução do algoritmo, o BD deve ser representado numa única tabela

redução do espaço de hipóteses: co-ocorrência entre as tuplas - pares (A,v) que ocorrem

nas tuplas. medidas de relevância. uma regra descoberta não irá compor uma outra regra.

Page 38: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

FIMFIM

Page 39: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

Hierarquia de Esquema

rua bairro cidade estado

Rua Bairro Cidade Estado

Paissandu Flamengo Rio de Janeiro RJMatão Cid Universitária São Paulo SP

ruarua

bairrobairro

cidadecidade

estadoestado

Page 40: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

Hierarquia entre valores do atributo

província região paísProvíncia

ABBCMBSK

ONQC

Page 41: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

SET 2003 41

Hierarquia entre valores do atributo

Estado Renda

RJ 32100SP 25500MG 25403ES 70000PR 12500RS 50000

10000 - 25000

10000 - 75000

40000 - 75000

55000 - 7500040000 - 5500025000 - 40000

10000 - 40000

Page 42: Descoberta de Regras de Classificação em Bancos de Dados com Hierarquias Conceituais

Hierarquia condicional

qualquerqualquer

fracofraco forteforte

ruimruim regularregular muito bommuito bom excelenteexcelente

0.0 ~ 4.50.0 ~ 4.5 4.5 ~ 6.54.5 ~ 6.5

R1R1 R2R2

R1R1 = {4.5 ~ 6.5} = {4.5 ~ 6.5} pós-graduação pós-graduação ruim ruim

R2R2 = {4.5 ~ 6.5} = {4.5 ~ 6.5} graduação graduação regular regular

R1R1 = {4.5 ~ 6.5} = {4.5 ~ 6.5} pós-graduação pós-graduação ruim ruim

R2R2 = {4.5 ~ 6.5} = {4.5 ~ 6.5} graduação graduação regular regular