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) 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
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
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
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
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 F F F 1 . relacoes entre atributos de um BD (não considera valores de atributos) (hierarquia entre atributos) 2. relacoes entre valores de um mesmo atributo (hierarquia dentro da mesma coluna) 3.. relacoes entre valores processados) de um mesmo atributo (hierarquia dentro da mesma coluna) 4. relacoes entre diferentes atributos e seus valores (hierarquia entre colunas) F SET 2003
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. SET 2003
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
Medidas de Relevância - sem hierarquia Definição 1 um 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 2 uma regra classifica corretamente uma tupla do BD se a tupla for coberta pela regra e pertencer à classe da regra. SET 2003
Medidas de Relevância - com hierarquia Definição 3 um 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 4 uma 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
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
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
Cálculo do Suporte e Confiança (cont.) Classes Tuplas por valor de atributo Atributo valor SET 2003 Tuplas por classe
Cálculo do Suporte e Confiança (cont.) Suporte: p / P => T11 / T+1 Confiança: p / (p + n) => T11 / T1+ SET 2003
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
Espaço de Regras SET 2003
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
Problema de Busca SET 2003
Especialização de Hipóteses de Regras Se (A1,v1) (A2, v2) ... (Ai, vi) então cn especialização na hierarquia adição de par Av Se (A1,v1) (A2, v2) ... (Ai, v’i) então cn Se (A1,v1) ...(Ai, vi) (Ai+1, vi+1) então cn uso de hierarquias de conceitos SET 2003
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 falha nó SELECIONE(nós) se TESTA-META(nó) então armazena nó senão nós INSERE-LISTA (nós, EXPANDA(nó)) fim SET 2003
Geração das Regras R’: cor = escura R’1: cor = escura forma = achatada R’2: cor = preta SET 2003
Geração das Regras Propriedade o número de tuplas cobertas por uma regra mais específica é menor ou igual ao número de tuplas cobertas pela regra mais geral. SET 2003
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
Poda no Espaço de Regras X X X X X X SET 2003
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
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
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
Cronograma SET 2003
Algoritmo de Busca 1. gerar as hierarquias numéricas 2. gerar as listas de co-ocorrências 3. 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
Propagando a contagem de tuplas pela Hierarquia QUALQUER 57 escura 30 clara 27 Av3 : amarela Av4 : branca Av1: preta Av2 : marrom T41 = 17 T21 = 9 T11 = 21 T31 = 10 Atributo A = cor Classe = C1 SET 2003
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
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
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
Geração de Hierarquias Numéricas 10 ~ 60 10 ~ 27 33 ~ 60 53 ~ 60 25 ~ 27 33 ~ 40 10 25 27 33 40 53 60 SET 2003
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
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. SET 2003
FIM
rua bairro cidade estado Hierarquia de Esquema G rua bairro cidade estado estado cidade bairro rua
Hierarquia entre valores do atributo G província região país Western
Hierarquia entre valores do atributo 10000 - 75000 G 40000 - 75000 10000 - 40000 40000 - 55000 55000 - 75000 10000 - 25000 25000 - 40000 SET 2003
Hierarquia condicional qualquer G forte fraco ruim regular muito bom excelente R1 R2 0.0 ~ 4.5 4.5 ~ 6.5 R1 = {4.5 ~ 6.5} pós-graduação ruim R2 = {4.5 ~ 6.5} graduação regular