Introdução A Mineração de Dados

February 24, 2023 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download Introdução A Mineração de Dados...

Description

 

Prof. Msc. Eduardo Siqueira Martins

 



 O que é? ◦

  De forma rma bast bastan ante te si sin ntéti téticca, pode pode-se dize dizerr que Mineração de Dados (Data Mining) se relaciona ao processo de transformar   d ados brutos brutos   em dados conhecimento. conhecimento.



 Como? ◦

 Extraindo padrões  Extraindo  padrões padrões e padrões  e construindo construindo modelos  modelos modelos a modelos  a partir dos conjuntos de dados disponíveis para descobrir  novo novo e novo  e útil  útil útil.. útil conhecimento novo conhecimento

 



 Por que fazer? ◦





  Por necessidade:   ccrescimento resc re scim imeento explosivo expl plo osi sivvo   da quantidade de dados coletada, armazenada e disponível nas últimas décadas  Mas o que fazer com estes dados? Como lidar com eles?   Estamos afogados em dados e carentes de co conhecimento, conh nhec ecim imen ento to,, possuímos.

entendimento ente en tend ndim imen ento to   do dos

dados

que

 



  Por que é importante? ◦





 Muito do que se desenvolve hoje é orientado por hipóteses.  Nos processos científicos, os pesquisadores partem de uma hipótese, projetam experimentos, coletam dados, geram resultados (novos dados) e analisam e  analisam analisam estes dados chegando a   conclusões   que validam, refutam ou reformulam suas hipóteses.  Na indústria e nos negócios, também é comum o cenário onde dados onde dados dados são dados  são coletados e analisados e analisados analisados para analisados  para se validar ou refutar hipóteses levantadas acerca de clientes, produtos, fornecedores etc e, a partir daí, tirar conclusões tirar  conclusões conclusões e conclusões  e tomar decisões tomar decisões decisões gerenciais. decisões  gerenciais.

 

 Pré-processamento.    Data Mining (DM) ou Mineração de Dados (MD). 



 Pós-processamento.

 





  Ok, que tal uma definição agora para organizar o que vimos?  Processo  Processo automático  automático automático de automático  de descoberta de novas info in form rmaç açõe ões s e co conh nhec ecim imen ento to,,   úteisde novas   a novas uma aplicação, no formato de   regras padrões, regras e padrões padrões, esucaonntiddiaddaes,s deem   dados geral,, esetm q dados, eja mgrandes estes armazenados em bancos de dados tradi tradiciona cionais, is, em Data Warehouse ou em outr outraa forma de repositório.

 



 Mineração de Dados: confluência de múltiplas disciplinas.

 



  A utilização de Data Mining agilizando empresas.

 



  Quem compra tal produto?

 



  A pesquisa de padrões nas doenças de vários pacientes e suas relações com o tratamento e resultados.

 

  Traçar perfis de eestudantes. studantes.    Melhorar a inter interação. ação.    Verificar necessidade de mudanças 



 Entre outras.

 





  As redes sociais geram um tipo de informação que pode ser chamado de Mídia Social.  A empresa dos poconsumidores d er á monito rar redes o comportamento nas sociais e se comunicar com eles pelas redes e também celulares.pelas plataformas móveis, como os

 



  Por um lado a mineração de dados sobre nossos perfis e gostos pode nos trazer comodidades no dia a dia (as empresas sabem o que você quer, por exemplo), mas até que ponto isso não é invasão de privacidade?

 

 O que é crime?   O que é imoral?   O que é normal? 

 

  Venda de bancos de dados contento informações privadas. Mais comuns:





 Informações Criminais  Informações Trabalhistas  Informações Crediticias





 





  Mesmo não constituindo crime, é comum as empresas visitarem os perfis dos usuários usuários em redes sociais para verificar sua conduta.  eliminação Isso as vezes utilizado como forma de eméentrevistas.

 

  Pesquisa de usuários por interesse pessoal.    Ex: Procurar alguém que conheceu em uma festa. 

 



 Bases Bases de Dados Relacionais

 Data Data Warehousings (Base Multidimensional)   Bases Bases de Dados Transacionais    Streams de dados e dados de sensores    Dados de séries temporais e sequenciais    Dados estruturais, grafos, redes sociais 



  Bases de dados Objeto-Relac Objeto-Relacionais ionais   Bases Bases de Dados heterogêneas    Dados espaciais e espaço-temporais    Multimídia, texto texto,, Web   Etc.

 

 



  Grandes quantidad quantidades es de dados.   lidar Al Algo gori ritm tmos os deve de vem m se ser r al alta tame ment nte e esca es calá láve veis is pa para ra com quantidades como tera-bytes de dados.   Alta

dimensionalidade

de

dados

e

alta

complexidade de dados. redundâncias dundâncias de variá variáveis. veis.    Conflitos semânticos, re    Processamento em tempo real.  Estruturas de dados complexas, como multigrafos, supergrafos etc.   Heterogeneidade da origem de dados e bases de 

