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

Post on 03-Jan-2016

30 views 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 of 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

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.

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.

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.

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

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

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

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

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.

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.

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

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;

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

SET 2003 14

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

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

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

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

SET 2003 16

Espaço de Regras

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

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

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

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

SET 2003 21

Geração das Regras

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

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

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

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

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

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.

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

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

SET 2003 28

Cronograma

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

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

Modelo funcional

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

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)

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

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.

SET 2003 35

Geração de Hierarquias Numéricas

10

10 ~ 60

25 40 605327 33

53 ~ 60

33 ~ 6010 ~ 27

33 ~ 4025 ~ 27

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)

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.

FIMFIM

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

Hierarquia entre valores do atributo

província região paísProvíncia

ABBCMBSK

ONQC

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

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