Você está na página 1de 28

Descoberta de Conhecimento

em Bases de Dados por


Algoritmos Genticos

Prof. Marco Aurlio C. Pacheco

1
Descoberta do Conhecimento
em Bases de Dados

Processo interativo e iterativo


para identificar padres vlidos,
novos, potencialmente teis e
interpretveis em bases de dados.
2
Descoberta do Conhecimento
em Bancos de Dados
1. Empresas armazenam dados operacionais
continuamente.
2. Bases de Dados podem conter informaes
importantes e desconhecidas.
3. O conhecimento til normalmente est oculto
em relaes complexas, difceis de ser
descobertas. 3
Aplicaes:
Conhecendo o Negcio
Conhecer Comportamento do Consumidor
Enriquecimento de Bases de Dados
Segmentao de Mercado em Classes de
Consumidores (cluster)
Anlise de Vendas
Deteco de Fraude e de Inadimplncia
Conhecer um processo, um equipamento, um
fenmeno etc, a partir de dados observados
4
Processo de Descoberta do
Conhecimento - Fases
Interpretao
Conhecimento
Data Mining

Padres

Transformao

Pr-Processamento

Seleo
Bases
Dados
5
Fases do Processo de
Descoberta do Conhecimento
Identificao da tarefa - O que se deseja conhecer/extrair?
Seleo de dados - Dados e/ou atributos relacionados.
Limpeza, Pr-Processamento - Retirada de dados
ambguos, duplicados, etc.

Enriquecimento - Agregar informao externa.


Minerao dos dados - Extrair regras, agrupar.
Relatrio - Histrico, concluses, informaes relevantes, etc.
6
Principais Tarefas em
Minerao de Dados
Clusterizao
Agrupamento: Segmentar registros de um BD em N clusters (grupos,
classes)

Diferenciao
Regras que diferenciam os registros de um cluster em relao a outros
clusters

Classificao
Identificar a priori o cluster (grupo) ao qual pertence um registro (cliente) a
partir de seus atributos

Explicao
Regras que explicam/caracterizao um conjunto de registros pertencentes
a um cluster (classe)
7
Regras de Produo
Regras possuem:
antecedentes (condies) e
conseqentes (classe, grupo ou cluster):

SE COND1 E COND2 E... ENTO CLASSE_A


Condies relacionam valores dos atributos:
Atributos Quantitativos: idade, salrio, etc
Atributos Categricos: Sexo, Estado Civil, etc
Relaes: <, >, =. Exemplo:
SE salrio>3000 E sexo=M ENTO Consumidor classe A
8
Minerao
Inferir uma Regra descobrir condies (atributos,
valores/categorias) que satisfazem a uma classe
Classificar um novo cliente presumir a classe a
qual pertence um novo cliente
Agrupar clientes identificar classes por
semelhana de suas caractersticas
Explicar inferir regras com acurcia que abranjam
todos os elementos de uma classe

9
Deteco de Fraude

Regra que explica sinistros fraudados

SE 02:00hs< hora_sinistro < 05:30hs E


oficina oficinas_suspeitas E
prmio_seguro < R$ 1300 E
registro_policial = NO E
...........
custo_sinistro > R$ 10.000,00

ENTO FRAUDE 10
Avaliao de uma Regra
Acurcia:
mede grau de certeza (ou confiana) obtido ao
contrastar a regra com o conjunto de exemplos da
base que pertencem e no pertencem classe;
Ac Mx = 100%
Abrangncia:
mede o grau de cobertura da regra: percentual
de registros da classe que satisfazem a regra;
Ab Mx = 100% 11
Medidas de Desempenho
A avaliao de cada regra envolve a leitura de toda a base.
Numa base h:
C: Registros que satisfazem a regra;
P: Registros que pertencem classe;
C & P: nmero de registros que satisfazem a regra e so da classe P

C&P C&P
Ac
C &P C & P Ab
C &P C & P
12
Exemplo
BD contm 100 Registros
Registros esto segmentados em 2 Grupos:
80 regs. do G1 e 20 regs. do G2)
Procura-se regras para G1 (P pertence a G1)
Uma determinada regra encontrada, resulta em:
60 Registros satisfazem a regra e so do G1 C & P
20 Registros do G1 no satisfazem a regra C & P
12 Registros do G2 satisfazem a regra
C & P

60 60
Ac 0.833 Ab 0.75
60 12 60 20
13
Classificao por Algoritmos
Genticos
Conhece-se a segmentao de um BD em n
Grupos (clusters) ; deseja-se descobrir a(s)
regra(s) que melhor caracterizam cada
Grupo.

As regras podem se usadas para


classificar outros registros que ainda
no tenham sido segmentados.
14
Modelagem do GA
Deseja-se um GA que evolua Regras
Representao
Decodificao
Operadores
Medidas de Desempenho
Avaliao

15
Cromossoma representa
uma Regra
Regras :=antecedentes + consequentes
Se COND1 ^ COND2 ^...ENTO CLASSE_A

Exemplo:
Se 200<salrio<3000 ^ sexo=M ENTO Bom-Pagador

Evoluir Regra Encontrar regra com alta Ac e Ab


