Beruflich Dokumente
Kultur Dokumente
O que ?
De forma bastante sinttica, pode-se dizer que
Minerao de Dados (Data Mining) se relaciona ao
processo de transformar dados brutos em
conhecimento.
conhecimento.
Como?
Extraindo padres e construindo modelos a partir
dos conjuntos de dados disponveis para descobrir
conhecimento novo e til.
til
Pr-processamento.
Data Mining (DM) ou Minerao de Dados
(MD).
Ps-processamento.
agora
para
O que crime?
O que imoral?
O que normal?
Regras Convencionais
Regras Quantitativas
Regras em Taxonomias
?
2 ocorrncias, em 5 transaes:
Suporte = 40%
?
2 ocorrncias, em 5 transaes:
Suporte = 40%
?
3 ocorrncias, em 5 transaes:
Suporte = 60%
80%
80%
60%
60%
60%
60%
80%
80%
60%
60%
60%
60%
80%
80%
60%
60%
60%
60%
3 transaes contm Gelatina.
Dessas, 3 contm gelatina e leite:
Confiana = 100%
Relao
dos
itens
comprados por transao
Clculo de suporte
conjuntoconjunto-dede-1-item
para
Exemplo:
elemento
Exemplo:
Suponha que voc gerente de uma grande loja e disponha de um
banco de dados de clientes, contendo informaes tais como
nome, idade, renda mensal, profisso e se comprou ou no
produtos eletrnicos na loja. Voc est querendo enviar um
material de propaganda pelo correio a seus clientes, descrevendo
novos produtos eletrnicos e preos promocionais de alguns
destes produtos. Para no fazer despesas inteis voc gostaria de
enviar este material publicitrio apenas a clientes que sejam
potenciais compradores de material eletrnico.
Outro ponto importante: voc gostaria de, a partir do banco de
dados de clientes de que dispe no momento, desenvolver um
mtodo que lhe permita saber que tipo de atributos de um cliente
o tornam um potencial comprador de produtos eletrnicos e aplicar
este mtodo no futuro, para os novos clientes que entraro no
banco de dados.
Exemplo:
Isto , a partir do banco de dados que voc tem hoje, voc quer
descobrir regras que classificam os clientes em duas classes : os
que compram produtos eletrnicos e os que no compram. Que
tipos de atributos de clientes (idade, renda mensal, profisso)
influenciam na colocao de um cliente numa ou noutra classe ?
Uma vez tendo estas regras de classificao de clientes, voc
gostaria de utiliz-las no futuro para classificar novos clientes de
sua loja.
Por exemplo: regras que voc poderia descobrir seriam :
Se idade est entre 30 e 40 e a renda mensal Alta ento
ClasseProdEletr = Sim.
Sim.
Se idade est entre 60 e 70 ento ClasseProdEletr = No.
No.
Quando um novo cliente Joo, com idade de 35 anos e renda mensal
Alta e que tenha comprado Celular, catalogado no banco de
dados, o seu classificador lhe diz que este cliente um potencial
comprador de aparelhos eletrnicos. Este cliente colocado na
classe ClasseProdEletr = Sim, mesmo que ele ainda no tenha
comprado nenhum produto eletrnico.
eletrnico.
rvore de Deciso
ou
rvore de Classificao.
rvore de Deciso
Ou
Classificao
Regras
de
classificao
obtidas a partir da rvore de
deciso:
deciso:
Resposta: B
Resposta: B
Estatstica de Kappa
Erros absolutos
Erros quadrticos
Matriz de confuso
Contm informaes muito importantes para o
entendimento do resultado do algoritmo, dentre elas:
a quantidade de instncias classificadas corretamente;
a quantidade de instncias classificadas erroneamente;
a quantidade de instncias que o algoritmo acreditava ser
de um tipo e na verdade foram classificadas como outro,
por exemplo:
Matriz de confuso
possvel analisar que:
- dos 15 exemplos (1linha), 12 foram classificados corretamente
como eleito, 3 foram classificados erroneamente como suplente;
- dos 3 exemplos (2linha), 1 foi classificado erroneamente como
eleito e 2 foram classificados erroneamente como suplente;
- dos 4 exemplos (3linha), 4 foram classificados erroneamente
como suplente;
- dos 101 exemplos (4linha), 100 foram classificados de forma
correta.
Matriz de confuso
Mas como chegou-se ao numero das
instncias classificadas corretamente
e erroneamente no exemplo acima?
Para isso, basta analisar o quadro
abaixo, no qual a somatria dos
valores, que fazem parte da diagonal
marcada como azul, representam os
valores classificados como corretos e
os demais valores somados em suas
respectivas diagonais, correspondem
aos
valores
classificados
erroneamente.
Obviamente,
na
somatria dos valores errados, devese excluir os valores que fazem
interseco com a linha em azul.
65
Dado um conjunto de
objetos, colocar os objetos em
grupos baseados na
similaridade entre eles
Inerentemente um
problema no definido
claramente
Dado um conjunto de
objetos, colocar os objetos em
grupos baseados na
similaridade entre eles
Inerentemente um
problema no definido
claramente
Com bico
Sem bico
Dado um conjunto de
objetos, colocar os objetos em
grupos baseados na
similaridade entre eles
Inerentemente um
problema no definido
claramente
gua
Terra
Dado um conjunto de
objetos, colocar os objetos em
grupos baseados na
similaridade entre eles
Inerentemente um
problema no definido
claramente
Ave
Mamfero
Distncias intracluster so
minimizadas
Distncias entre
cluster so
maximizadas
Reconhecimento de padres:
Anlise de dados espaciais:
Processamento de imagens;
Pesquisa de mercado;
WWW:
classificao de documentos;
Agrupamento de dados de weblogs, redes sociais para
descobrir padres similares de informaes;
Sumarizao
Reduzir o tamanho de grandes conjuntos de dados
Quantos clusters?
Seis Clusters
Dois Clusters
Quatro Clusters
Clusterizao
dificuldades
Encontrar o melhor agrupamento para um
conjunto de objetos no uma tarefa simples, a
no ser que n (nmero de objetos) e k (nmero
de clusters) sejam extremamente pequenos,
visto que o nmero de parties distintas em
que podemos dividir n objetos em k clusters
aproximadamente
kn/k!
Ex. k=2 e n=5 ento so 16 formas de dividir 5
elementos em 2 grupos.
73
Clusterizao
dificuldades
Porque
efetividade
dos
algoritmos
de
Clustering um problema:
1. Quase todos os algoritmos de Clustering
requerem valores para os parmetros de
entrada que so difceis de determinar,
especialmente para conjuntos de dados do
mundo real contendo objetos com muitos
atributos.
74
Clusterizao
dificuldades
2. Os algoritmos so muito sensveis a estes
valores
de
parmetros,
freqentemente
significativamente
pouco
diferentes.
3. Conjuntos de dados reais de alta dimenso
(muitos atributos) tm uma distribuio
muito ampla o que dificulta a anlise.
75
Clusterizao
representaes de dados
A entrada para um algoritmo de clusterizao
normalmente um vetor (tuple ou record).
Os tipos de dados podem ser: numrico, de
categoria ou boleano
Numa clnica mdica, por exemplo pode-se
encontrar
dados
como:
Idade
(numrico),
76
Clusterizao
medidas de similaridade
As medidas de similaridade fornecem
valores
numricos que expressam a
distncia entre dois objetos.
Quanto menor o valor desta distncia, mais
semelhantes sero os objetos, e tendero a
ficar no mesmo cluster.
Quanto maior a distncia, menos similares
sero os objetos e, em conseqncia, eles
devero estar em grupos distintos.
77
Clusterizao
medidas de similaridade
Uma funo de distncia deve ser tal que:
no assuma valores negativos (o menor valor 0);
ser simtrica (a distncia do objeto i ao j tem que ser
igual distncia do objeto j ao i);
fornea o valor 0 quando calculada a distncia do
objeto a si mesmo ou quando dois objetos so
idnticos;
respeite a desigualdade triangular, (dados 3 objetos, a
distncia entre dois deles tem que ser menor ou igual
a soma das distncias entre esses dois objetos e o
terceiro).
Clusterizao
medidas de similaridade
Distncia
Euclidiana
d ( x, y ) = ( x1 y1 ) + ( x2 y2 ) + ... + ( x p y p )
2
d ( x, y ) = x1 y1 + x2 y2 + ... + x p y p
Realizando uma analogia entre a diferena entre essas duas distncias, vamos imaginar
uma a rota de GPS para dois veculos, uma para um carro e outra para um helicptero. A
Distncia Euclidiana seria o segmento de uma reta na qual indicaria uma possvel rota
de helicptero (na qual no haveria preocupao com as ruas j que um veculo areo,
e geometricamente seria a hipotenusa de um tringulo) e a Distncia Manhattan seria
um segmento de retas na vertical quanto na horizontal semelhante a uma rota de carro
(j que esse obedece o sentido das ruas, e devido esse comportamento essa medida
de distncia tambm conhecida como City Block, e geometricamente seriam a soma
dos catetos).
Clusterizao
medidas de similaridade
No h uma medida de similaridade que sirva
para todos os tipos de variveis que podem
existir numa base de dados.
Variveis numricas:
A medida que normalmente usada para
computar as dissimilaridades de objetos
descritos por variveis numricas a
Distancia Euclidiana
A normalizao faz com que todas as variveis tenham um peso igual. A
normalizao deve ser efetuada para todos os atributos.
80
o
o
o
o
o
o
o
Item
A
B
C
D
Variveis
x1
5
-1
1
-3
x2
3
1
-2
-2
Passo 1
Determina-se os centrides iniciais (normalmente
pega-se ao acaso k pontos (registros): por exemplo os
registros A e B),
Variveis
isto :
C1(1) = (5,3)
C2(1) = (-1,1)
Item
A
B
C
D
x1
5
-1
1
-3
x2
3
1
-2
-2
Passo 2:
Calcula-se as distncias de cada ponto
centrides, para definir os cluster iniciais.
Os clusters so:
C1 = {A}
C2 = {B,C,D}
Pois C e D esto mais
perto de B do que de A
aos
C1(2)= (5,3)
C2(2)=
Item
A
B
C
D
Variveis
x1
5
-1
1
-3
x2
3
1
-2
-2
2.5
Pontos originais
1.5
0.5
0
-2
-1.5
-1
-0.5
0.5
1.5
2.5
2.5
1.5
1.5
0.5
0.5
-2
-1.5
-1
-0.5
0.5
1.5
Particionamento timo
-2
-1.5
-1
-0.5
0.5
1.5
Particionamento sub-timo
Iteration 6
1
2
3
4
5
3
2.5
1.5
0.5
0
-2
-1.5
-1
-0.5
0.5
1.5
Iteration 1
Iteration 2
Iteration 3
2.5
2.5
2.5
1.5
1.5
1.5
0.5
0.5
0.5
-2
-1.5
-1
-0.5
0.5
1.5
-2
-1.5
-1
-0.5
0.5
1.5
-2
Iteration 4
Iteration 5
2.5
1.5
1.5
1.5
0.5
0.5
0.5
-0.5
0.5
1.5
0.5
1.5
1.5
2.5
2.5
-1
-0.5
Iteration 6
-1.5
-1
-2
-1.5
-2
-1.5
-1
-0.5
0.5
1.5
-2
-1.5
-1
-0.5
0.5
SSE = dist 2 ( mi , x )
i =1 xCi
Iteration 5
1
2
3
4
3
2.5
1.5
0.5
0
-2
-1.5
-1
-0.5
0.5
1.5
Iteration 2
2.5
2.5
1.5
1.5
0.5
0.5
-2
-1.5
-1
-0.5
0.5
1.5
-2
-1.5
-1
-0.5
0.5
Iteration 3
2.5
1.5
1.5
1.5
2.5
2.5
0.5
0.5
0.5
-1
-0.5
0.5
Iteration 5
-1.5
1.5
Iteration 4
-2
1.5
-2
-1.5
-1
-0.5
0.5
1.5
-2
-1.5
-1
-0.5
0.5
1.5
Iteration 4
1
2
3
8
6
4
2
0
-2
-4
-6
0
10
15
20
x
Iniciando com dois centrides em um cluster para cada par de clusters
Iteration 2
8
Iteration 1
8
-2
-2
-4
-4
-6
-6
0
10
15
20
-2
-4
-4
-6
-6
15
20
-2
10
20
Iteration 4
8
Iteration 3
15
10
15
20
10
Iteration 4
1
2
3
8
6
4
2
0
-2
-4
-6
0
10
15
20
x
Iniciando com um par de clusters tendo 3 centrides iniciais e outro par com somente um.
Iteration 2
8
Iteration 1
8
-2
-2
-4
-4
-6
-6
0
10
15
20
-2
-4
-4
-6
-6
5
10
15
20
15
20
-2
10
x
Iteration
4
x
Iteration
3
15
20
10
Iniciando com um par de clusters tendo 3 centrides iniciais e outro par com somente um.
Pr-processamento
Normalize os dados
Elimine excees (outliers)
Ps-processamento
outliers
Divida clusters fracos i.e., clusters com SSE
relativamente alto
Junte clusters que esto perto e que tenham SSE
relativamente baixo
K-mdias
tm
Tamanhos diferentes
Densidades diferentes
Formato no esfrico
K-mdias
Pontos originais
K-mdias (3 Clusters)
pontos originais
K-mdias (3 Clusters)
Pontos originais
K-mdias (2 Clusters)
Pontos originais
Clusters do K-mdias
Pontos originais
clusters do K-mdias
Pontos originais
clusters do K-mdias