• Nenhum resultado encontrado

Data t Mi M ning : : Conceitos e Técnicas

N/A
N/A
Protected

Academic year: 2021

Share "Data t Mi M ning : : Conceitos e Técnicas"

Copied!
71
0
0

Texto

(1)

Data Mining:

Data Mining:

(2)

Algumas técnicas para Data Mining

Algumas técnicas para Data Mining

• Geração de regras de associação;

• Geração de regras de associação;

• Classificação e predição;

• Classificação e predição;

• Agrupamento (clustering).

• Agrupamento (clustering).

(3)

Data Mining:

Data Mining:

(4)

Regras de associação

Regras de associação

Mineração de associações ou de regras de

Mineração de associações ou de regras de

associação:

– Encontrara padrões freqüentes, associações, – Encontrara padrões freqüentes, associações,

correlações, ou estruturas causais a partir de conjuntos de itens ou objetos em DB de

transações, relacionais, ou em outros repositórios transações, relacionais, ou em outros repositórios de informações.

Aplicações:

Aplicações:

– Análise de cestas de dados (basket data),

marketing cruzado, projeto de catálogos, agrupamento, etc.

(5)

Regras de associação

Regras de associação

Exemplo:

Exemplo:

– Formato da regra:

“corpo => cabeça [suporte, confiança]”; “corpo => cabeça [suporte, confiança]”;

– compra(X, “fraldas”) => compra (X, “cerveja”)

(6)

Regras de associação

Regras de associação

Dados:

Dados:

1. Uma DB da transações;

2. Cada transação constituída de uma lista de itens 2. Cada transação constituída de uma lista de itens

(compras de um cliente);

Encontrar:

1. Todas as regras que correlacionam a presença

de um conjunto de itens com outro conjunto de itens.

itens.

2. Exemplo: 98 % das pessoas que compram

pneus e assessórios também compram sua instalação.

(7)

Regras de associação

Regras de associação

Aplicações:

Aplicações:

1. * => contratos de manutenção (o que fazer para

aumentar as vendas de contratos de aumentar as vendas de contratos de manutenção)

2. Eletrônicos => * (que outros produtos devem ser

estocados) estocados)

3. Indicativos em marketing direto;

4. Detecção de “ping-pong” de pacientes, 4. Detecção de “ping-pong” de pacientes,

(8)

Regras de associação

Regras de associação

Encontrar regras X & Y

Z com

suporte e confiança mínimos Customer

buys diaper

Customer buys both

suporte e confiança mínimos

– Suporte, s, é a probabilidade de

uma transação conter {X ∩ Y ∩ Z}

buys diaper

uma transação conter {X ∩ Y ∩ Z}

– Confiança, c, é a probabilidade

condicional da transação tendo {X ∩ Y} também conter Z

Customer

buys beer ∩ Y} também conter Z

Transação Itens

2000 A,B,C

Para um suporte mínimo de 50%, e confiança mínima de buys beer 2000 A,B,C 1000 A,C 4000 A,D 50%, e confiança mínima de 50%, tem-se: – A C (50%, 66.6%) – C A (50%, 100%) 5000 B,E,F – C A (50%, 100%)

(9)

Regras de associação

Regras de associação

Associações booleanas x quantitativas: conforme Associações booleanas x quantitativas: conforme

os valores manuseados:

– compra(X, “SQLServer”) ^ compra(X, “DMBook”)

=> compra(X, “DBMiner”) [0.2%, 60%] => compra(X, “DBMiner”) [0.2%, 60%]

– idade(Y, “30..39”) ^ renda(Y, “42..48K”) =>

compra(Y, “PC”) [1%, 75%] compra(Y, “PC”) [1%, 75%]

Associações uni e multi dimensionais;Análises uni e multi-níveis:

Análises uni e multi-níveis:

– Que marcas de cervejas estão associadas a

(10)

Regras de associação

Regras de associação

Varias extensões:Varias extensões:

– Correlação, análise causal:

• Associação não necessariamente implica em • Associação não necessariamente implica em

correlação ou causalidade;

– Padrões maximais e conjuntos fechados de itens;

Restrições forçadas:

– Restrições forçadas:

• E.g., pequenas vendas (valor < 100) disparam

grandes vendas (valor > 1000)? grandes vendas (valor > 1000)?

(11)

Regras de associação

Regras de associação

Algoritmo utilizado:

Algoritmo utilizado:

– APRIORI;

– Princípio: todo subconjunto de um conjunto – Princípio: todo subconjunto de um conjunto

freqüente de itens deve ser freqüente;

– Várias otimizações para melhoria da performance

computacional. computacional.

(12)

Regras de associação

-exemplo

exemplo

TID Items

Database D itemset sup.

{1} 2 itemset sup.{1} 2 C1 L1 TID Items 100 1 3 4 200 2 3 5 300 1 2 3 5 {1} 2 {2} 3 {3} 3 {4} 1 {1} 2 {2} 3 {3} 3 {5} 3 Scan D C1 300 1 2 3 5 400 2 5 {4} 1 {5} 3 {5} 3 itemset {1 2} itemset sup {1 2} 1 itemset sup L C2 C 2 Scan D {1 2} {1 3} {1 5} {2 3} {1 2} 1 {1 3} 2 {1 5} 1 {2 3} 2 itemset sup {1 3} 2 {2 3} 2 {2 5} 3 L2 Scan D {2 3} {2 5} {3 5} {2 3} 2 {2 5} 3 {3 5} 2 {2 5} 3 {3 5} 2

C itemset L itemset sup

C3 itemset L3

{2 3 5}

Scan D itemset sup {2 3 5} 2

(13)

Regras de associação

Regras de associação

Regras de associação multi-níveis:

Regras de associação multi-níveis:

– Pressupõe uma hierarquia;

Abordagem top-down progressiva;Abordagem top-down progressiva;

– Inicialmente: encontrar as regras “fortes” de alto

nível:

Leite => pão [20%, 60%]

• Leite => pão [20%, 60%]

– Em seguida, regras “fracas” de mais baixo nível:

• 2% leite => pão branco [6%, 50%] • 2% leite => pão branco [6%, 50%]

(14)

Sumário

Sumário

Mineração de regras de associação:

Mineração de regras de associação:

– Provavelmente a contribuição mais significativa da

comunidade de DB à KDD; comunidade de DB à KDD;

– Inúmeros trabalhos publicados;

Muitos pontos importantes explorados;

Direções de pesquisa:

– Análise de associações em outros tipos de dados:

espaciais, multimídia, temporais, etc. espaciais, multimídia, temporais, etc.

(15)

Aprendizagem supervisionada e

não supervisionada

não supervisionada

• Aprendizagem supervisionada (classificação) • Aprendizagem supervisionada (classificação)

– Supervisão: O conjunto de treinamento

(observações, medições, etc.) é acompanhado dos (observações, medições, etc.) é acompanhado dos rótulos indicativos das classes das observações; – Novos dados são classificados com base na

– Novos dados são classificados com base na estrutura gerada a partir do conjunto de

(16)

Aprendizagem supervisionada e

não supervisionada

não supervisionada

• Aprendizagem não supervisionada (agrupamento =

• Aprendizagem não supervisionada (agrupamento =

clustering)

– Os rótulos das classes no conjunto de treinamento – Os rótulos das classes no conjunto de treinamento

são desconhecidos;

– Dado um conjunto de medidas, observações, etc. o – Dado um conjunto de medidas, observações, etc. o

objetivo é estabelecer a existência de classes ou grupos nos dados.

(17)

Data Mining:

Data Mining:

(18)

Classificação e Predição

Classificação e Predição

• Classificação: • Classificação:

– Predição dos nomes (rótulos) das classes;

– Classifica os dados (constrói um modelo) com base no conjunto de treinamento e nos valores base no conjunto de treinamento e nos valores (rótulos) do atributo classificador, de forma a determinar a classe dos novos dados;

• Predição: • Predição:

– Modela funções sobre valores contínuos, i.e., prediz valores desconhecidos ou perdidos;

prediz valores desconhecidos ou perdidos;

• Aplicações típicas:

– Aprovação de crédito, marketing dirigido, diagnóstico médico ...

(19)

Classificação: um processo de

dois passos

dois passos

1. Construção do modelo: 1. Construção do modelo:

Descrição de um conjunto de um conjunto de classes pré-determinadas:

– Cada tupla (exemplo) é considerada como – Cada tupla (exemplo) é considerada como

pertencente a uma classe pré-definida,

determinada pelo rótulo de seu atributo-classe; – O conjunto de tuplas usado na construção do – O conjunto de tuplas usado na construção do

modelo é o conjunto de treinamento;

– O modelo pode ser representado por regras de classificação, árvores de decisão ou fórmulas – O modelo pode ser representado por regras de

classificação, árvores de decisão ou fórmulas matemáticas;

(20)

Classificação: um processo de

dois passos

dois passos

2. Uso do modelo: 2. Uso do modelo:

– Para a classificação futura ou de elementos desconhecidos;

– Correção estimada do modelo: – Correção estimada do modelo:

– Uso de conjunto de teste;

– O rótulo conhecido é comparado ao rótulo fornecido pelo modelo;

fornecido pelo modelo;

– O conjunto de teste deve ser diferente do conjunto de treinamento, de forma a evitar conjunto de treinamento, de forma a evitar

(21)

Classificação: passo 1

Classificação: passo 1

Classification Training Data Classification Algorithms Data

NA M E RAN K YEA RS TEN URED Classifier NA M E RAN K YEA RS TEN URED

M ike Assistant Prof 3 no M ary Assistant Prof 7 yes

Classifier (Model)

Bill Professor 2 yes Jim Associate Prof 7 yes

Dave Assistant Prof 6 no IF rank = ‘professor’

OR years > 6

Dave Assistant Prof 6 no

Anne Associate Prof 3 no OR years > 6

(22)

Classificação: passo 2

Classificação: passo 2

Classifier

Testing

Data Unseen Data

Data

NAM E RANK YEARS TENURED

(Jeff, Professor, 4)

NAM E RANK YEARS TENURED Tom Assistant Prof 2 no

M erlisa Associate Prof 7 no

Tenured?

G eorge Professor 5 yes Joseph Assistant Prof 7 yes

(23)

Preparação do dados

Preparação do dados

• Limpeza dos dados: • Limpeza dos dados:

– Pré-processamento dos dados para reduzir o ruído e tratar valores desconhecidos;

e tratar valores desconhecidos;

• Análise de relevância (seleção de características):

– Remoção de atributos irrelevantes ou redundantes; – Remoção de atributos irrelevantes ou redundantes;

• Transformação de dados:

– Generalização e normalização dos dados. – Generalização e normalização dos dados.

(24)

Avaliação da classificação

Avaliação da classificação

• Correção preditiva; • Correção preditiva;

• Performance e escalabilidade;

– Construção do modelo e seu uso; – Construção do modelo e seu uso;

• Robustez:

– Manuseio de dados ruidosos e incompletos; – Manuseio de dados ruidosos e incompletos;

• Interpretabilidade:

– Compreensão oferecida pelo modelo; – Compreensão oferecida pelo modelo;

• Utilidade das regras:

– Tamanho, facilidade de leitura, etc. – Tamanho, facilidade de leitura, etc.

(25)

Árvores de decisão

Árvores de decisão

(26)

Classificação por árvore de

decisão

decisão

• Árvores de decisão:

• Árvores de decisão:

– Estrutura do tipo “fluxograma”;

– Nós internos denotam testes em atributos;

– Nós internos denotam testes em atributos;

– Ramos representam saídas dos testes;

(27)

Classificação por árvore de

decisão

decisão

Construção da árvore:

1. No início, todos os exemplos de treinamento são associados à raiz;

2. Os exemplos são particionados com base nos 2. Os exemplos são particionados com base nos

atributos selecionados;

3. Poda da árvore: ramos que refletem desvios e/ou 3. Poda da árvore: ramos que refletem desvios e/ou

ruído são eliminados;

Uso da árvore de decisão:

Uso da árvore de decisão:

– Os valores dos atributos do novo exemplo são testados diretamente na árvore atingindo o nó testados diretamente na árvore atingindo o nó folha da classe correspondente.

(28)

Exemplo: árvore de decisão

Exemplo: árvore de decisão

age income student credit_rating buys_computer

Exemplo:

<=30age highincome studentno faircredit_rating buys_computerno

<=30 high no excellent no

31…40 high no fair yes

Exemplo:

ID3 de

Quinlan

31…40 high>40 medium nono fairfair yesyes

>40 low yes fair yes

>40 low yes excellent no

Quinlan

31…40 low yes excellent yes

<=30 medium no fair no

<=30 low yes fair yes

>40 medium yes fair yes

>40 medium yes fair yes

<=30 medium yes excellent yes

31…40 medium no excellent yes

31…40 high yes fair yes

31…40 high yes fair yes

(29)

Exemplo: árvore de decisão

Exemplo: árvore de decisão

age? age?

overcast

<=30 overcast30..40 >40

student? credit rating?

<=30 >40

yes

30..40

student? credit rating?

no yes excellent fair

yes

no yes excellent fair

no yes no yes

(30)

Exemplo: árvore de decisão

Exemplo: árvore de decisão

Ordem dos atributos: ganho de informação (página 70/421 do Mitchell)...

70/421 do Mitchell)...

Representação por regras IF-THEN:

– Uma regra para cada caminho da raiz à folha; – Cada par (atributo, valor) forma uma conjunção; – Cada folha determina a classe prevista;

Regras são de mais fácil compreensão aos

Regras são de mais fácil compreensão aos usuários:

IF age = “<=30” AND student = “no” IF age = “<=30” AND student = “no”

THEN buys_computer = “no”

IF age = “>40” AND credit_rating = “excellent” THEN buys_computer = “yes”

(31)
(32)

Classificador bayesiano

Classificador bayesiano

Aprendizagem probabilista: cálculo da

probabilidade explícita da hipótese, de ampla probabilidade explícita da hipótese, de ampla aplicação em vários domínios;

Incremental:

Incremental:

– cada exemplo de treinamento pode aumentar / diminuir a probabilidade da hipótese;

– Conhecimento a priori pode ser combinado com os – Conhecimento a priori pode ser combinado com os

dados observados;

Previsão probabilista:

Previsão probabilista:

– Várias hipótese podem ser previstas, ponderadas por suas probabilidades;

– Fornece uma referência a ser comparada a outros métodos.

(33)

Classificador bayesiano

Classificador bayesiano

Fundamento: Teorema de Bayes;

• Dado um conjunto de treinamento D, a probabilidade • Dado um conjunto de treinamento D, a probabilidade

a posteriori de uma hipótese h, P(h|D) é dada por:

)

(

)

|

(

D

h

P

h

P

)

(

)

(

)

|

(

)

|

(

D

P

h

P

h

D

P

D

h

P

=

• A probabilidade máxima a posteriori MAP é:

.

)

(

)

|

(

max

arg

)

|

(

max

arg

P

D

h

P

h

H

h

D

h

P

H

h

MAP

h

=

• Dificuldade prática: requer conhecimento inicial de muitas probabilidades, custo computacional elevado;

H

h

H

h

MAP

muitas probabilidades, custo computacional elevado; • Simplificação: independência dos atributos.

(34)

Exemplo: jogar ou não tênis ?

Exemplo: jogar ou não tênis ?

Outlook Temperature Humidity W indy Class sunny hot high false N

sunny hot high true N

outlook

P(sunny|p) = 2/9 P(sunny|n) = 3/5

sunny hot high true N

overcast hot high false P rain mild high false P rain cool normal false P rain cool normal true N overcast cool normal true P

P(sunny|p) = 2/9 P(sunny|n) = 3/5 P(overcast|p) = 4/9 P(overcast|n) = 0 P(rain|p) = 3/9 P(rain|n) = 2/5 temperature

overcast cool normal true P sunny mild high false N sunny cool normal false P rain mild normal false P sunny mild normal true P overcast mild high true P

temperature

P(hot|p) = 2/9 P(hot|n) = 2/5 P(mild|p) = 4/9 P(mild|n) = 2/5

overcast mild high true P overcast hot normal false P

rain mild high true N

P(mild|p) = 4/9 P(mild|n) = 2/5 P(cool|p) = 3/9 P(cool|n) = 1/5 humidity P(high|p) = 3/9 P(high|n) = 4/5 P(normal|p) = 6/9 P(normal|n) = 2/5 windy P(p) = 9/14 P(n) = 5/14 windy P(true|p) = 3/9 P(true|n) = 3/5 P(false|p) = 6/9 P(false|n) = 2/5 P(n) = 5/14

(35)

Exemplo: jogar ou não tênis ?

Exemplo: jogar ou não tênis ?

• Um novo exemplo: X = <rain, hot, high, false> • P(X|p)·P(p) = P(rain|p)·P(hot|p)·P(high|p)·P(false|p)·P(p) = P(rain|p)·P(hot|p)·P(high|p)·P(false|p)·P(p) = 3/9·2/9·3/9·6/9·9/14 = 0.010582 • P(X|n)·P(n) = P(rain|n)·P(hot|n)·P(high|n)·P(false|n)·P(n) = 2/5·2/5·4/5·2/5·5/14 = 0.018286

• O exemplo X é classificado como da classe n (não jogar).

(36)

Redes Neurais

Redes Neurais

(37)

Redes Neurais

Redes Neurais

Vantagens:

• Correção de predição em geral elevada; • Correção de predição em geral elevada;

• Robustez, bom funcionamento na presença de ruídos;

ruídos;

• Saídas discretas, reais, ou mistas;

• Avaliação rápida da função de aprendizagem. • Avaliação rápida da função de aprendizagem.

Desvantagens / crítica:

• Tempo de treinamento lento;

• Dificuldade no entendimento da função de aprendizagem (pesos);

• Difícil incorporação de conhecimento de domínio. • Difícil incorporação de conhecimento de domínio.

(38)

Um neurônio

Um neurônio

µ

k

-

µ

k

-f

w0 w1 x0 x1

f

output y

w1 wn x1 xn weighted sum Input vector x Activation function weight vector w sum

vector x vector w function

• Um vetor n-dimensional x de entrada é mapeado em uma variável y por meio de um produto escalar e de um uma variável y por meio de um produto escalar e de um mapeamento não-linear.

(39)

Rede perceptron multi-camadas

Rede perceptron multi-camadas

Output vector Output nodes Output vector jk k k j j j O O Err w Err = (1− )

Err l) ( + =

θ

θ

i j ij ij w l Err O w = +( ) j j j =

θ

+ (l)Err

θ

Hidden nodes wij O = 1 ) )( 1 ( j j j j j O O T O Err = − − Input nodes wij

+ = i j i ij j w O I

θ

j I j e O + = 1 Input vector: xi i

(40)

Rede perceptron multi-camadas

Rede perceptron multi-camadas

Treinamento:

• Obtenção dos pesos que tornam a maior parte das • Obtenção dos pesos que tornam a maior parte das

tuplas no conjunto de treinamento corretamente classificadas;

Passos:

• Inicialização randômica dos pesos;

• Alimentação da rede pelas tuplas, uma a uma; • Alimentação da rede pelas tuplas, uma a uma; • Para cada unidade:

– Computar a entrada da rede à unidade como combinação linear das entradas da unidade;

linear das entradas da unidade;

– Computar a saída em função dos pesos e da função de ativação;

– Calcular o erro; – Calcular o erro;

(41)

Aprendizagem baseada em

Aprendizagem baseada em

instâncias:

K-vizinhos mais próximos

K-vizinhos mais próximos

(42)

K-vizinhos mais próximos

K-vizinhos mais próximos

Aprendizagem baseada em instâncias (IBL):

• Armazenamento dos exemplos de

• Armazenamento dos exemplos de

treinamento (avaliação preguiçosa = “lazy

evaluation”) até que a nova instância deva

evaluation”) até que a nova instância deva

ser classificada;

K-vizinhos mais próximos:

K-vizinhos mais próximos:

• Algoritmo mais utilizado em IBL;

• As instâncias são associadas a pontos no

• As instâncias são associadas a pontos no

espaço euclidiano;

• Métrica de distância para selecionar os

vizinhos.

(43)

K-vizinhos mais próximos (k-NN)

K-vizinhos mais próximos (k-NN)

• Todas as instâncias correspondem a pontos

no espaço n- dimensional;

no espaço n- dimensional;

• Os vizinhos mais próximos são usualmente

definidos em função da distância euclidiana;

definidos em função da distância euclidiana;

• A função objetivo (classe) pode ser discreta

ou real;

ou real;

• Para os casos discretos o k-NN retorna a

classe mais comum entre as classes dos k

classe mais comum entre as classes dos k

vizinhos mais próximos à nova instância;

(44)

K-vizinhos mais próximos (k-NN)

K-vizinhos mais próximos (k-NN)

• Diagrama de Voronoi: descreve a superfície

de decisão induzida;

de decisão induzida;

• No exemplo a seguir, um caso típico para

1-NN

NN

_ _ _

.

. _ + _ xq _ _ + +

.

.

.

.

.

+ _

.

(45)

Predição

Predição

Similar à classificação no caso em que o

atributo “classe” é contínuo;

atributo “classe” é contínuo;

Etapas:

• Construção do modelo;

• Construção do modelo;

• Uso do modelo para predizer um valor

desconhecido:

desconhecido:

– O método mais utilizado é a regressão: • Regressão linear e múltipla;

(46)

Sumário

Sumário

• Classificação é provavelmente uma das técnicas mais utilizadas de data mining, com muitas possibilidades de utilizadas de data mining, com muitas possibilidades de aplicação;

• É uma problema extensivamente estudado, • É uma problema extensivamente estudado,

especialmente com o uso de análise estatística, aprendizagem de máquina e redes neurais;

• A escalabilidade é muito importante em aplicações de • A escalabilidade é muito importante em aplicações de

DB: o uso conjunto de de classificação e técnicas de DB é uma área promissora de estudos;

• Muitas novas áreas podem ser vislubradas:

classificação de dados não-relacionais, e.g. textuais, espaciais, multimídia, etc.

(47)

Data Mining:

Data Mining:

(48)

Agrupamento (clustering)

Agrupamento (clustering)

Cluster: uma coleção de objetos de dados;

• Similares entre si no mesmo cluster; • Similares entre si no mesmo cluster;

• Não similares aos objetos fora do respectivo cluster;

Análise de clusters: Análise de clusters:

• Agrupamento de dados em clusters;

Agrupamento (clustering) é uma classificação

não-supervisionada: não há classes pré-definidas. supervisionada: não há classes pré-definidas.

Aplicações típicas:

• Como ferramenta para análise da distribuição dos • Como ferramenta para análise da distribuição dos

dados;

(49)

Aplicações gerais do agrupamento

Aplicações gerais do agrupamento

• Reconhecimento de padrões;

• Análise de dados espaciais:

• Análise de dados espaciais:

– Criação de mapas temáticos em GIS por agrupamento de espaços de características; agrupamento de espaços de características;

– Detecção de clusters espaciais e sua explanação em data mining;

• Processamento de imagens;

• Processamento de imagens;

• Pesquisas de mercado;

• WWW:

• WWW:

– Classificação de documentos;

– Agrupamento de dados de weblogs para descobrir – Agrupamento de dados de weblogs para descobrir

(50)

Exemplos de aplicações

Exemplos de aplicações

• Marketing: ajuda na descoberta de grupos distintos de clientes, e uso deste conhecimento para criar

de clientes, e uso deste conhecimento para criar campanhas dirigidas;

• Uso de terras: identificação de áreas de uso similar a partir de uma base de observação via satélite;

a partir de uma base de observação via satélite; • Seguros: identificação de grupos de assegurados

com alto custo de sinistro; com alto custo de sinistro;

• Planejamento urbano: identificação de grupos de casa de acordo com seu tipo, valor e localização geográfica;

geográfica;

• Estudos sobre terremotos: identificação de

epicentros e seu agrupamento ao longo de falhas geológicas.

(51)

O que é um bom clustering ?

O que é um bom clustering ?

• Um bom método de agrupamento (clustering)

deve produzir clusters de qualidade com: deve produzir clusters de qualidade com:

– Alta similaridade intra-classe; – Baixa similaridade inter-classes. – Baixa similaridade inter-classes.

• A qualidade do resultado de um processo de

clustering depende da medida de similaridade,

do método utilizado e de sua implementação; do método utilizado e de sua implementação;

• A qualidade um um processo de clustering

também deve ser avaliada pela sua habilidade de também deve ser avaliada pela sua habilidade de descobrir alguns ou todos os padrões

(52)

Requisitos do clustering

Requisitos do clustering

• Escalabilidade;

• Habilidade de tratar diferentes tipos de atributos; • Habilidade de tratar diferentes tipos de atributos; • Descoberta de clusters de formas arbitrárias;

• Requisitos mínimos de conhecimento de domínio • Requisitos mínimos de conhecimento de domínio

para determinar parâmetros de entrada;

• Habilidade para tratar ruído e desvios;

• Insensibilidade à ordem de entrada dos registros; • Insensibilidade à ordem de entrada dos registros; • Alta dimensionalidade;

• Incorporação de restrições específicas dos • Incorporação de restrições específicas dos

usuários;

(53)

Estruturas de dados

Estruturas de dados

  1p x ... 1f x ... 11 x

• Matriz de dados

– (dois modos)          ip x ... if x ... i1 x ... ... ... ... ... 1p x ... 1f x ... 11 x          xn1 ... xnf ... xnp ... ... ... ... ... ip if i1

• Matriz de

     0 d(2,1) 0

• Matriz de

• dissimilaridade

– (um modo)            ( ,1) ( ,2) ... 0 : : : ) 2 , 3 ( ) ... n d n d 0 d d(3,1 0 d(2,1) – (um modo) d(n,1) d(n,2) ... ... 0

(54)

Medida da qualidade do cluster

Medida da qualidade do cluster

• Métrica de similaridade / dissimilaridade:

expressa em termos de função de distância

d(i, j)

expressa em termos de função de distância

d(i, j)

• Existe uma função de “qualidade” que é uma

medida da “adequação” de um cluster;

• Existem definições de funções de distância que

são diferentes para variáveis intervalares, booleanas, categóricas e proporções;

booleanas, categóricas e proporções;

• Pesos devem ser associados às variáveis

baseados na aplicação e na semântica dos dados;

dados;

• É difícil definir “suficientemente similar”, pois

(55)

Tipos de dados em clustering

Tipos de dados em clustering

• Variáveis intervalares;

• Variáveis binárias;

• Variáveis binárias;

• Variáveis nominais, ordinais, e

• Variáveis nominais, ordinais, e

proporções;

(56)

Similaridade entre objetos: distâncias

Similaridade entre objetos: distâncias

• Distância típica: de Minkowski;

q q q q j x i x j x i x j x i x j i d( , )= (| − | +| − | +...+| − | ) – Onde

i = (x

i1

, x

i2

, …, x

ip

)

e

j = (x

j1

, x

j2

, …, x

jp

)

p p x j i x j x i x j x i x j i d( , ) (| | | | ... | | ) 2 2 1 1− + − + + − = – Onde

i = (x

i1

, x

i2

, …, x

ip

)

e

j = (x

j1

, x

j2

, …, x

jp

)

são vetores p-dimensionais e q é um inteiro positivo.

(57)

Similaridade entre objetos: distâncias

Similaridade entre objetos: distâncias

• q =1: distância de Manhattan: | | ... | | | | ) , ( 2 2 1 1 xj xi xj xip xjp i x j i d = − + − + + − • q =2: distância euclidiana: ) | | ... | | | (| ) , ( 2 2 2 2 2 1 1 x j xi x j xip x jp i x j i d = − + − + + −

(58)

Principais abordagens para o

agrupamento

agrupamento

• Algoritmos de partição: construção de diversas partições e sua avaliação por algum critério;

partições e sua avaliação por algum critério; • Algoritmos hierárquicos: criação de uma

decomposição hierárquica do conjunto de dados usando algum critério;

usando algum critério;

• Algoritmos fundamentados em densidade:

utilização funções de densidade e de conectividade; utilização funções de densidade e de conectividade; • Algoritmos baseados em grades (grids): utilizam

uma estrutura de múltiplos níveis;

• Algoritmos baseados em modelos: utilizam um • Algoritmos baseados em modelos: utilizam um

modelo subjacente à cada cluster e a idéia é a de se encontrar a melhor assinalação dos objetos aos

modelos. modelos.

(59)

O método k-means (k-médias)

O método k-means (k-médias)

Dado k, o algoritmo k-means é

implementado em quatro passos:

implementado em quatro passos:

1. Partição dos objetos em k conjuntos não vazios; 2. Cálculo de pontos “semente” como os centróides 2. Cálculo de pontos “semente” como os centróides

(médias) dos clusters das partições correntes; 3. Assinalação de cada objeto ao cluster

3. Assinalação de cada objeto ao cluster

(centróide) mais próximo de acordo com a função de distância;

4. Retorno ao passo 2 até que não haja mais 4. Retorno ao passo 2 até que não haja mais

(60)

O método k-means

O método k-means

• Exemplo 6 7 8 9 10 6 7 8 9 10 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 9 10 9 10 2 3 4 5 6 7 8 2 3 4 5 6 7 8 0 1 2 0 1 2 3 4 5 6 7 8 9 10 0 1 2 0 1 2 3 4 5 6 7 8 9 10

(61)

O método k-means (k-médias)

O método k-means (k-médias)

Vantagens:

Relativamente eficiente O ( t k n) onde n é o Relativamente eficiente O ( t k n) onde n é o

número de objetos, t é o número de iterações e k de clusters;

• Em geral determina o ótimo local: para obtenção do ótimo global usam-se outros métodos de busca,

como têmpera simulada ou algoritmos genéticos; como têmpera simulada ou algoritmos genéticos;

Deficiências:

• Como utilizar em dados categóricos;

Necessita que se especifique o número de clusters;Necessita que se especifique o número de clusters; • Não trata ruídos e desvios;

Não descobre clusters de forma não-convexa.Não descobre clusters de forma não-convexa.

(62)

O clustering hierárquico

O clustering hierárquico

Usa a matriz de distância como critério de

agrupamento; não pré-determina o número de agrupamento; não pré-determina o número de

clusters, mas necessita critério de parada. Step 0 Step 1 Step 2 Step 3 Step 4

a a b aglomerativo b c a a b c d e a b c d e d c e d e c d e divisivo e

Step 4 Step 3 Step 2 Step 1 Step 0

(63)

O clustering hierárquico bottom-up

O clustering hierárquico bottom-up

• AGNES (Agglomerative Nesting), Kaufmann and Rousseeuw (1990);

Rousseeuw (1990);

• Agrupa (merge) nós de menor dissimilaridade, de maneira bottom-up. maneira bottom-up. 9 10 9 10 9 10 3 4 5 6 7 8 9 3 4 5 6 7 8 9 3 4 5 6 7 8 9 0 1 2 0 1 2 3 4 5 6 7 8 9 10 0 1 2 0 1 2 3 4 5 6 7 8 9 10 0 1 2 0 1 2 3 4 5 6 7 8 9 10

(64)

O clustering hierárquico top-down

O clustering hierárquico top-down

• DIANA (Divisive Analysis), Kaufmann and Rousseeuw (1990);

Rousseeuw (1990);

• Divide os nós de maior dissimilaridade, de maneira

top-down. top-down.

• Ordem inversa do AGNES.

8 9 10 9 10 8 9 10 2 3 4 5 6 7 8 2 3 4 5 6 7 8 2 3 4 5 6 7 8 0 1 0 1 2 3 4 5 6 7 8 9 10 0 1 2 0 1 2 3 4 5 6 7 8 9 10 0 1 0 1 2 3 4 5 6 7 8 9 10

(65)

O clustering hierárquico

O clustering hierárquico

Maior desvantagem dos métodos de clustering

aglomerativo:

aglomerativo:

Pouca escalabilidade: complexidade O(n

2

),

onde n é o número de objetos;

onde n é o número de objetos;

Não refaz o que foi feito previamente (no

nível anterior).

(66)

Detecção de desvios (outliers)

Detecção de desvios (outliers)

O que são desvios ?

– Um conjunto de objetos muito diferente (dissimilar) ao restante dos dados;

Problema:

Problema:

Determinar os n maiores desvios;

Aplicações:

Aplicações:

– Detecção de fraudes em cartões de crédito; – Detecção de fraudes telefônicas;

– Detecção de fraudes telefônicas; – Segmentação de clientes;

– Análise médica. – Análise médica.

(67)

Método estatístico

para a detecção

para a detecção

de desvios

• Assume a existência de uma distribuição para a • Assume a existência de uma distribuição para a

geração dos dados (e.g. distribuição normal); • Uso de testes de discordância dependendo da:

– Distribuição de dados; – Distribuição de dados;

– Distribuição de parâmetros (média, variância...); – Número esperado de desvios;

• Problemas: • Problemas:

– A maior parte dos testes é para um só atributo; – Em muitos casos a distribuição é desconhecida. – Em muitos casos a distribuição é desconhecida.

(68)

Método para a detecção de desvios

baseado em distâncias

baseado em distâncias

Introduzidos para sobrepujar as limitações

dos métodos estatísticos:

dos métodos estatísticos:

– Necessidade de análise multi-dimensional sem conhecer a distribuição dos dados.

conhecer a distribuição dos dados.

Detecção de desvios baseada em distâncias:

um DB(p,D)-desvio é um objeto O em um

um DB(p,D)-desvio é um objeto O em um

conjunto de dados T tal que pelo menos

uma fração p dos objetos em T está a uma

uma fração p dos objetos em T está a uma

distância maior que D de O.

Vários algoritmos disponíveis.

Vários algoritmos disponíveis.

(69)

Sumário

Sumário

Análise de agrupamento (clustering) gera grupos de objetos com base em sua similaridade e tem

objetos com base em sua similaridade e tem inúmeras aplicações;

• A medida de similaridade pode ser calculada sobre • A medida de similaridade pode ser calculada sobre

diferentes tipos de dados;

Há vários tipos de algoritmos de clustering: particionamento, hierárquicos, etc.

particionamento, hierárquicos, etc.

Exemplos: k-means, clustering hierárquico;

• Detecção de desvios: é muito útil para a detecção • Detecção de desvios: é muito útil para a detecção

de fraudes e pode ser realizada por métodos estatísticos e baseados em distâncias.

(70)

Avaliação

Avaliação

Estudo de caso;

Estudo de caso;

Relatório escrito de procedimento de

data-mining:

data-mining:

1. Descrição do problema alvo;

2. Objetivos da tarefa, caracterização;

2. Objetivos da tarefa, caracterização;

3. Indicativos do pré-processamento;

(71)

Avaliação

Avaliação

4. Criação de base de teste;

5. Aplicação do algoritmo selecionado na

base;

6. Avaliação dos resultados;

Referências

Documentos relacionados

visam o ensino de habilidades de compreensão e de produção de textos orais e escritos e o desenvolvimento da competência comunicativa, na proposta curricular da instituição

Analisando-se os resultados, observou-se que, logo na primeira avaliação aos 8 dias de armazenamento, em ambiente refrigerado, o tratamento testemunha já

O Regulamento de Inspeção Industrial e Sanitária de Produtos de Origem Animal do Ministério da Agricultura, Pecuária e Abastecimento – MAPA (BRASIL,

Segundo Marcon (2000), os investimentos públicos em infra-estrutura viária, como a construção da Via de Contorno Norte e a inclusão dos bairros da Trindade, Itacorubi, Santa

[r]

(2011) em estudo que avaliou a qualidade da dieta em indivíduos exposto e não exposto a um programa de reeducação alimentar mostrou que pessoas com

Os Autores dispõem de 20 dias para submeter a nova versão revista do manuscrito, contemplando as modifica- ções recomendadas pelos peritos e pelo Conselho Editorial. Quando

Contudo, não é possível imaginar que essas formas de pensar e agir, tanto a orientada à Sustentabilidade quanto a tradicional cartesiana, se fomentariam nos indivíduos