dados legadas.   Fontes de dados não estruturas e subjetivas, como texto. 

 Etc.  



  engenharia Todo esse e canálise enário prévia pode de dedados. mandar tarefas de



 Atividades obtidos. valiosas para a qualidade dos resultados



 Esta custoetapa de demanda um proceassmaior o de parte KDD,doenesforço tre coleetado r, integrar, processar, transformar, enriquecer, p adronizar etc e preparar os dados para a mineração.

 



  Regras Convencionais



  Regras Quantitativas



  Regras em Taxonomias



  Regras de Associação Negativas

 

Repres Repr esen enta ta um pa padr drão ão de re rela laci cion onam amen ento to ent ntre re itens de dados do domínio da aplicação que ocorre com uma determinada frequência na base de dados (transacional).

Exemplo de base de dados transacional

 

Regras de associação “se X, então Y”), onde: são da forma {X} => {Y} (lê-se: ◦





  Signi Signifi fica ca que, com um cert certo o grau grau de cert certez eza, a, que se uma transação da base de dados inclui os itens de um conjunto X, então inclui também os itens do conjunto Y.   X é o antecedente antecedente e Y o consequente da reg regra. ra.   Cond Condiç ições: ões: os conj conjunt untos os X e Y não podem podem ser vaz vazios ios e ter interseções, além de conter somente itens do domínio de aplicação.

 





  As regras de associação possuem medidas de inte in tere ress ssee qu quee in indi dica cam m su suaa re rele levâ vân nci ciaa e va vali lida dad de. Exemplo: modelo suporte/confiança.   No mode modelo lo supor suporte/con te/confiança fiança,, o grau de certe certeza za de uma regra é definido por dois índices: ◦

  Fator de suporte suporte::  porcentagem das transações da base de dados que contêm os itens de X e os item de Y;





  Fator de confiança: confiança:  porcentagem das transações da base de confiança dados que contêm os itens de X e de Y, dentre aquelas transações que contêm os itens de X.   Exemplo Exemplo:: extr ex ext xtra trai rair air irr re regr regra gras ass d uma uma b aas ase se de de co comp mpra rass com com extrair regras dee um base compras

suporte mínimo de 50% 50% e confiança mínima de 80% 80%. %.  

Quais conjuntos de mais um item têm suporte suport e mínimo 50% % na base de dados ? de 50

? 2 ocorrências, em 5 transações: Suporte = 40%

 

Quais conjuntos de mais um item têm suporte suport e mínimo 50% % na base de dados ? de 50

? 2 ocorrências, em 5 transações: Suporte = 40%

? 3 ocorrências, em 5 transações: Suporte = 60%

 

Quais conjuntos de mais um item têm suporte suport e mínimo 50% % na base de dados ? de 50 80% 80%

60% 60%

60% 60%

 

regras podem ser estabelecidas aQuais partirregr dosasconjuntos frequentes, que tenham confiança mínima de 80% 80% ?

80% 80%

60% 60%

60% 60%

 

regra podem ser estabelecidas aQuais partirregras dos sconjuntos frequentes, que tenham confiança mínima de 80% 80% ?

 

regras podem ser estabelecidas aQuais partirregr dosasconjuntos frequentes, que tenham confiança mínima de 80% 80% ?

80% 80% 5 transações contém Leite. Dessas, 3 contém leite e gelatina: 60% 60%

Confiança = 60%

60% 60% 3 transações contém Gelatina. Dessas, 3 contém gelatina e leite:

Confiança = 100%  

São utilizadas quando se deseja minerar padrões em bases de dados relacionais (formadas por atributos quantitativos e atributos categóricos).

Exemplo (base de dados sobre a AIDS): Esta regra hipotética indica, com certo grau de certeza, que pacientes com AIDS, heterossexuais, entre 20 e 30 anos, do sexo

masculino são usuários de drogas.  





  está entre os 10 algoritmos de MD mais utilizados na comunidade acadêmica.  Satisfaz o suporte mínimo definido pelo usuário e é o mais utilizado para geração dos conjuntos de itens frequentes.

 



  sejam X e Y dois conjuntos de itens quaisquer. Se X for frequente, então qualquer subconjunto Y estive igual équefrestiver equenrtecontido . Se Xemnã(ou o ffor or igua freqlua) enXtetambém , então qualquer subconjunto Y que contive verr (ou for

igual a) X também não é frequente. frequente.   Esta regra é utilizada para reduzir o número de ctransação. andidatos a serem comparados com cada

 



  iNa primeira feito cálculo cada temprime seira paréadfeit amoenotecálcul (coondo juntsuporte o-de-1-para itemcad ) ea depois selecionado os itens que satisfazem o supo su port rtee mí míni nimo mo pre reeesta tab bele elecido cido,, fo form rmaand ndo o os conjuntos-de-1-item frequentes.   Na segunda ocorre a geração dos conjuntos-de2-i -ittens pela ju jun nção dos conju jun ntos-de-1-item frequentes encontrados na etapa anterior. É feito o cálculo do suporte e comparado ao suporte mínimo e assim é formado o conjunto-de-2-itens frequentes. O algoritmo continua esse processo, até que o conjunto-de-k-itens frequentes seja um conjunto vazio.

 





  Relação Relação d os itens itens dos comprados por transação

  Suporte 50para % ra   Cálculo Cálculo mínimo d upo up upde orte50% par pa dee ssuporte ◦

conjunto-de de-1 -1 1--item item conjunto-de

 



  Suporte de-de 50   Geraçãomínimo do conjunto-50% de-% 1 1-item frequentes -item conjunto de-1 ◦

 



  Suporte 50conjunto50% %   Cálculo mínimo de suportede para -de-de -2 2-itens -itens conjunto de-2 ◦



  Geração do conjunto-de-2 2-itens frequentes -itens conjunto-de de-2

 



  Suporte mínimo de 50% 50% ◦

  Cálculo de suporte para conjunto-de-3 3-itens -itens conjunto-de de-3

 



  Ipertence dentificaçaãpartir o dadecsuas lasse características. a qual um elemento



 Exemplo: ◦



 Classificar cada veículo em popular ou de luxo conforme os seus opcionais tais como: preço, número de portas, itens de série, cilindrada, tipo de câmbio.  Classificar um indivíduo a partir de suas características e det eter ermi mina narr a que que clas classe se soc socia iall el elee pert erten ence ce com omo, o, por exemplo A, B, C, D ou E.

 



 Exemplo: ◦



 Suponha de, uma grande eaçõe disponha banc ba nco o deque dado davocê doss édegerente cl clie ient ntes es, cont conten endo do info inloja form rmaç õess tais tais de como coum mo nome, idade ade, renda mensal, pro profi fisssão e se comprou ou não prod pr odut utos os el elet etrô rôn nicos cos na loj oja. a. Você Você está está quer queren endo do envi enviar ar um material de propaganda pelo correio a seus clientes, descrevendo novo no voss prod produt utos os el elet etrô rôni nico coss e preç preços os prom promoc ocio iona nais is de algu alguns ns destes produtos. Para não fazer despesas inúteis você gostaria de envi en viaar este este mate materi rial al publ ublic icit itár áriio apen apenas as a cli cliente entess que que seja ejam potenciais compradores de material eletrônico.  Outro ponto importante: você gostaria de, a partir do banco de dados de clientes de que dispõe no momento, desenvolver um método que lhe permita saber que tipo de atributos de um cliente o tornam um potencial comprador de produtos eletrônicos e aplicar este método no futuro, para os novos clientes que entrarão 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 eletrônicos e os que não compram. Que tipo tiposs de at atri ribu buto toss de cl clie ient ntes es (i (ida dade de,, rend rendaa mens mensal al,, prof profis issã são) o) influenciam na colocação de um cliente numa ou noutra classe ?   gostaria Uma vez Uma vezdete tend ndo o esta estass no re regr gras as depara clas classi sifi fica caçã ção o de clie client ntes es,, você vode cê utilizá-las futuro classificar novos clientes sua loja.   Por exemplo: regras que que você poderia descobrir descobrir seriam : 





  Se idad idade id adee es está tá = entre entr en tree 30 renda rend renda en nda da a me mensal mens nsal al é ‘Alta ‘Alta’ ‘A ‘Alt lta’ a’’ então en entã tão o ClasseProdEletr ‘Sim’. . e 40 e a re ‘Sim’   Se idade está entre 60 e 70 então ClasseProdEletr = ‘Não’. ‘Não’.   Quando um novo novo cliente João, com idade idade de 35 anos e renda mensal mensal ‘Alta’ comprado é catalogado no banco de dados,eoque seu tenha classificador lhe Celular, diz que este cliente é um potencial comp co mpra rado dorr de apar aparel elho hoss elet eletrô rôni nico cos. s. Es Este te cl clie ient ntee é colo coloca cado do na classe clas se ClasseP ClasseProdE rodElet letrr = ‘Si ‘Sim’, m’,   me mesm smo o que que ele ele ai aind ndaa nã não o tenha tenh te nhaa mesmo ainda comprado nenhum produto eletrônico eletrônico..

 

Classificação é um processo que é realizado em três etapas : 1. 1. Etapa da criação do modelo de classificação. classificação. Este modelo é constituído de regras que permitem classificar as tuplas do banco de dados dentro de um número de classes pré-determinado. Este modelo é são criado a partirdede um banco de dados de treinamento cujos elementos chamados amostras ou exemplos. Ex:

 

1. 1. Etapa da criação do modelo de classificação. classificação. Ex:

Esta et Esta etap apaa ta tamb mbéém é cha chamada mada de Et Etap apaa de Apre Aprend ndiz izad ado o : atra atravé véss de técnic icaas especiais de aprend endizado apli apliccadas no banc nco o de dado dadoss de treinamento, um modelo de classificação é criado e as seguintes regras de classificação podem ser produzidas : (a) Se idade = 41..50 e Renda = Media-Alta então ClasseProdEletr = Sim. (b) Se Renda = Baixa então ClasseProdEletr = Não.

 

2. 2. Etapa da verificação do modelo ou Etapa de Classificação As regr regras as são sãodotes tebanco stada tadassdesobr so bree um outr outro o banc banco ochamado de da dado dos, s, banco co comp mple leta tame ment ntee independente dados de treinamento, de de dados de testes. A modelo medida emdotermos da conseguem porcentagemclassificar de tuplas de do forma banco dequalidade dados dedo testes queé as regras modelo satisfatória. É claro que se as regras forem testadas no próprio banco de dados de treinamento, elas terão alta probabilidade de estarem corretas, uma vez que este banco foi usado para extraí-las. Por isso a necessidade de um banco de dados completamente novo. As tuplas (1), (2), (3) não são bem classificadas pelo modelo. As tuplas o são. Logo, o grau de (4),(5),(6) acertos (accuracy) do modelo é de 50%. Caso este grau de acertos for considerado bom, podee-sse passar para a etapa seguinte.

 

3. 3. Etapa da utilização do modelo em novos dados Após o modelo ter sido aprovado nos testes da etapa anterior, anterior, ele é aplicado aplicado em novos dados.

 

Mais adia Mais adiante nte vamo vamoss estu estuda darr al algu guns ns méto método doss de class classif ifica icaçã ção. o. Tais Tais méto método doss podem ser comparados e avaliados de acordo com os seguintes critérios: 1. O grau de acertos (accuracy) : este critério refere-se a capacidade do modelo em classificar corretamente as tuplas do banco de dados de testes. 2. Rapidez : refere-se ao tempo gasto no processo de classificação. 3. Robustez : refere-se à habilidade do modelo em fazer uma classificação correta mesmo em presença de ruídos ou valores desconhecidos em alguns campos dos registros. 4. Escalabilidade : refere-se à eficiência do processo de aprendizado (construção do modelo) em presença de grandes volumes de dados de treinamento. 5. Interpretabilidade : refere-se ao nível de entendimento que o modelo fornece, isto é, o quanto as regras fornecid idaas são entendidas pelos usuário ioss do

classificador.  

Os seguintes passos de pré-processamento podem ser aplicados aos dados a fim de aumentar a qualidade (accuracy), eficiência e escalabilidade do processo de classificação: 1. 1. Limpeza Limpeza dos dados dados: remover ruídos e resolver problemas de tuplas com valores desconhecidos, por exemplo, substituindo estes valores pelos valores mais correntes do atributo correspondente, ou o valor mais provável, baseado em estatís ísttic icaa. Este passo ajuda a re red duzir po posssível confusão durante o aprendizado. 2. 2. Análise Análise de Relevância Relevância: Relevância: Alguns atributos podem ser totalmente irrelevantes para a tarefa de classificação. Por exemplo, a informação sobre telefone e e-mail doss clie do client ntes es não não inf influ luên ênccia sua cl clas asssif ific icaação ção em “Co Comp mprrador ador de Pr Prod odut uto o Eletrônico” ou “Não comprador de Produto Eletrônico". Assim, é importante se fazer uma análise prévia de quais atributos realmente são essenciais para a tarefa de classificação.

 

Os seguintes passos de pré-processamento podem ser aplicados aos dados a fim de aumentar a qualidade (accuracy), eficiência e escalabilidade do processo de classificação: Categorização : Atributos que assumem uma grande variedade de valores, podem ser agrupados em algumas poucas categorias. Por exemplo, a renda mensal do cliente pode ser agrupada em 4 categorias : Baixa, Média, Média-Alta e Alta. A idade do cliente também pode ser agrupada em faixas etárias : =< 20, 21..30, > 60, etc. Generalização Generalização: atributos, por maiis geral C:IDA ma IDCertos ADE. A ssim, aocomo invésRUA, de podem registraser r a substituídos rua onde m oraum o atributo cli lieente nte, simplesmente registra-se a cidade. Normalização: Normalização: Certos dados também podem ser normalizados, sobretudo quando se utiliza, no processo de aprendizado métodos envolvendo medidas de distância. A normalização envolve escalonar os valores de um atributo de modo que fiquem compreendido compre endidoss dentro de um intervalo intervalo pequeno, por exemplo exemplo [-1,1] ou [0,1]. Nestes métodos, isto evitaria que atributos com valores com um grande espectro de variação (por exemplo, renda mensal) tenham preponderância sobre atributos com um baixo

espectro de variação (atributos com valores binários, por exemplo).  

É construída do topo para a base, o atributo mais significativo, ou seja, o mais generalizado, quando comparado a outros atributos do conjunto, é considerado raiz da árvore. Na sequência da construção, o próximo nó da árvore será o segundo atributo mais significativo, e, assim, sucessivamente, até gerar o nó folha, que representa o atributo alvo da instância.

 

Uma árvore de decisão é uma estrutura de árvore onde : 

 cada nó interno é um atributo do banco de dados de amostras, diferente do atributo-classe,



  as folhas são valores do atributo-classe,





  cada ramo ligando um n nó-filho ó-filho a um nó-pai é etiqueta etiquetado do com um valor do atributo cont ntiido no nó-p ó-pai. Exi Existem tant ntos os ramos quantos valores possíveis para este atributo.  um atributo que aparece num nó não pode aparecer em seus nós

descendentes.  

Árvore de Decisão ou Árvore de Classificaç Classificação. ão. Classificaçã o.



 A tier ntdoe, um treipnaarm exatrabi-assee doe modelo de classificação (por

exemplo: árvore de decisão).  

Árvore de Decisão Ou Classificação

R egras d classificação classificação Regras dee obtidas a partir da árvore de decisão: decisão:

 

A que classe pertence  João, 38 anos, Doutor em Genética, que trabalha como co mo pe pesq squi uisa sado dorr nu numa ma universidade e tem salário de R$5100,00? B Resposta: B Resposta: B

 

A que classe pertence  João, 38 anos, Doutor em Genética, que trabalha como co mo pe pesq squi uisa sado dorr nu numa ma universidade e tem salário de R$5100,00? B Resposta: B Resposta: B

 

Spossa erão entender feitas eralgcomo umasosodado bserv rva ões mpaser ra analisados que vocês entend dados saçpode podem analisado ou interp rpre reta tad dos no Weka. Tais resulta ultad dos for oraam obtidos atraJ48 vés que datrabalha aplicaçcom ão árvore do algde ordecisão. itmo de classificação Se Será rá ística ana nali sad aspa,in inst stâ ânc nci co corr rreeticos ta tass s ee iabs nc ncor orre reta tas; s;, estat es tatíst icalisa de dedoKap Kappa, err erros osiasqua quadrá drático absolu olutos tos, precisão e matriz de confusão.

 



  de A figura mostra ostra aequantidad qincorreta. uantidadee de inst instâncias âncias cla classificad ssificadas as formam correta    A estatística de Kappa exibe o quanto aquele atributo escolhido para ser o classificador dos dados foi bom. Quanto mais próximo de 1 (100%) melhor.    Os erros dem demonstra onstram m o percentua percentuall de erros ao ao executar as instâncias. Quanto mais próximo de 0 (0%) melhor.

Estatística de Kappa Erros absolutos Erros quadráticos

 

Quantidade de instâncias classific ficadas de form rmaa correta e incorreta para cada regra gerada pelo algoritmo.

O que significam os valores ( 318.0 / 22.0 ): - 318 significa o número de acertos, ou seja, 318 registros, nos quais a regra acima se aplica corretamente; -

22 significa o número de erros, ou seja, 22 registros, nos quais a regra acima não se aplica corretamente.  

A figura mostra a precisão de cada classe. Quanto mais próximo de 1 (100%) melhor.

 

Matriz de confusão Contém informações muito importantes para o entendimento do resultado do algoritmo, dentre elas: ◦





  a quantidade de instâncias classificadas corretamente;   a quantidade de instâncias classificadas erroneamente;   a qua quanti ntidad dadee de instânci instâncias as que o alg algori oritm tmo o acredi acreditav tavaa ser de tipo e na verdade foram classificadas como outro, porum exemplo:

 

Matriz de confusão É possível analisar que: - dos 15 exemplos exe mplos (1ªlinha), 12 foram classificados corretamente como eleito, 3 foram classificados erroneamente como suplente; - dos 3 exemplos (2ªlinha), 1 foi classificado erroneamente como eleito e 2 foram classificados erroneamente como suplente; - dos 4 exemplos (3ªlinha), 4 foram classificados erroneamente como suplente; - dos 101 exemplos (4ªlinha), 100 foram classificados de forma correta.

 

Matriz de confusão Mas como chegou-se ao numero das inst in stân ância ciass class classifific icad adas as corre correta tame ment ntee e aerarroinsesaom P , ebnatsetanoaneaxliesm arploo aqcuiamdar?o abaixo, no qual a somatória dos valores, que fazem parte da diagonal m mfoic proescor enrtre am vaalorcreasdacla clacossif si icaaadzousl, croem co reto tossoes os demais valores somados em suas resp re spec ectitiva vass di diag agon onai ais, s, corr corres espo pond ndem em aos valores classificados erroneamente. Obviamente, na somató tóri riaa dos val valores erra rrados, os, devese excluir os valores que fazem

Com isto, obtemos o seguinte resultado: Instâncias classificadas classific adas corretamente: 1112; 12; Instâncias classificadas classific adas erroneamente: 11; Perfazendo um total de 123 instâncias analisadas.

intersecção com a linha em azul.

 

O problema de   Clustering   é descrito como: recebido um conjunto de dados (de objetos), tentar agrupá-los de forma que os elementos que compõem cada grupo sejam mais parecidos entre si do que parecidos com os elementos dos outros grupos. Em resumo, é colocar os iguais (ou quase iguais) juntos num mesmo grupo e os desiguais em grupos distintos.

64

 

65

 

 Dado um conjunto de objetos, colocar os objetos em grupos baseados na similaridade entre eles 



 Inerentemente é um problema não definido claramente

 Como agrupar os animais seguintes?



Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN  

 Dado um conjunto de objetos, colocar os objetos em 

 Como agrupar os animais seguintes?



grupos baseados similaridade entrena eles

 Inerentemente é um problema não definido claramente 

Com bico

Sem bico

Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN  

 Dado um conjunto de objetos, colocar os objetos em 

 Como agrupar os animais seguintes?



grupos baseados similaridade entrena eles

 Inerentemente é um problema não definido claramente 

Água

Terra

Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN  

 Dado um conjunto de objetos, colocar os objetos em 

 Como agrupar os animais seguintes?



grupos baseados similaridade entrena eles

 Inerentemente é um problema não definido claramente 

Ave

Mamífero

Adaptado de material de Marcílio C. P. de Souto - DIMAp/UFRN  



Dado um conjunto de objetos, colocar os objetos em grupos baseados na similaridade entre eles Distâncias intracluster são minimizadas

Distâncias entre cluster são maximizadas

 

 Reconhecimento de padrões:  Análise de dados espaciais: 

Criação de mapas temáticos em GIS por agrupamento de espaços de características;  Detecção de clusters espaciais e sua explanação em data



mining;

 Processamento Processamento de imagens; Pesquisa de mercado;   Pesquisa    WWW:



classificação de documentos;  Agrupamento de dados de weblogs, redes sociais para 

descobrir padrões similares de informações;

 Sumarização Sumarização





Reduzir o tamanho de grandes conjuntos de dados



Reduzir o tamanho de grandes conjuntos de dados

 

Quantos clusters?

Seis Clusters

Dois Clusters

Quatro Clusters

 

Clusterização dificuldades Encontrar o melhor agrupamento para um conjunto de objetos não é uma tarefa simples, a e   k  (número não ser que  que   n  (número de objetos) e  de cluste terrs) sejam extremam amen entte pequen eno os, visto que o número de partições distintas em que podemos dividir  dividir   n  objetos em  em   k  clusters   é aproximadamente kn/k! Ex. k=2 e n=5 então são 16 formas de dividir 5 elementos em 2 grupos.

73

 

Clusterização dificuldades Porque a   efetividade   dos   algoritmos   de Clustering  é  é um problema: 1. Quase todos os algoritmos de   Clustering  para os   parâmetros   de requerem   valores   pa entrada   qu que são   difíceis   de   determinar, determinar, especialmente para conjuntos de dados do mundo real contendo objetos com muitos atributos.

74

 

Clusterização dificuldades  algoritmos são  são muito sensíveis muito  sensíveis a  a estes 2. Os Os algoritmos valores   de   parâmetros, parâmetros, fr freq eqü üentemente ições es mu muit ito o di difer ferent entes es   do produzindo   part partiçõ conjunto de dados mesmo para ajustes de parâmetros significativamente pouco diferentes. 3. Conjuntos de dados reais de alta dimensão (muitos atributos) têm uma   distribuição muito ampla o ampla o que dificulta a análise.

75

 

Clusterização representações de dados • A entrada para um algoritmo de clusterização normalmente é um vetor (tuple ou record). • Os tipos de dados podem ser: numérico, de categoria ou boleano Numa clínica médica, por exemplo pode-se encontrar dados como: Idade (numérico),

Peso (numérico), Sexo (categoria), Doente (boleano)

Deve incluir um método para computar a similaridade de vetores ou a distância entre vetores.  

Clusterização medidas de similaridade As   medidas   de   similaridade   fornecem valores numéricos que expressam a distância”” entre dois objetos. “distância  o valor desta “distância”, mais “distância”, mais Quanto menor o Quanto menor semelhantes serão semelhantes  serão os objetos, e tenderão a ficar no mesmo no mesmo cluster . Quanto maior Quanto  maior   a “distância”, distância”, menos  menos similares serão osestar objetos e, em conseqüência, eles distintos.. deverão em grupos em grupos distintos

76

77

 

Clusterização medidas de similaridade

Uma função de distância deve ser tal que: 



não assuma valores negativos (o menor valor é 0 é 0); ); ao   j  tem que ser ser simétrica (a distância objeto objeto   j ao  ao i  i );  igual à distância do objeto j objetodo  );    i   ao