Escolher atributos que faro parte da regra
Descobrir faixa de valores para atributos quantitativos
Descobrir conjunto de categorias para os categricos
16
Representao
Atrib(1) Atrib(2) Atrib(n)
............
Gene

Cada Atributo representado por um gene

Atributos podem ser: Gene


Quantitativos (faixas
( de valores) lim_inf lim_sup

Categricos (cdigo) cdigo categoria

17
Decodificao
Um cromossoma representa uma regra que
responde a uma pergunta:
Ex: O que caracteriza um estudante da PUC-Rio?
Atributos considerados:
A(1): Idade {15; 90}, A(2) Renda Familiar {200;8000}, A(3): Sexo{M=01; F=10}

Exemplo de um A(1) A(2) A(3)


cromossoma:
18 25 3000 8000 M ou F= 11

A(1), A(2) so Quantitativos e A(3) Categrico

Se 18 Idade 25 e 3000 Renda 8000 e Sexo = M ou F


ento Estuda na PUC 18
Exemplo: Classificao de
Empresas
Deseja-se identificar padres de empresas (j agrupadas)
em um BD
Exemplo: A regra abaixo esclarece qual o padro das
empresas do Cluster 1 (Prioritrias)?
Se receita_servio 1 (Instalao) = 5000<R$<7000 &
receita_servio 2 (Manuteno) = 7000<R$<8000 &
cdigo_atividade = 13 (Ind. Mat.Eltrico Eletrnico e Comunicao) &
10 < #_Filiais < 50 &
...........
#_Empregados > 100

Ento Empresa pertence ao Cluster 1(Prioritrias) 19


Cromossoma Regra
Genes atributos do banco de dados
cruzamento

Receita Servio 1 Receita Servio 2


P1 1000<R$<2000 4000<R$<9000
COD_ATIV = 13 10<#_Filiais<50 Empregados>100

Receita Servio 1 Receita Servio 2


P2 5000<R$<7000 7000<R$<8000
COD_ATIV = 14 30<#_Filiais<60 Empregados>300

Receita Servio 1 Receita Servio 2


F1 1000<R$<2000 4000<R$<9000
COD_ATIV = 14 30<#_Filiais<60 Empregados>300

Receita Servio 1 Receita Servio 2


F2 5000<R$<7000 7000<R$<8000
COD_ATIV = 13 10<#_Filiais<50 Empregados>100
20
Operadores

Crossover
Sobre Reais: 1 ponto; 2 pontos; Uniforme;
Aritmtico
Sobre Binrios (Lgicos): OU, E
Mutao
Troca gene por um nmero aleatrio na faixa
do atributo escolhido na mutao
Sobre Binrios (Lgicos): NOT

21
Codificao de Atributos
Categricos
- Ex: Residncia: = {funcional, parente, alugada, prpria}
- Cada posio indica ausncia (0) ou presena (1) do
smbolo correspondente
Alelo Decodificao Tipo Res
1 0001 prpria
2 0010 alugada
3 0011 prpria ou alugada

15 1111 prpria ou alugada ou parente ou
funcional (dont care)
0 0000 No informada (Null) 22
Operadores Lgicos
E, OU, NOT

P1 0011 F1 0111 F1 = P1 OU P2
P2 0110 F2 0010 F2 = P1 E P2

P 0011 F 1100 NOT P

23
Funo de Avaliao
Data Mining: regras com alta acurcia e abrangncia.
Acurcia (Ac) e Abrangncia (Ab), quando usadas
como funes de avaliao, podem prejudicar a
evoluo se regras aleatrias na primeira populao
apresentam Ac=Ab=0
preciso definir funes que forneam avaliaes
diferentes de 0 (zero) quando Ac=Ab=0
Existem vrias funes propostas, cujo o desempenho
varia com a aplicao (problema)
Ac e Ab podem recompensar avaliao quando
diferentes de zero
24
Funes de Avaliao
Nmero-Atributos FAcurcia
Distncia-tima FAbrangncia
Recompensa- Correlao-2-Grupos
Atributos Rule-Interest[PIAT91]
CBayesianos Chi-Square[RAD95]
Nmero-Registros

25
Exemplo Funo
Nmero-Atributos
Atributos
Registros 1 2 3 4 5 CLASSE F(Nm_Atrib)
1 a b x d r 1 3
2 s w c d e 2 -3
3 q b c d e 1 4
4 x f g h e 1 1
5 a b c d r 2 -4
6 a t c y e 1 3
7 p b v d y 2 -2
8 x h j k u 2 0
9 a b c d e 1 5
10 a b z d q 1 3

REGRA a b c d e 1 12 Avaliao

Regra evoluda para classe 1


26
Evoluo de Regras por
Algoritmo Gentico
Avaliao Planejamento Cromossoma Aptido
dos Filhos Regra A 86% Seleo
Regra B 44%
Regra C 69%
Regra D 7%

f(f( )=acerto%
)=acerto%
Cruzamento

Filhos
Mutao Reproduo
27
Otimizao da Acurcia da
Regra
Melhor Padro

30000
A c ur c ia

100%
25000

20000

50%
15000

10000

5000

0
13

21

29

41

49
17

25

33
37

45
1
5
9

Cromossomas x 2000

Evoluo 28

Você também pode gostar