forneeça o val forn valor   0   qua quand ndo o ca calc lcu ula lada da a dis istâ tânc ncia ia do objeto a si mesmo ou quando dois objetos são idênticos;



 objetos, a respeite a desigualdade triangular, (dados 3 (dados  3 objetos, distância entre dois deles tem que ser menor ou igual

a soma das distâncias entre esses dois objetos e o terceiro).  

medidas de similaridade Clusterização 

Distância Euclidiana d ( x,  y ) =



( x1 −  y1 )

2



( x2



 y2 ) 2 + ... + ( x p −  y p ) 2

  City block (Manhattan) d ( x,  y ) =  x1 −  y1



 x2 −  y2

+  

+ ... +

 x p −  y p

  Reali Realizando zando uma analogia entre a diferença entre essas duas distância distâncias, s, vamos imaginar uma a rota de GPS para dois veículos, uma para um carro e outra para um helicóptero. A Distância Euclidiana seria o segmento de uma reta na qual indicaria uma possível rota de helicóptero (na qual não haveria preocupação com as ruas já que é um veículo aéreo, e geometricamente seria a hipotenusa de um triângulo) e a Distância Manhattan seria um segmento de retasona vertical quanto horizontal semelhante a uma rota carro (já que esse obedece sentido das ruas, na e devido à esse comportamento essade medida de distância distância é também também conhecida conhecida como City City Block, e geometricamente geometricamente seriam seriam a soma dos catetos).

 

Clusterização medidas de similaridade Não há uma medida uma  medida   de de similaridade  similaridade que  que sirva para todos os   tipos   de   variáveis   que podem existir numa base de dados. numéricas: Variáveis numéricas: A medida que é normalmente usada para coem tasr pasor divsasriim d scpriuto ávileairsidad neusmérdiceas obéjetoas Distancia Euclidiana A normalização faz com que todas as variáveis tenham um peso igual. A normalização deve ser efetuada para todos os atributos.

80

 



Particionamento (K-médias e variantes) ◦



Hierárquica (Hierarchical clustering) ◦



  Divide os pontos (dados) (dados) em conjuntos disjuntos disjuntos (clusters) tal que cada ponto pertence a um único cluster

  Um conjunto de clusters clusters aninhados organizados organizados como uma árvore

Baseadas em densidade (DBSCAN) ◦

  Encontra clusters clusters baseado na densidade de regiões regiões

 

 



 

  Abordagem por particionamento   Cada cluster está associado a um centróide centróide (ponto  (ponto central)   Cada ponto é associado ao cluster cujo centróide está mais próximo   Número de clusters, K, precisa ser especificado   O algoritmo básico é bem simples e irá gerar K clusters: o o o o o o o

  1 – Coloque Coloque K centroides centroides aleatoriamente aleatoriamente   2 – Atribua Atribua cada item a um centróide centróide mais próximo. próximo.   3 – Calcule a média média entre os pontos pontos internos de de   cada ponto atribuido a um centroide. centroide.   4 – A posição posição média é atribuida atribuida ao centróide (que  muda de posição)   5 – O cálculo cálculo deve ser refeito a partir partir do nº 2 até que se estabilize estabilize

 

Diagrama de Voronoi – poliedros convexos convexos em torno dos centróides

 

Usar k=2 (parâmetro informado pelo usuário)

Dataset a ser clusterizado It em

Variáveis x1

x2

A

5

3

B

-1

1

C

1

-2

D

-3

-2

 

Passo 1 Determina-s -see os centr tró óides inici ciaais (normalme lmente pega-se ao acaso k pontos (registros): por exemplo os registros A e B), Variáveis isto é: C1(1) = (5,3) C2(1) = (-1,1)

It em

x1

x2

A B

5 -1

3 1

C

1

-2

D

-3

-2

 

Passo 2: Calcula-se as distâncias de cada ponto aos centróides, para definir os cluster iniciais.

Os clusters são: C1 = {A} C2 = {B,C,D} Pois C e D estão mais perto de B do que de A

 

Passo 3: cálculo dos novos centróides

C1(2)= (5,3) C2(2)= Variáveis It em

x1

x2

A

5

3

B

-1

1

C

1

-2

D

-3

-2

 

3

2.5

2

Pontos originais

1.5       y

1

0.5

0

-2

- 1.5

-1

-0 .5

0

0 .5

1

1.5

2

x

3

3

2.5

2.5

2

2

1.5

1.5

      y

      y

1

1

0.5

0.5

0

0

-2

- 1.5

-1

- 0 .5

0

x

0.5

1

1.5

2

-2

- 1.5

-1

- 0 .5

0

x

0 .5

1

1.5

2

Particionamento ótimo

Particionamento sub-ótimo

 

Iteration Itera tion 6 1 2 3 4 5 3

2.5

2

1.5       y

1

0.5

0

-2

- 1.5

-1

-0.5

0

x

0 .5

1

1.5

2

 

Iteration 1

Iteration 2

Iteration 3

3

3

3

2.5

2.5

2.5

2

2

2

1.5

1.5

      y

1.5

      y

      y

1

1

1

0.5

0.5

0.5

0

0

0

-2

- 1.5

-1

-0 .5

0

0 .5

1

1.5

2

-2

- 1.5

-1

- 0 .5

x

0

0. 5

1

1.5

2

-2

3

3

2.5

2.5

2.5

2

2

2

1

1

1

0.5

0.5

0.5

0

0

0

0

x

0 .5

1

1.5

2

0. 5

1

1.5

2

1

1.5

2

      y

      y

-0 .5

0

1.5

1.5

1.5       y

-1

-0 .5

Iteration 6

Iteration 5

Iteration 4

- 1.5

-1

x

3

-2

- 1.5

x

-2

- 1.5

-1

- 0 .5

0

x

0. 5

1

1.5

2

-2

- 1.5

-1

-0 .5

0

x

0. 5

 

A medida mais comum é a soma dos erros quadrados Para ponto,Error o erro-é SSE) a distância ao centróide mais (Sum ofcada Squared

próximo



dist 2 ( m , x )

SSE  =

∑∑ i =1  x∈C i

i

é um ponto de dados no cluster C i e m i  é o ponto representativo (centróide) do cluster C i

x

Uma

maneira fácil de reduzir o SSE é aumentar K, o número de clusters    Um

bom particionamento com um K pequeno pode ter um SSE menor do que um mau particionamento particionamento com um K maior

 

Iteration 5 1 2 3 4 3

2.5

2

1.5       y

1

0.5

0

-2

- 1.5

-1

-0.5

0

x

0 .5

1

1.5

2

 

Importância da escolha dos centróides iniciais Iteration 2

Iteration 1 3

3

2.5

2.5

2

2

1.5

1.5

      y

      y

1

1

0.5

0.5

0

0

-2

- 1.5

-1

- 0 .5

0

0 .5

1

1.5

-2

2

- 1.5

-1

- 0 .5

0

0. 5

3

2.5

2.5

2.5

2

2

2

1.5

1.5

1.5

      y

      y

      y

1

1

1

0.5

0.5

0.5

0

0

0

-1

-0 .5

0

x

0 .5

2

Iteration 5

3

- 1.5

1.5

Iteration 4

Iteration 3 3

-2

1

x

x

1

1.5

2

-2

- 1.5

-1

-0 .5

0

x

0. 5

1

1 .5

2

-2

- 1.5

-1

- 0 .5

0

x

0. 5

1

1.5

2

 

Iteration 4 1 2 3 8

6

4

2

      y

0

-2

-4

-6

0

5

10

x

15

20

Iniciando com dois centróides em um cluster para cada par de clusters

 

Iteration 1

Iteration 2

8

8

6

6

4

4

2

2

      y

      y

0

0

-2

-2

-4

-4

-6

-6

0

5

10

15

20

0

5

x

10

15

20

15

20

x

Iteration 3

Iteration 4

8

8

6

6

4

4

2

2

      y

      y

0

0

-2

-2

-4

-4

-6

-6

0

5

10

x

15

20

0

5

10

x

Iniciando com dois centróides em um cluster para cada par de clusters

 

2 3 4 Iteration 1 8

6

4

2

      y

0

-2

-4

-6

0

5

10

x

15

20

Iniciando com um par de clusters cluster s tendo 3 centróides iniciais e outro par com somente um.

 

Iteration 1

Iteration 2

8

8

6

6

4

4

2

2

      y

      y

0

0

-2

-2

-4

-4

-6

-6

0

5

10

15

20

0

5

x Iteration 3

10

15

20

15

20

x Iteration 4

8

8

6

6

4

4

2

2

      y

      y

0

0

-2

-2

-4

-4

-6

-6

0

5

10

x

15

20

0

5

10

x

Iniciando com um par de clusters cluster s tendo 3 centróides iniciais e outro par com somente um.

 



Pré-processamento   Normalize os dados ◦





 Elimine exceções (outliers) 

Pós-processamento ◦

  Elimine clusters pequenos pequenos que podem representar outliers 





  Divida clusters “fracos” i.e., clusters clusters com SSE relativamente alto   Junte clusters que estão “perto” e que que tenham SSE relativamente baixo

 



K-médias tem problemas quando os clusters têm ◦







  Tamanhos diferentes    Densidades dife rentes Formato não nãodiferentes esférico

K-médias tem problemas quando os dados contêm outliers .

 

Pontos originais

K-médias (3 Clusters)

 

pontos originais

K-médias (3 Clusters)

 

Pontos originais

K-médias (2 Clusters)

 

Pontos originais

Uma solução é usar muitos clusters.

Clusters do K-médias

Encontra partes de clusters, mas que precisam ser unidos.

 

Pontos originais

clusters do K-médias

 

Pontos originais

clusters do K-médias

 

Métodos de K K-medoids (K -medoids (K-medianas) -medianas)  KK-médias -médias médias é  é sensível a ruídos visto O algoritmo  algoritmo que um objeto com um valor extremamente grande pode, distorcer a distribuição de dados. Para

diminuir

essa

sensibilidade,

no

algoritmo   KK-dos medoids medoids, , aoeminvés de utilizar o valor médio objetos um cluster como um pont nto o referênc nciia, a mediana é ut utiilizada, que é o objeto mais centralmente localizado

em um cluster .

 

Em vez de   médias   (centróides) , usa objetos representativos chamados   medoids  

  (Partitioning Around Medoids, 1987) – inicia com PAM  (Partitioning

um conjunto de medoids e iterativamente substitui um dos medoids por um dos pontos não-medoids se ele melho hora ra a dis isttância to tota tall do partic ticionamen mento resultante. (Clust ster erin ing g Larg Largee Ap Appl plic icat atio ions ns,, 19 1990 90)) – Fa Fazz  CLARA   (Clu várias amostras do conjunto de dados, aplica-se PAM em cada amostra, e dá o melhor de agrupamento como a saída

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF