You are on page 1of 93

UNIVERSIDADE PRESBITERIANA MACKENZIE

MARCELO VIANA DONI

ANLISE DE CLUSTER: MTODOS HIERRQUICOS


E DE PARTICIONAMENTO

So Paulo
2004

MARCELO VIANA DONI

ANLISE DE CLUSTER: MTODOS HIERRQUICOS


E DE PARTICIONAMENTO

Trabalho apresentado disciplina de


Trabalho de Graduao Interdisciplinar II,
como parte das exigncias para a obteno
do ttulo de Bacharel em Sistemas de Informao
pela Faculdade de Computao e Informtica
da Universidade Presbiteriana Mackenzie.

ORIENTADOR: ROGRIO DE OLIVEIRA

So Paulo
2004

RESUMO
Atualmente, a disponibilidade de avanados recursos computacionais e a relativa diminuio
do custo operacional facilitou o armazenamento de dados em meio magntico. Devido ao
acmulo de uma grande quantidade de dados, existe a necessidade de identificar e utilizar as
informaes implcitas contidas nos dados, atravs de um processo conhecido como Extrao
de Conhecimento em Bases de Dados (Knowledge Discovery in Databases). Umas das etapas
da Extrao de Conhecimento em Bases de Dados o processo de extrao de informaes
em um banco de dados, sem conhecimento prvio, a Minerao de Dados (Data Mining).
Neste estudo, descrevemos o processo de Extrao de Conhecimento em Bases de Dados,
Minerao de Dados e algumas de suas tcnicas, tendo como enfoque os mtodos
hierrquicos e no-hierrquicos de anlise de cluster, realizando trs estudos de caso
aplicando-se esses mtodos.
Palavras-chave: Minerao de Dados. Anlise de Cluster. Anlise Multivariada.

ABSTRACT
Nowadays, the availability of advanced computational resources and the relative decrease of
the operational costs, reduced the data storage in magnetic medium. When we have a large
number of data, it is necessary to identify and to use the information included in this data,
using a process known as knowledge discovery in databases. One of the steps of the
knowledge discovery in databases is the process of extracting data in a database, without a
previous knowledge, called data mining. In this study, we describe the knowledge discovery
database process, the data mining, and some techniques focusing the hierarchical and nonhierarchical methods of cluster analysis and also three case studies applying those methods.
Keywords: Data mining, Cluster analysis, Multivariate analysis.

LISTA DE FIGURAS
Figura 2.1 Processo de extrao de conhecimento em bases de dados e suas etapas........ 13
Figura 3.1 Exemplo de rvore de deciso ......................................................................... 20
Figura 3.2 Esquema de um neurnio artificial .................................................................. 22
Figura 3.3 Exemplo de uma rede neural............................................................................ 23
Figura 4.1 Distncia Euclidiana entre os pontos X0 e X1 no plano ................................... 28
Figura 4.2 Exemplo de dendograma.................................................................................. 31
Figura 4.3 Exemplo no qual o dendograma cortado em trs diferentes nveis............... 31
Figura 4.4 Algoritmo padro ............................................................................................. 33
Figura 4.5 Seqncia de agrupamentos realizada no mtodo de ligao por vizinho mais
prximo.................................................................................................................................. 34
Figura 4.6 Dendograma aplicando o mtodo de ligao por vizinho mais prximo......... 35
Figura 4.7

Fenmeno do encadeamento............................................................................ 35

Figura 4.8 Grfico de disperso de dados com estrutura de encadeamento...................... 36


Figura 4.9 Seqncia de agrupamentos realizada no mtodo de ligao por vizinho mais
distante................................................................................................................................... 37
Figura 4.10 Dendograma aplicando o mtodo de ligao por vizinho mais distante.......... 37
Figura 4.11 Seqncia de agrupamentos realizada no mtodo de ligao por mdia ......... 39
Figura 4.12 Dendograma aplicando o mtodo de ligao por mdia .................................. 39
Figura 4.13 Seqncia de agrupamentos realizada no mtodo de ligao por centride .... 41
Figura 4.14 Dendograma aplicando o mtodo de ligao por centride............................. 41
Figura 4.15 Etapas de ligao entre os elementos............................................................... 42
Figura 4.16 Seqncia de agrupamentos realizada no mtodo de ligao por mediana ..... 43
Figura 4.17 Dendograma aplicando o mtodo de ligao por mediana .............................. 44
Figura 4.18 Seqncia de agrupamentos realizada no mtodo de ligao de Ward............ 45
Figura 4.19 Dendograma aplicando o mtodo de ligao de Ward .................................... 46
Figura 4.20 Relao entre o mtodo aglomerativo e divisivo ............................................. 47
Figura 4.21 Algoritmo de MacNaughton-Smith.................................................................. 48
Figura 4.22 Seqncia de agrupamentos realizada no mtodo MacNaughton-Smith ......... 53
Figura 4.23 Dendograma aplicando o mtodo de MacNaughton-Smith ............................. 53
Figura 4.24 Algoritmo k-means........................................................................................... 55
Figura 4.25 Seqncia de agrupamentos realizada no mtodo k-means ............................. 58

Figura 4.26 Algoritmo k-medoid ......................................................................................... 59


Figura 4.27 Agrupamentos realizados no mtodo k-medoid ............................................... 61
Figura 4.28 Agrupamentos realizados no algoritmo fuzzy c-means. ................................... 64
Figura 5.1 Tela inicial do Minitab..................................................................................... 69
Figura 5.2 Tela de anlise descritiva ................................................................................. 69
Figura 5.3 Tela de histograma ........................................................................................... 70
Figura 5.4 Tela de anlise de cluster hierrquica .............................................................. 71
Figura 5.5 Tela do mtodo k-means .................................................................................. 72
Figura 5.6 Histograma da varivel memria cache ........................................................... 73
Figura 5.7

Histograma da varivel ciclo de mquina ........................................................ 73

Figura 5.8 Diagrama de disperso das variveis ciclo de mquina e memria cache....... 74
Figura 5.9 Dendograma utilizando o mtodo de ligao por vizinho mais prximo ........ 75
Figura 5.10 Diagrama de disperso do mtodo de ligao por vizinho mais prximo ....... 75
Figura 5.11 Dendograma do mtodo de ligao por vizinho mais distante ........................ 76
Figura 5.12 Diagrama de disperso do mtodo de ligao por vizinho mais distante ........ 76
Figura 5.13 Dendograma do mtodo de ligao de Ward ................................................... 77
Figura 5.14 Diagrama de disperso do mtodo de ligao de Ward ................................... 77
Figura 5.15 Dendograma do mtodo de ligao por centride ........................................... 78
Figura 5.16 Dendograma do mtodo de ligao por mdia................................................. 79
Figura 5.17 Diagrama de disperso dos mtodos de ligao por centride e por mdia .... 79
Figura 5.18 Grupos finais dos processadores ...................................................................... 81
Figura 5.19 Histograma da varivel ENTRADA ................................................................ 83
Figura 5.20 Histograma da varivel SADA ....................................................................... 84
Figura 5.21 Grfico log-log da distribuio do nmero de links por pgina....................... 84
Figura 5.22 Distribuio exponencial dos links .................................................................. 85
Figura 5.23 Desenho circular da rede aps os agrupamentos ............................................. 86
Figura 5.24 Desenho tridimensional da rede indicando as direes das conexes ............. 87

LISTA DE TABELAS
Tabela 4.1

Elementos do exemplo para matriz de similaridade ........................................ 30

Tabela 4.2

Resumo dos mtodos hierrquicos aglomerativos........................................... 46

Tabela 4.3

Conjunto de dados exemplo............................................................................. 55

Tabela 4.4

Elementos do exemplo fuzzy c-means ............................................................. 63

Tabela 4.5

Graus de associao dos elementos aos grupos ............................................... 63

Tabela 5.1

Grupos finais.................................................................................................... 80

Tabela 5.2

Classificao das variveis .............................................................................. 80

Tabela 5.3

Identificao dos fabricantes e quantidade de processadores por grupo ......... 80

Tabela 5.4

Descrio das variveis do conjunto de dados de e-mails ............................... 81

Tabela 5.5

Identificao dos e-mails e fabricantes............................................................ 82

Tabela 5.6

Anlise descritiva das variveis ENTRADA e SADA................................... 83

Tabela 5.7

Resultado dos agrupamentos dos dados de pginas web ................................. 87

SUMRIO
1 INTRODUO .............................................................................................................. 9
2 EXTRAO DE CONHECIMENTO EM BASES DE DADOS............................... 12
2.1 SELEO DOS DADOS ....................................................................................... 13
2.2 PROCESSAMENTO DOS DADOS ....................................................................... 14
2.3 TRANSFORMAO DOS DADOS...................................................................... 15
2.4 MINERAO DE DADOS.................................................................................... 16
2.5 INTERPRETAO E AVALIAO .................................................................... 16
2.6 CONCLUSO......................................................................................................... 17
3 MINERAO DE DADOS ........................................................................................... 18
3.1 ESTATSTICA........................................................................................................ 19
3.2 INDUO............................................................................................................... 19
3.3 ALGORITMOS GENTICOS................................................................................ 20
3.4 CLASSIFICAO.................................................................................................. 21
3.5 ANLISE DE CLUSTER........................................................................................ 21
3.6 REDES NEURAIS ARTIFICIAIS.......................................................................... 22
3.7 CONCLUSO......................................................................................................... 25
4 ANLISE DE CLUSTER............................................................................................... 26
4.1 MEDIDAS DE SIMILARIDADE........................................................................... 27
4.1.1 Distncia Euclidiana .................................................................................... 27
4.1.2 Distncia Euclidiana Quadrtica ................................................................. 28
4.1.3 Distncia de Manhattan............................................................................... 28
4.1.4 Distncia de Chebychev............................................................................... 29
4.2 MTODOS HIERRQUICOS ............................................................................... 30
4.2.1 Mtodos Aglomerativos .............................................................................. 32
4.2.1.1 Mtodo Single Linkage ou ligao por vizinho mais prximo..... 33
4.2.1.2 Mtodo Complete Linkage ou ligao por vizinho mais distante. 36
4.2.1.3 Mtodo Average Linkage ou ligao por mdia........................... 38
4.2.1.4 Mtodo Centroid Linkage ou ligao por centride..................... 40
4.2.1.5 Mtodo Median Linkage ou ligao por mediana ........................ 42
4.2.1.6 Mtodo Wards Linkage ............................................................... 44
4.2.2 Mtodos Divisivos....................................................................................... 47

4.2.2.1 Mtodo de MACNAUGHTON-SMITH......................................... 48


4.3 MTODOS NO-HIERRQUICOS OU POR PARTICIONAMENTO .............. 54
4.3.1 Mtodo k-means .......................................................................................... 55
4.3.2 Mtodo k-medoid......................................................................................... 58
4.4 OUTROS MTODOS............................................................................................. 62
4.4.1 Agrupamentos fuzzy..................................................................................... 62
4.4.2 Mapas Auto-Organizveis de Kohonen....................................................... 65
4.5 CONCLUSO......................................................................................................... 67
5 ESTUDOS DE CASO...................................................................................................... 69
5.1 ESTUDO DE CASO 1 ............................................................................................ 72
5.1.1 Simulaes................................................................................................... 72
5.1.1.1 Simulao 1: Aplicando o mtodo de ligao por vizinho mais
prximo....................................................................................................... 74
5.1.1.2 Simulao 2: Aplicando o mtodo de ligao por vizinho mais
distante........................................................................................................ 76
5.1.1.3 Simulao 3: Aplicando o mtodo de ligao de Ward................ 77
5.1.1.4 Simulao 4: Aplicando os mtodos de ligao por centride e
ligao por mdias ...................................................................................... 78
5.1.2 Concluso .................................................................................................... 79
5.2 ESTUDO DE CASO 2 ............................................................................................ 81
5.2.1 Simulao aplicando o mtodo k-means ..................................................... 82
5.2.2 Concluso .................................................................................................... 82
5.3 ESTUDO DE CASO 3 ............................................................................................ 83
5.3.1 Simulao aplicando o mtodo k-means ..................................................... 83
5.3.2 Concluso .................................................................................................... 87
6 CONCLUSO................................................................................................................. 88
REFERNCIAS BIBLIOGRFICAS ......................................................................... 90
BIBLIOGRAFIA COMPLEMENTAR........................................................................ 92

1 INTRODUO

Durante os ltimos anos, verificou-se um crescimento substancial da quantidade de


dados armazenados em meios magnticos. Avanos nas tecnologias de armazenamento de
dados, o aumento na velocidade e capacidade dos sistemas, o barateamento dos dispositivos
de armazenamento e a melhoria dos sistemas gerenciadores de banco de dados e data
warehouse, tm permitido transformar essa enorme quantidade de dados em grandes bases de
dados (FAYYAD et al., 1996). Estima-se que a cada 20 meses as empresas no mundo dobrem
o volume de dados acumulados em seus computadores (DINIZ, 2000).
Esses dados, produzidos e armazenados em larga escala, so inviveis de serem
analisados por especialistas atravs de mtodos tradicionais, tais como planilhas de clculos e
relatrios informativos operacionais, onde o especialista testa sua hiptese contra a base de
dados (AURLIO, 1999). Com isso, surge a necessidade de se explorar esses dados para
extrair informaes e conhecimentos implcitos, a serem empregados na tomada de decises.
Esse conhecimento obtido por um processo organizado de transformao de dados
em conhecimento, denominado extrao de conhecimento em bases de dados (Knowledge
Discovery in Databases).
O termo extrao de conhecimento em bases de dados refere-se s etapas no processo
de descoberta e uso do conhecimento dos dados, onde a minerao de dados (Data Mining)
uma das etapas desse processo (JACKSON, 2002).
A minerao de dados a fase onde so utilizadas diversas ferramentas
computacionais na busca de padres dos dados. Essas ferramentas empregam tcnicas como
induo, classificao, analise de cluster, regresso, redes neurais, redes bayesianas,
algoritmos genticos, entre outras.

10

Neste estudo, damos enfoque a alguns mtodos de anlise de cluster. Esses mtodos
buscam ajudar o usurio a entender a estrutura natural em um conjunto de dados. A anlise de
cluster uma das tcnicas mais utilizadas no processo de minerao de dados para descoberta
de agrupamentos e identificao de importantes distribuies e padres para entendimento dos
dados (HALDIKI, 2001).
O agrupamento em bancos de dados o processo de separar o conjunto de dados em
componentes que refletem padres consistentes de comportamento, particionando o banco de
dados de forma que cada partio ou grupo seja similar de acordo com algum critrio ou
mtrica. Uma vez que os padres tenham sido estabelecidos, estes podem ser utilizados para
desmontar os dados em subconjuntos mais compreensveis e tambm podem prover
subgrupos de uma populao para futuras anlises. Por exemplo, um banco de dados poderia
ser utilizado para a gerao de perfis de marketing direcionado onde a resposta prvia s
campanhas de mala direta geraria um perfil das pessoas que responderam. A partir disso, fazse a previso de resposta e filtra-se a lista de mala direta para obter melhor resultado.
As metodologias de anlise de cluster tm sido largamente utilizadas em numerosas
aplicaes, incluindo reconhecimento de padres, anlise de dados, processamento de
imagens e pesquisa de mercado (JAIN, 1999).
Dada sua importncia nos processos de minerao de dados, apresentam-se, nesse
trabalho, diversas tcnicas de anlise de cluster, seus algoritmos e caractersticas, alm de
experimentos aplicando-se alguns mtodos em diferentes conjuntos de dados.
O trabalho est organizado da seguinte forma. No captulo 2, trata-se a extrao de
conhecimento em bases de dados, mostrando as atividades executadas em cada uma de suas
fases. No captulo 3, trata-se, de forma concisa, o conceito de minerao de dados e algumas
tcnicas utilizadas nessa fase. No captulo 4, tratam-se, com maiores detalhes, os mtodos
hierrquicos e no-hierrquicos de anlise de cluster, apresentando os algoritmos,

11

caractersticas e exemplos de cada mtodo. Alm disso, abordam-se, brevemente, outras


tcnicas de anlise de cluster, como agrupamentos fuzzy e mapas de Kohonen. O captulo 8,
dedica-se a trs estudos de caso, onde foram aplicadas as tcnicas de anlise de cluster. No
captulo 9, apresentam-se as concluses deste estudo. A seguir, as referncias bibliogrficas
que deram suporte ao estudo desenvolvido.

12

2 EXTRAO DE CONHECIMENTO EM BASES DE DADOS

O processo de extrao de conhecimento em bases de dados (Knowledge Discovery in


Databases KDD) foi proposto em 1989 por Fayyad, referindo-se s etapas que produzem
conhecimento1 a partir de dados e, principalmente, de minerao dos dados, que a fase que
transforma dados em informao (FAYYAD et al., 1996). Esse processo formado pela
interseco de diferentes reas, como aprendizado de mquina, inteligncia artificial,
estatstica, visualizao dos dados, entre outras.
Amplamente utilizada no processo de extrao de conhecimento em bases de dados
(ECBD), a inteligncia artificial uma rea da cincia que busca o desenvolvimento de
sistemas inteligentes baseados em aspectos do comportamento humano, tais como
aprendizado, percepo, raciocnio, evoluo e adaptao. Suas tcnicas mais utilizadas so
redes neurais artificiais, induo de regras e algoritmos genticos.
O processo de ECBD tem como objetivo encontrar conhecimento a partir de um
conjunto de dados e utiliz-lo em um processo decisrio.
A definio do problema que se deseja solucionar fundamental para o processo de
ECBD. Essa definio requer que a pessoa que solicita a tarefa entenda o problema existente e
tenha um objetivo bem especificado, ou seja, aquilo que se deseja conhecer ou extrair. Tendo
definido o problema, pode-se fixar metas para os objetivos da tarefa de ECBD.
Esse processo centrado na interao entre trs classes de usurios, sendo: o
especialista de domnio, o usurio que deve possuir amplo conhecimento do domnio da
aplicao e deve fornecer apoio para a execuo do processo; o analista, que o usurio
especialista no processo de extrao de conhecimento e responsvel por sua execuo, o qual
deve, ainda, conhecer profundamente as etapas que compem o processo; e o usurio final,

13

que utiliza o conhecimento extrado para auxilia-lo nos processos de tomadas de deciso.
Portanto, um requisito importante que o conhecimento produzido seja compreensvel e til
para os usurios finais.
A ECBD um conjunto de atividades contnuas que compartilham o conhecimento
descoberto a partir de bases de dados, e composto pelas etapas de: seleo de dados;
processamento e limpeza; transformao; minerao de dados (Data Mining) e interpretao
dos resultados. A figura 2.1 ilustra as etapas envolvidas no processo de ECBD.

Figura 2.1: Processo de extrao de conhecimento em bases de dados e suas etapas.

Pode haver interseco entre as fases, e os resultados produzidos numa fase podem ser
utilizados para melhorar os resultados das seguintes. Isso significa que o processo de ECBD
iterativo, buscando aprimorar os resultados a cada iterao.
Essas etapas podem diferir no tempo e no esforo consumido. A preparao dos dados,
por exemplo, que inclui a seleo, processamento e transformao dos dados, pode consumir
de 60% a 80% do tempo total do processo, sendo a maior parte do tempo empregada na
limpeza de dados, segundo Diniz (2000). Cada uma dessas etapas tratada a seguir.

2.1 SELEO DOS DADOS

Conhecimento refere-se informaes armazenadas ou modelos usados por uma pessoa ou mquina para
interpretar, predizer e responder de forma correta a algo do mundo real (HAYKIN, 1994).

14

A seleo de dados tem como objetivo identificar as origens internas e externas da


informao, extraindo um subconjunto de dados necessrio para a aplicao da minerao de
dados, selecionando apenas atributos relevantes aos objetivos do processo de extrao de
conhecimento.
As variveis selecionadas podem ser do tipo categrica ou quantitativa. As variveis
categricas assumem valores finitos e so nominais ou ordinais. As variveis ordinais
apresentam uma ordem entre seus valores possveis. Exemplos de variveis nominais so
estado civil (solteiro, casado, divorciado) e sexo (masculino, feminino). Um
exemplo de varivel ordinal grau de instruo (primeiro grau, segundo grau) (DINIZ,
2000).
As variveis quantitativas assumem valores numricos. Podem ser do tipo contnua
(assumem valores reais) ou discreta (assumem valores de um conjunto finito ou infinito
enumervel). Exemplos de variveis discretas so o nmero de empregados e nmero de
filhos. Exemplos de variveis contnuas so a receita e taxa.
A etapa de seleo otimiza o tempo de processamento da tcnica de minerao, visto
que ele apenas trabalhar com um subconjunto de atributos, diminuindo o espao de busca da
minerao.
importante que essa fase seja guiada pelos objetivos do processo de extrao de
conhecimento, a fim de que o conjunto de dados gerado apresente caractersticas necessrias
para que os objetivos sejam alcanados.

2.2 PROCESSAMENTO DOS DADOS


O processamento dos dados tem como objetivo assegurar a qualidade dos dados
selecionados. Como o resultado do processo de extrao possivelmente ser utilizado no
processo de tomada de deciso, a qualidade dos dados um fator extremamente importante.

15

Esta etapa inicia-se com uma reviso geral da estrutura dos dados e a definio de
medidas de qualidade, utilizando uma combinao de mtodos estatsticos e tcnicas de
visualizao de dados.
Entre os problemas tratados na etapa de processamento dos dados, encontramos:

Eliminao de dados duplicados - so removidos dados duplicados e/ou corrompidos;

Tratamento de outliers - so valores significantemente fora do esperado para uma


varivel;

Valores faltantes - valores que no esto presentes no conjunto selecionado e valores


invlidos que foram eliminados durante a deteco de outliers.

2.3 TRANSFORMAO DOS DADOS


O objetivo desta fase converter o conjunto bruto de dados em uma forma padro de
uso, tornando os dados teis para a minerao.
Devido s restries de espao em memria e tempo de processamento, o nmero de
atributos disponveis para anlise pode inviabilizar a minerao de dados. Com isso, tcnicas
de reduo de dados so aplicadas, sendo feitas de trs modos:

Reduo do nmero de exemplos deve ser feita mantendo as caractersticas do conjunto


de dados original, por meio da gerao de amostras representativas dos dados;

Reduo do nmero de atributos realizada pelo especialista do domnio, seleciona-se


um subconjunto dos atributos de forma que no tenha impacto na qualidade do conjunto
final;

Reduo do nmero de valores de um atributo consiste na reduo do nmero de


valores de um atributo, geralmente utilizando-se tcnicas de discretizao e suavizao
de valores. A discretizao de um atributo consiste na substituio de um atributo
contnuo por um atributo discreto, por meio do agrupamento de seus valores. A

16

suavizao de valores agrupa determinados atributos em um valor numrico que o


represente, podendo ser, por exemplo, a mdia ou a mediana.
Essa etapa auxilia na reduo do tempo de processamento para a tcnica de minerao,
diminuindo o espao de busca. As transformaes devem, entretanto, preservar ao mximo,
nas amostras geradas, as informaes presentes nos dados brutos.

2.4 MINERAO DE DADOS


a etapa mais importante do processo de ECBD e caracteriza-se pela existncia de
uma tcnica de minerao capaz de extrair conhecimento implcito de um banco de dados em
funo de um objetivo proposto. Este item abordado com maiores detalhes no captulo 3.

2.5 INTERPRETAO E AVALIAO


As tcnicas de minerao de dados podem ter gerado uma quantidade enorme de
padres, dos quais podem no ser relevantes ou interessantes ao usurio.
Um dos objetivos principais do processo de ECBD que o usurio possa compreender
e utilizar o conhecimento descoberto. Mas, podem ocorrer casos em que os modelos so
muito complexos ou no fazem sentido para os especialistas.
Existem algumas formas de se caracterizar a qualidade dos resultados obtidos, como a
compreensibilidade e a interessabilidade. A compreensibilidade de um conjunto de regras
relaciona-se com a facilidade de interpretao dessas regras por um ser humano. Assim,
quanto menor a quantidade de regras de um dado modelo e menor o nmero de condies por
regra, maior ser a compreensibilidade das regras descobertas. A interessabilidade uma
medida de qualidade que tenta estimar o quanto de conhecimento interessante ou inesperado
existe, e deve combinar fatores numa medida que reflete como o especialista julga o padro.

17

Aps a anlise do conhecimento, caso esse no seja de interesse do usurio final ou


no cumpra os objetivos propostos, o processo de extrao pode ser repetido, ajustando-se os
parmetros ou melhorando o processo de escolha dos dados, para a obteno de melhores
resultados em uma prxima iterao.

2.6 CONCLUSO
Em resumo, a extrao de conhecimento em bases de dados composta por etapas
iterativas, sendo a seleo dos dados, o processamento dos dados, a transformao dos dados,
a minerao de dados e a interpretao e avaliao. Dada a importncia da minerao de
dados no processo de ECBD, no captulo seguinte, so tratadas, brevemente, conceitos e
tcnicas empregadas em minerao de dados.

18

3 MINERAO DE DADOS

A descoberta de conhecimento em bases de dados um campo de pesquisa que tem


crescido rapidamente, e cujo desenvolvimento tem sido dirigido ao benefcio de necessidades
prticas, sociais e econmicas. A motivao para esse crescimento est ligada existncia de
uma poderosa tecnologia de coleta, armazenamento e gerenciamento de grande quantidade de
dados. Muitos desses dados possuem informaes valiosas, como tendncias e padres que
podem ser usadas em tomadas de decises (REZENDE, 2003).
A minerao de dados termo que se refere aos mtodos e tcnicas computacionais
utilizadas para a extrao de informaes em bases de dados.
As tcnicas de minerao de dados so aplicadas sobre bancos de dados operacionais
ou Data Warehouse, nos quais os dados so preparados antes de serem armazenados. Um
Data Warehouse um conjunto de dados baseado em assuntos, integrado, no-voltil e
variante em relao ao tempo, para apoio s decises gerenciais (INMON, 1997). Ele tem por
objetivo oferecer organizao, gerenciamento e integrao de bancos de dados, assim como
ferramentas de explorao dos mesmos, usado, geralmente, em aplicaes de suporte
tomada de deciso. Devido s caractersticas do Data Warehouse, geralmente, as tcnicas de
minerao so aplicadas sobre ele.
Nas prximas sees, so apresentadas, brevemente, algumas tcnicas utilizadas em
minerao de dados, tratando-se, em maiores detalhes, as tcnicas de anlise de cluster no
captulo 4.

19

3.1 ESTATSTICA
A estatstica aplicada maioria das tcnicas de minerao de dados. Com isso, existe
dificuldade na distino entre minerao de dados e estatstica. A minerao de dados deve
ser tratada como uma adaptao de tcnicas estatsticas tradicionais, visando a anlise de
grandes bases de dados (DINIZ, 2000).
As tcnicas estatsticas mais utilizadas em minerao de dados so (JACKSON, 2002):

Estatstica descritiva - trata-se de medidas de locao (mdia, mediana) e variabilidade


(desvio padro), medidas de freqncias e porcentagens, tabelas de contingncia e
coeficientes de correlao;

Tcnicas de visualizao - incluem histogramas e grficos de disperso;

Anlise de discriminante - utilizada para criar regras de associao para dados


previamente classificados, aplicando essa regra para associar novos elementos s classes;

Analise fatorial - utilizada para reduzir o nmero de variveis de um conjunto de dados e


detectar uma relao estrutural entre elas;

Anlise de regresso - modelos utilizados para estabelecer relaes entre variveis, de


forma que uma varivel possa ser predita atravs de outras.
Uma reviso detalhada desse tpico pode ser encontrada em (JONHSON, 1992).

3.2 INDUO
A induo o processo de se obter uma hiptese a partir dos dados e fatos existentes.
Em geral, os fatos so os registros existentes nos bancos de dados e a hiptese uma rvore
de deciso que dever segmentar os dados de forma significativa.
A rvore de deciso usada para criar regras com os ns, servindo como pontos de
deciso. Assim, a rvore de deciso alcana sua deciso executando uma seqncia de testes,

20

onde cada n interno na rvore corresponde a um teste do valor de uma das propriedades, e as
ramificaes a partir do n so identificadas com os valores possveis. Cada n da folha na
rvore especifica o valor a ser retornado se aquela folha for alcanada. A figura 3.1 traz um
exemplo de rvore deciso, onde definido se um cliente vai ou no esperar por uma mesa
em um restaurante (RUSSELL, 1995). As rvores de deciso podem, tambm, envolver
probabilidades na deciso de um caminho ou outro. Uma reviso concisa desse tpico pode
ser encontrada em (RUSSEL, 1995).

Figura 3.1: Exemplo de rvore de deciso.

3.3 ALGORITMOS GENTICOS


Os algoritmos genticos so mtodos generalizados de busca e otimizao que
simulam os processos naturais de evoluo. Um algoritmo gentico um procedimento
iterativo para evoluir uma populao de organismos e usado em minerao de dados para
obter relaes sobre dependncias entre variveis, na forma de algum formalismo interno
(AURLIO, 1999).
Os algoritmos genticos usam os operadores de seleo, cruzamento e mutao para
desenvolver sucessivas geraes de solues. Com a evoluo do algoritmo, somente as

21

solues com maior poder de previso tendem a sobreviver, at os organismos convergirem


em uma soluo ideal.
A tcnica de algoritmos genticos apropriada s tarefas de classificao e
segmentao e vem sendo amplamente difundida. Para uma reviso sobre o uso desses
algoritmos e maiores referncias, ver (REZENDE, 2003).

3.4 CLASSIFICAO
A tarefa de classificao consiste em construir um modelo de algum tipo que possa ser
aplicado a dados no classificados visando categoriz-los em classes. Um objeto examinado
e classificado de acordo com classes pr-definidas (REZENDE, 2003).
So exemplos de tarefas de classificao: classificar pedidos de crditos como de
baixo, mdio e alto risco; esclarecer pedidos de seguros fraudulentos; identificar a forma de
tratamento na qual um paciente est mais propcio a responder, baseando-se em classes de
pacientes que respondem bem a determinado tipo de tratamento mdico. Para maiores
referncias a respeito dessa tcnica, consulte (FREITAS, 1998) e (WEISS, 1998).

3.5 ANLISE DE CLUSTER


A anlise de cluster um processo de partio de uma populao heterognea em
vrios subgrupos mais homogneos. No agrupamento, no h classes pr-definidas, os
elementos so agrupados de acordo com a semelhana, o que a diferencia da tarefa de
classificao.
Este tpico ser tratado com detalhes mais adiante, constituindo-se o tema principal
deste trabalho.

22

3.6 REDES NEURAIS ARTIFICIAIS


Redes neurais artificiais (RNAs) so modelos matemticos que se assemelham s
estruturas biolgicas e que tm capacidade computacional adquirida por meio de aprendizado
e generalizao (HAYKIN, 1994).
O aprendizado em RNAs est associado capacidade de adaptarem seus parmetros
como conseqncia de sua interao com o ambiente de aprendizagem. O processo de
aprendizado interativo, e por meio dele, a RNA deve melhorar o seu desempenho
gradativamente (HAYKIN, 1994). O critrio de desempenho que determina a qualidade do
modelo neural e o ponto de parada de treinamento so preestabelecidos pelos parmetros de
treinamento. Por sua vez, a generalizao de uma RNA est associada capacidade de
fornecer respostas coerentes para dados no apresentados a ela, previamente, durante o
treinamento.
O processamento da informao em RNAs feito por meio de estruturas neurais
artificiais, em que o armazenamento e o processamento da informao so realizados de
maneira paralela e distribuda por elementos processadores relativamente simples, chamados
de neurnios artificiais.
O neurnio artificial dividido em duas sees funcionais, conforme figura 3.1.

Figura 3.2: Esquema de um neurnio artificial.

A primeira seo combina todas as entradas que alimenta o neurnio, podendo ser
estmulos do sistema ou sadas de outros neurnios. Essa etapa indica como as entradas sero
computadas (regra de propagao). A segunda seo recebe esse valor e faz um clculo

23

determinando o grau de importncia da soma ponderada utilizando uma funo de ativao.


Essa funo determina a que grau uma soma causar uma excitao ou inibio do neurnio.
A figura 3.2 traz um exemplo de uma RNA, onde os crculos representam os neurnios
artificiais e as linhas representam os pesos das conexes. A camada que recebe os dados
chamada camada de entrada e a camada que mostra o resultado chamada camada de sada. A
camada interna, onde se localiza o processamento interno, tradicionalmente chamada de
camada oculta. Uma RNA pode conter uma ou vrias camadas ocultas, de acordo com a
complexidade do problema, sendo, em geral, at 3 camadas..

Figura 3.3: Exemplo de uma rede neural.

Uma das caractersticas mais significativas de uma RNA a capacidade de


aprendizagem. A aprendizagem um processo no qual uma rede neural adapta seus
parmetros atravs de um processo de interao com o ambiente na qual esta inserida
(HAYKIN, 1994). Para isso, a rede deve passar por uma fase de treinamento. O objetivo do
treinamento fazer com que a aplicao de um conjunto de entradas produza um conjunto de
sadas desejado ou no mnimo um conjunto de sadas consistentes. Durante o treinamento, os
pesos da rede gradualmente devem convergir para determinados valores, tal que a aplicao
dos vetores de entrada produza as sadas desejadas.

24

Os procedimentos de aprendizagem que levam as RNAs a aprenderem determinadas


tarefas podem ser classificados em duas classes, sendo o aprendizado supervisionado e o nosupervisionado.
O aprendizado supervisionado caracteriza-se pela existncia de um elemento
supervisor, externo rede, que tem a funo de monitorar a resposta da rede para cada vetor
de entrada. O conjunto de treinamento formado por pares de entrada e sada. O ajuste de
pesos feito de maneira que a resposta da rede para o vetor de entrada se aproxime dentro de
limites de tolerncia preestabelecidos. Cada resposta da rede comparada pelo supervisor
com o valor esperado para se obter a direo de ajuste dos pesos (BRAGA, 2003).
O aprendizado no supervisionado caracteriza-se pela no existncia de sadas
desejadas para as entradas, sendo o conjunto de treinamento formado apenas pelos vetores de
entrada. Portanto, no h supervisor externo e o ajuste de pesos obtido apenas com base nos
valores dos vetores de entrada (BRAGA, 2003).
As principais aplicaes de redes neurais em minerao so classificao, anlise de
cluster, aproximao de funes, previso e verificao de tendncias.
De um modo geral, a arquitetura de uma RNA recebe um atributo como entrada
atravs da camada de entrada. Tratando-se de aprendizado no supervisionado, no existem
atributos objetivo que possam ser utilizados para corrigir os pesos da rede. Esse tipo de
aprendizado aplica-se, por exemplo, em tarefas de anlise de cluster. As redes autoorganizveis, por exemplo, Kohonen, baseadas em aprendizado competitivo, destacam-se
como um bom algoritmo.
Entretanto, em algoritmos supervisionados, os atributos objetivo so modelados pela
camada de sada da rede. Deste modo, o algoritmo pode estimar o quanto a sada desejada est
distante da sada real. O algoritmo mais comum em RNAs com aprendizado supervisionado
o back propagation. Seu objetivo minimizar a funo erro entre a sada real da rede e a sada

25

desejada utilizando o mtodo do gradiente descendente (HAYKIN, 1994). Back-propagation


utilizado para classificar, aproximar funes, prever e verificar tendncias.
Para a tarefa de classificao tambm so utilizadas as redes neurais probabilsticas,
baseadas em classificadores bayesianos e as redes RBF (Radial-Basis Function), baseadas em
funes gaussianas. Esses algoritmos geram curvas de densidade de probabilidade,
fornecendo resultados com bases estatsticas. Esses resultados indicam o grau de evidncia
sobre o qual se baseia a deciso. Entretanto, essa metodologia s funciona bem se existir um
nmero suficiente de exemplos na base de dados. Maiores detalhes e referncias sobre redes
neurais artificiais podem ser obtidos em (HAYKIN, 1994), (FAUSETT, 1994) e (BRAGA,
2003).

3.7 CONCLUSO
Nesse captulo, verificou-se, de forma concisa, algumas tcnicas utilizadas em
minerao de dados, onde cada uma possui caractersticas prprias, podendo ser empregadas
em conjunto para a resoluo de problemas. Alm das tcnicas descritas, outras so utilizadas,
como redes bayesianas (HECKERMAN, 1996) e sistemas neuro-fuzzy (AURLIO, 1999).
Dentre as tcnicas mencionadas, a anlise de cluster ser tratada em detalhes no
prximo captulo.

26

4 ANLISE DE CLUSTER

Nesse captulo, descreve-se alguns mtodos de anlise de cluster, tendo como objeto
de estudo, os mtodos hierrquicos e os no-hierrquicos de agrupamento. Primeiramente,
destacam-se medidas de similaridade e o uso da matriz de similaridade. Em seguida, a
descrio dos mtodos com seus algoritmos, funes distncia e algumas caractersticas,
trazendo um exemplo da formao dos grupos em cada mtodo. Na ltima seo, apresentamse, brevemente, outros mtodos, como agrupamentos fuzzy e mapas de Kohonen.
A anlise de cluster busca agrupar elementos de dados baseando-se na similaridade
entre eles. Os grupos so determinados de forma a obter-se homogeneidade dentro dos grupos
e heterogeneidade entre eles.
A necessidade de classificar elementos em grupos por suas caractersticas est presente
em vrias reas do conhecimento, como nas cincias biolgicas, cincias sociais e
comportamentais, cincias da terra, medicina, informtica, entre outras.
Tendo em vista a dificuldade de se examinar todas as combinaes de grupos
possveis em um grande volume de dados, desenvolveram-se diversas tcnicas capazes de
auxiliar na formao dos agrupamentos.
Uma anlise de cluster criteriosa exige mtodos que apresentem as seguintes
caractersticas (ZAIANE, 2003):

Ser capaz de lidar com dados com alta dimensionalidade;

Ser escalvel com o nmero de dimenses e com a quantidade de elementos a serem


agrupados;

Habilidade para lidar com diferentes tipos de dados;

Capacidade de definir agrupamentos de diferentes tamanhos e formas;

Exigir o mnimo de conhecimento para determinao dos parmetros de entrada;

27

Ser robusto presena de rudo;

Apresentar resultado consistente independente da ordem em que os dados so


apresentados;
Em geral, algoritmo algum atende a todos esses requisitos e, por isso, importante

entender as caractersticas de cada algoritmo para a escolha de um mtodo adequado a cada


tipo de dado ou problema (HALDIKI, 2001).

4.1 MEDIDAS DE SIMILARIDADE


A maioria dos mtodos de anlise de cluster requer uma medida de similaridade entre
os elementos a serem agrupados, normalmente expressa como uma funo distncia ou
mtrica.
Seja M um conjunto, uma mtrica em M uma funo d: MM , tal que para
quaisquer x, y, z M, tenhamos:
1. dxy > 0 - para todo x y
2. dxy = 0 x = y
3. dxy = dyx
4. dxy dxz + dzy
4.1.1 Distncia Euclidiana
A distncia euclidiana a distncia geomtrica no espao multidimensional.
A distncia euclidiana entre dois elementos X = [ X 1, X 2,..., Xp ] e Y = [Y 1, Y 2,..., Yp] ,
definida por:
d xy =

( X 1 Y 1)2 + ( X 2 Y 2 )2 + ... + ( Xp Yp) 2

( Xi Yi)

i =1

(4.1)

28

Exemplo. Considerando-se elementos como pontos no plano (espao euclidiano 2 ), a


distncia entre os elementos X0 = (1,2) e X1 = (3,4) dada por:
d x0 x1 = (3 1) 2 + (4 2 )2 = 8 = 2,83

(figura 4.1)

Figura 4.1: Distncia euclidiana entre os pontos X0 e X1 no plano.

4.1.2 Distncia Euclidiana Quadrtica


A distncia euclidiana quadrtica definida pela expresso:
p

d xy = ( X 1 Y 1) 2 + ( X 2 Y 2) 2 + ... + ( Xp Yp) 2 =

( Xi Yi)

(4.2)

i =1

Exemplo. Considerando-se os mesmos pontos X0 e X1 do exemplo anterior, observa-se a


intensificao da distncia:
d x0 x1 = (3 1)2 + (4 2) 2 = 8

4.1.3 Distncia de Manhattan


A distncia de Manhattan definida pela expresso:
p

d xy = X 1 Y 1 + X 2 Y 2 + ... + Xp Yp =

Xi Yi
i =1

(4.3)

29

Em muitos casos, a distncia de Manhattan apresenta resultados similares ao da


distncia Euclidiana. Entretanto, nessa medida, o efeito de uma grande diferena entre uma
das dimenses de um elemento minimizado, j que a mesma no elevada ao quadrado.

Exemplo. Empregando-se os pontos do exemplo anterior, temos:


d x0 x1 = 3 1 + 4 2 = 2 + 2 = 4

4.1.4 Distncia de Chebychev


A distncia de Chebychev apropriada no caso em que se deseja definir dois
elementos como diferentes, se apenas umas das dimenses diferente. Ela definida por:
d xy = mximo( X 1 Y 1 , X 2 Y 2 ,..., Xp Yp )

(4.4)

Exemplo. Considerando-se os pontos X2 = (9,2) e X3 = (2,5), a distncia de Chebychev dada


por:
d x 2 x3 = mximo( 9 2 , 2 5 ) = ( 7 , 3 ) = 7

As medidas de similaridade so utilizadas na anlise de cluster de forma a determinar


a distncia entre elementos. Essa distncia, normalmente representada na forma de matriz,
ou seja, em uma matriz de similaridade.
A matriz de similaridade simtrica e utiliza, na maioria dos casos, a distncia
Euclidiana.

30

Exemplo. Considerando os elementos da tabela 4.1, obtemos a matriz de similaridade D.


ELEMENTO

Tabela 4.1: Elementos do exemplo para matriz de similaridade.

1 0
4, 47
4
2
2 4, 47
0
2
4

3 4
2
0
4, 47
D=
4
4, 47
0
4 2
5 2, 24 2, 24 2, 24 2, 24
6 2,83 7, 21 6,32 4, 47

2, 24
2, 24
2, 24
2, 24
0
5

2,83
7, 21

6,32

4, 47
5
0

- sendo:
5 a distncia Euclidiana entre os elementos 6 e 5;
2,83 a distncia Euclidiana entre os elementos 1 e 6;
6,32 a distncia Euclidiana entre os elementos 3 e 6.

4.2 MTODOS HIERRQUICOS


O mtodo hierrquico de cluster consiste em uma srie de sucessivos agrupamentos ou
sucessivas divises de elementos, onde os elementos so agregados ou desagregados. Os
mtodos hierrquicos so subdivididos em mtodos aglomerativos e divisivos.
Os grupos, nos mtodos hierrquicos, so geralmente representados por um diagrama
bi-dimensional chamado de dendograma ou diagrama de rvore. Neste diagrama, cada ramo
representa um elemento, enquanto a raiz representa o agrupamento de todos os elementos. A
figura 4.2 traz um exemplo de dendograma.

31

Figura 4.2: Exemplo de dendograma.

Atravs do dendograma e do conhecimento prvio sobre a estrutura dos dados, deve-se


determinar uma distncia de corte para definir quais sero os grupos formados. Essa deciso
subjetiva, e deve ser feita de acordo o objetivo da anlise e o nmero de grupos desejados.

Exemplo.

Considerando o dendograma da figura 4.3, pode-se verificar que com trs

diferentes cortes, obtemos diferentes grupos:

Figura 4.3: Exemplo no qual o dendograma cortado em trs diferentes nveis.

No corte 1, verifica-se a existncia de cinco grupos, sendo (1,2), (3,4), (5), (6) e
(7,9,10,8). No corte 2, o nmero de grupos diminui para trs, sendo (1,2), (3,4,5) e

32

(6,7,9,10,8). Considerando o corte 3, o nmero de grupos diminui para dois, sendo (1,2) e
(3,4,5,6,7,9,10,8).
Dessa forma, o usurio dever escolher o corte mais adequado s suas necessidades e
estrutura dos dados.

4.2.1 Mtodos Aglomerativos


No mtodo aglomerativo, cada elemento inicia-se representando um grupo, e a cada
passo, um grupo ou elemento ligado a outro de acordo com sua similaridade, at o ltimo
passo, onde formado um grupo nico com todos os elementos.
Existe uma variedade de mtodos aglomerativos, que so caracterizados de acordo
com o critrio utilizado para definir as distncias entre grupos. Entretanto, a maioria dos
mtodos parecem ser formulaes alternativas de trs grandes conceitos de agrupamento
aglomerativo (ANDERBERG, 1973):
1) Mtodos de ligao (single linkage, complete linkage, average linkage, median linkage);
2) Mtodos de centride;
3) Mtodos de soma de erros quadrticos ou varincia (mtodo de Ward).
Os mtodos aglomerativos possuem a complexidade de tempo da ordem de
O(n 2 log n) e a complexidade de espao da ordem de O(n 2 ) , onde n o nmero de
elementos (JAIN, 1999).
De modo geral, os mtodos aglomerativos utilizam os passos de um algoritmo padro,
conforme descrito na figura 4.4. A diferena entre os mtodos ocorre no passo 5, onde a
funo distncia definida de acordo com cada mtodo (JOHNSON, 1992). Essas distncias
esto definidas para cada mtodo nas prximas sees.

33

Entrada: Uma base de dados com N elementos.


Sada: Um conjunto de grupos.
1. Iniciar com N grupos, contendo um elemento em cada
grupo e uma matriz de similaridade DNN;
2. Repetir;
3.
Localizar a menor distncia dUV (maior
similaridade);
4.
Atualizar a matriz D, retirando os elementos U e
V;
5.
Atualizar a matriz D, adicionando as novas
distncias do grupo (U,V);
6. At N-1, quando todos elementos estaro em um nico grupo.
Figura 4.4: Algoritmo padro.

Exemplo. Considerando-se os elementos da tabela 4.1, obteve-se a matriz D abaixo, onde,


aplicando uma iterao do algoritmo padro, temos:
1 0
4, 47
4
2
2 4, 47
0
2
4

3 4
2
0
4, 47
D=
4 2
4
4, 47
0
5 2, 24 2, 24 2, 24 2, 24
6 2,83 7, 21 6,32 4, 47

2, 24
2, 24
2, 24
2, 24
0
5

2,83
7, 21

6,32

4, 47
5
0

A menor distncia dUV est entre os elementos 1 e 4, e 3 e 2. Portanto, d14 = d32 = 2.


Como a distncia d14 a primeira a aparecer na matriz, os elementos 1 e 4 sero considerados
no primeiro agrupamento.
Assim, a matriz resultante aps uma iterao do algoritmo ser:

(1, 4 )
2
3
5
6

d 2(1, 4)
d 3(1, 4)

d 5(1, 4 )
d 6(1, 4 )

d (1, 4 ) 2

d (1, 4 ) 3

d (1, 4 ) 5

d (1, 4 ) 6

2, 24

7 , 21

2, 24

6,32

2, 24

2, 24

7 , 21

6,32

4.2.1.1 Mtodo Single Linkage ou ligao por vizinho mais prximo


O mtodo de ligao por vizinho mais prximo emprega a distncia de valor mnimo:
d (UV )W = min(d UW , d VW )

(4.5)

34

Exemplo. Utilizando a matriz do exemplo anterior, as distncias mnimas encontradas so:

CLCULO DAS DISTNCIAS

VALOR

d(1,4)2 = min(d12, d42) = min(4,47;4)

d(1,4)3 = min(d13, d43) = min(4;4,47)

d(1,4)5 = min(d15, d45) = min(2,24;2,24)

2,24

d(1,4)6 = min(d16, d46) = min(2,83;4,47)

2,83

Assim, a matriz resultante ser:


(1, 4 ) 0
2
3
5
6

4
4

2, 24
2,83

2,83

2, 24

2, 24

7 , 21

2, 24

6,32

2 , 24

2 , 24

7 , 21

6, 32

As demais iteraes sero repetidas como descrito no algoritmo padro, sempre


calculando, para esse mtodo, as distncias mnimas entre os elementos ou grupos.
A figura 4.5 traz a seqncia dos grupos formados em cada iterao do algoritmo.

Figura 4.5: Seqncia de agrupamentos realizada no mtodo de ligao por vizinho mais prximo.

35

A figura 4.6 traz o dendograma gerado pelo do mtodo de ligao por vizinho mais
prximo.

Figura 4.6: Dendograma aplicando o mtodo de ligao por vizinho mais prximo.

Algumas caractersticas desse mtodo so (ANDERBERG, 1973):


-

Em geral, grupos muito prximos podem no ser identificados;

Permite detectar grupos de formas no-elpticas;

Apresenta pouca tolerncia a rudo, pois tem tendncia a incorporar os rudos em um


grupo j existente;

Apresenta bons resultados tanto para distncias Euclidianas quanto para outras distncias;

Tendncia a formar longas cadeias (encadeamento).


Encadeamento um termo que descreve a situao onde h um primeiro grupo de um

ou mais elementos que passa a incorporar, a cada iterao, um grupo de apenas um elemento.
Assim, formada uma longa cadeia, onde torna-se difcil definir um nvel de corte para
classificar os elementos em grupos (ROMESBURG, 1984), conforme figura 4.7.

Figura 4.7: Fenmeno do encadeamento.

36

Esse fenmeno ocorre em dados com a distribuio mostrada na figura 4.8, onde cada
elemento tem como vizinho mais prximo o grupo formado na iterao anterior.

Figura 4.8: Grfico de disperso de dados com estrutura de encadeamento.

4.2.1.2 Mtodo Complete Linkage ou ligao por vizinho mais distante


Nesse mtodo, empregada a distncia mxima, dada por:
d (UV )W = max(d UW , d VW )

(4.6)

Exemplo. Utilizando a matriz do exemplo anterior, as distncias mximas encontradas so:

CLCULO DAS DISTNCIAS

VALOR

d(1,4)2 = max(d12, d42) = max(4,47;4)

4,47

d(1,4)3 = max(d13, d43) = max(4;4,47)

4,47

d(1,4)5 = max(d15, d45) = max(2,24;2,24)

2,24

d(1,4)6 = max(d16, d46) = max(2,83;4,47)

4,47

Assim, a matriz resultante ser:


(1, 4 ) 0
2
3
5
6

4, 47
4, 47

2, 24
4, 47

4, 47

4, 47

4, 47

2, 24

2, 24

7 , 21

2, 24

6,32

2, 24

2, 24

7 , 21

6,32

As demais iteraes sero repetidas como descrito no algoritmo padro, sempre


calculando, para esse mtodo, as distncias mximas entre os elementos ou grupos.

37

A figura 4.9 traz a seqncia dos grupos formados em cada iterao do algoritmo.

Figura 4.9: Seqncia de agrupamentos realizada no mtodo de ligao por vizinho mais distante.

De acordo com a figura 4.9, pode-se verificar que na quarta iterao do algoritmo no
mtodo de ligao por vizinho mais distante, os agrupamentos so realizados de maneira
diferente ao mtodo de ligao por vizinho mais prximo.
A figura 4.10 traz o dendograma gerado pelo do mtodo de ligao por vizinho mais
distante.

Figura 4.10: Dendograma aplicando o mtodo de ligao por vizinho mais distante.

Algumas caractersticas desse mtodo so (KAUFMANN, 1990):


-

Apresenta bons resultados tanto para distncias Euclidianas quanto para outras distncias;

Tendncia a formar grupos compactos;

Os rudos demoram a serem incorporados ao grupo.

38

Os mtodos de ligao por mais prximo e por vizinho mais distante trabalham em
direes opostas. Se eles apresentam resultados semelhantes, significa que o grupo est bem
definido no espao, ou seja, o grupo real. Mas se ocorre o contrrio, os grupos
provavelmente no existem (ROMESBURG, 1984).

4.2.1.3 Mtodo Average Linkage ou ligao por mdia


Nesse mtodo, a funo distncia definida por:
d (UV )W =

( N u .d UW + N v .d VW )
Nu + Nv

(4.7)

- onde: N U e N V so os nmeros de elementos no grupo U e V, respectivamente;


d UW e d VW so as distncias entre os elementos UW e VW, respectivamente.

Exemplo. Considerando-se a matriz do exemplo anterior, as distncias mdias so calculadas


a seguir:

CLCULO DAS DISTNCIAS

d(1,4)2 =
d(1,4)3 =
d(1,4)5 =
d(1,4)6 =

VALOR

(1.4, 47 + 1.4 )

4,24

1+1
(1.4 + 1.4, 47 )

4,24

1+1
(1.2, 24 + 1.2, 24)

2,24

1+1
(1.2,83 + 1.4, 47 )

3,65

1+1

Assim, a matriz resultante ser:


(1, 4 ) 0
2
3
5
6

4, 24
4, 24

2, 24
3, 65

3, 65

4 , 24

4 , 24

2, 24

2, 24

7 , 21

2, 24

6,32

2 , 24

2 , 24

7 , 21

6, 32

39

As demais iteraes sero repetidas como descrito no algoritmo padro, sempre


calculando, para esse mtodo, as distncias mdias entre os elementos ou grupos.
A figura 4.11 traz a seqncia dos grupos formados em cada iterao do algoritmo:

Figura 4.11: Seqncia de agrupamentos realizada no mtodo de ligao por mdia.

De acordo com a figura 4.11, pode-se verificar que na quarta iterao do algoritmo no
mtodo de ligao por mdia, os agrupamentos so realizados de maneira diferente do mtodo
de ligao por vizinho mais distante e igual ao mtodo de ligao por vizinho mais prximo.
A figura 4.12 traz o dendograma gerado pelo do mtodo de ligao por mdia.

Figura 4.12: Dendograma aplicando o mtodo de ligao por mdia.

40

Algumas caractersticas desse mtodo so (KAUFMANN, 1990):


-

Menor sensibilidade rudos que o os mtodos de ligao por vizinho mais prximo e por
vizinho mais distante;

Apresenta bons resultados tanto para distncias Euclidianas quanto para outras distncias;

Tendncia a formar grupos com nmero de elementos similares.

4.2.1.4 Mtodo Centroid Linkage ou ligao por centride


Nesse mtodo, a funo distncia definida por:
d (UV )W =

N U .d UW + N V .d VW N U .N V .d UV

NU + NV
( NU + NV ) 2

(4.8)

- onde: N U e N V so os nmeros de elementos no grupo U e V, respectivamente;


d UW e d VW so as distncias entre os elementos UW e VW, respectivamente.

Exemplo. Utilizando a matriz do exemplo anterior, as distncias so calculadas a seguir:

CLCULO DAS DISTNCIAS

d(1,4)2 =
d(1,4)3 =
d(1,4)5 =
d(1,4)6 =

1.4, 47 + 1.4
1+1
1.4 + 1.4, 47
1+1

1.2, 24 + 1.2, 24
1+1
1.2,83 + 1.4, 47
1+1

VALOR

1.1.1
(1 + 1)

3,99

3,99

1.1.1
(1 + 1)

1.1.1
(1 + 1)

1,99

3,4

1.1.1
(1 + 1)

Assim, a matriz resultante ser:


(1, 4 ) 0
2
3
5
6

3,99
3,99

1,99
3, 4

3, 4

3,99

3,99

1,99

2, 24

7 , 21

2, 24

6, 32

2, 24

2, 24

7 , 21

6 ,32

41

As demais iteraes sero repetidas como descrito no algoritmo padro, sempre


calculando, para esse mtodo, as distncias entre os centrides.
A figura 4.13 traz a seqncia dos grupos formados em cada iterao do algoritmo:

Figura 4.13: Seqncia de agrupamentos realizada no mtodo de ligao por centride.

A figura 4.14 mostra o dendograma gerado pelo do mtodo de ligao por centride:

Figura 4.14: Dendograma aplicando o mtodo de ligao por centride.

Como caractersticas desse mtodo, encontram-se:


-

Robustez presena de rudos;

Devido ao fenmeno da reverso, o mtodo no muito utilizado.

42

O fenmeno da reverso ocorre quando a distncia entre centrides menor que a


distncia entre grupos j formados, isso far com que os novos grupos se formem ao um nvel
inferior aos grupos existentes, tornando o dendograma confuso.
O centride o ponto mdio no espao multidimensional e representa o centro de
gravidade do respectivo grupo.
No exemplo, observa-se o fenmeno da reverso, pois na primeira ligao, entre os
elementos 1 e 4, a distncia entre centrides foi maior que na segunda ligao, entre o grupo
(1,4) e o elemento 5. A figura 4.15 traz, passo a passo, a ligao entre os elementos.

Figura 4.15: Etapas de ligao entre os elementos.

4.2.1.5 Mtodo Median Linkage ou ligao por mediana


Nesse mtodo, a funo distncia dada por:
d (UV )W =

d UW + d VW d UV

2
4

- onde: d UW e d VW so as distncias entre os elementos UW e VW, respectivamente.

(4.9)

43

Exemplo. Utilizando a matriz do exemplo anterior, as distncias so calculadas a seguir:

CLCULO DAS DISTNCIAS

d(1,4)2 =

4, 47 + 4

d(1,4)3 =

4 + 4, 47

3,99

2, 4 + 2, 4

d(1,4)6 =

3,99

d(1,4)5 =

VALOR

1,99

2,83 + 4, 47

3,4

Assim, a matriz resultante ser:


(1, 4 ) 0
2
3
5
6

3,99
3,99

1,99
3, 4

3,99

3,99

1,99

2, 24

2, 24

2, 24

2, 24

7 , 21

6 ,32

7 , 21

6, 32

3, 4

As demais iteraes sero repetidas como descrito no algoritmo padro, sempre


calculando, para esse mtodo, as distncias entre os elementos ou grupos de acordo com a
equao 4.9.
A figura 4.16 traz a seqncia dos grupos formados em cada iterao do algoritmo.

Figura 4.16: Seqncia de agrupamentos realizada no mtodo de ligao por mediana.

44

A figura 4.17 mostra o dendograma gerado pelo do mtodo de ligao por mediana:

Figura 4.17: Dendograma aplicando o mtodo de ligao por mediana.

Algumas caractersticas referentes a esse mtodo so:


-

Apresenta resultado satisfatrio quando os grupos possuem tamanhos diferentes;

Pode apresentar resultado diferente quando permutado os elementos na matriz de


similaridade;

Robustez presena de outliers.

4.2.1.6 Mtodo de ligao de Ward


Nesse mtodo, a funo distncia dada por:
d (UV )W =

(( N W + N U ).d UW + ( N W + N V ).d VW N W .d UV )
NW + NU + NV

- onde: N U e N W so os nmeros de elementos no grupo U e V, respectivamente;


d UW e d VW so as distncias entre os elementos UW e VW, respectivamente.

(4.10)

45

Exemplo. Utilizando a mesma matriz do exemplo anterior, as distncias so calculadas a


seguir:
CLCULO DAS DISTNCIAS

d(1,4)2 =

VALOR

((1 + 1).4, 47 + (1 + 1).4 1.1)

5,31

d(1,4)3 =

((1 + 1).4 + (1 + 1).4, 47 1.1)

5,31

d(1,4)5 =

((1 + 1).2, 24 + (1 + 1).2, 24 1.1)

2,65

d(1,4)6 =

((1 + 1).2,83 + (1 + 1).4, 47 1.1)

4,53

Assim, a matriz resultante ser:


(1, 4 ) 0
2
3
5
6

5,31
5,31

2,65
4,53

4, 53

5,31

5,31

2 , 65

2 , 24

7 , 21

2 , 24

6 ,32

2, 24

2 , 24

7 , 21

6, 32

Os demais passos sero repetidos como descrito no algoritmo padro, sempre


calculando, para esse mtodo, as distncias entre os elementos ou grupos de acordo com a
equao 4.10.
A figura 4.18 traz a seqncia dos grupos formados em cada iterao do algoritmo.

Figura 4.18: Seqncia de agrupamentos realizada no mtodo de ligao de Ward.

46

A figura 4.19 mostra o dendograma gerado pelo do mtodo de ligao de Ward.

Figura 4.19: Dendograma aplicando o mtodo de ligao de Ward.

Algumas caractersticas desse mtodo so:


-

Apresenta bons resultados tanto para distncias euclidianas quanto para outras distncias;

Pode apresentar resultados insatisfatrios quando o nmero de elementos em cada grupo


praticamente igual;

Tem tendncia a combinar grupos com poucos de elementos;

Sensvel presena de outliers.


A tabela 4.2 traz um resumo dos mtodos aglomerativos.

MTODO

DISTNCIA

CARACTERSTICAS

Ligao por vizinho


mais prximo
Ligao por vizinho
mais distante

d (UV )W = min(d UW , d VW )

( N u .d UW + N v .d VW )
Nu + Nv

Sensibilidade rudos.
Encadeamento.
Tendncia a formar
grupos compactos.
Tendncia a formar
grupos com nmero de
elementos similares.

N U .d UW + N V .d VW N U .N V .d UV

NU + NV
( NU + NV ) 2

Robustez rudos.
Reverso.

Ligao por mdia


Ligao por centride

d (UV )W = max(d UW , d VW )
d (UV )W =
d (UV )W =

d UW + d VW d UV
Robustez rudos.

2
4
(( N W + N U ).d UW + ( N W + N V ).d VW N W .d UV )
Sensibilidade rudos.
Ligao de Ward d (UV )W =
NW + NU + NV
Tabela 4.2: Resumo dos mtodos hierrquicos aglomerativos.

Ligao por mediana

d (UV )W =

47

4.2.2 Mtodos Divisivos


Os mtodos divisivos trabalham na direo oposta dos mtodos aglomerativos, ou
seja, um grupo inicial contendo todos os elementos dividido em dois subgrupos, de tal forma
que os elementos em um subgrupo estejam distantes dos elementos do outro subgrupo.
Esses subgrupos so ento divididos em subgrupos dissimilares e o processo continua
at cada elemento formar um grupo (figura 4.20).

Figura 4.20: Relao entre o mtodo aglomerativo e divisivo.

Os mtodos divisivos so pouco mencionados na literatura, pois exigem uma maior


capacidade computacional que os mtodos aglomerativos (KAUFMAN, 1990).
Comparando apenas o primeiro passo dos mtodos aglomerativos e divisivos, notamos
que o mtodo divisivo exige um maior nmero de iteraes. No primeiro passo do mtodo
aglomerativo so consideradas todas as unies possveis de dois elementos, tendo a
complexidade de tempo da ordem O(N 2 ) , sendo N o nmero de elementos. Este nmero
cresce quadraticamente medida que N aumenta, ou seja, seu crescimento acelerado.
Mesmo assim a implementao do algoritmo computacionalmente vivel.
J o mtodo divisivo, baseado no mesmo princpio, comear considerando todas as
divises dos elementos em dois grupos, com pelo menos um elemento em cada grupo, tendo a
complexidade de tempo da ordem de O(2 N ) . Este nmero cresce exponencialmente medida
que N aumenta, dessa forma, para um grande nmero de elementos, torna-se invivel sua
implementao computacional.

48

Exemplo. Considerando-se 15 elementos no primeiro passo dos mtodos aglomerativo e


divisivo, observa-se uma grande diferena no nmero de possibilidades de agrupamento:
N

Mtodo aglomerativo =
2

N (N 1)
2

15(15 1)
=
2

105 possibilidades

Mtodo divisivo - 2N 1 1 = 215 1 1 = 16.383 possibilidades

possvel, entretanto, construir mtodos divisivos que no considerem o conjunto


completo de divises possveis (MACNAUGHTON-SMITH, 1964). Um desses mtodos
apresentado a seguir.
4.2.2.1 Mtodo de MACNAUGHTON-SMITH

O algoritmo de MacNaughton-Smith consegue contornar esse problema do


crescimento exponencial de iteraes, exigindo, no pior caso, duas vezes mais iteraes que
os mtodos aglomerativos.
A figura 4.21 traz a descrio desse algoritmo.
Entrada: A base de dados com N elementos.
Sada: Um conjunto de grupos.
1. j=1;
2. Repetir;
3.
Escolher o grupo Gj com maior nmero de elementos Nj;
4.
Iniciar uma matriz Dnjnj;
5.
Calcular a similaridade mdia Sm de cada elemento do grupo Gj em
relao aos demais;
6.
Fazer enquanto Sm > 0;
7.
Retirar o elemento e com maior Sm do grupo Gj;
8.
Armazenar o elemento e no grupo Fj;
9.
(re)Calcular
a
similaridade
mdia
Si
entre
os
elementos que restaram no grupo Gj;
10.
(re)Calcular a similaridade mdia Sa entre cada
elemento do grupo Gj e o grupo Fj;
11.
Sm = Si Sa;
12.
Fim;
13.
j=j+1;
14. At restarem apenas grupos com dois elementos;
15. Repetir;
16.
Escolher o grupo H com maior similaridade mdia;
17.
Dividir o grupo H;
18. At que todos grupos sejam divididos;
Figura 4.21: Algoritmo de MacNaughton-Smith.

49

Exemplo. Dada a matriz D abaixo e aplicando o algoritmo MacNaughton-Smith, temos:


1 0

2 4, 47

3 4
D=
4 2

5 2, 24
6
2,83

4, 47

2, 24

2, 24

4, 47

2, 24

4, 47

2, 24

2, 24

2, 24

2, 24

7 , 21

6,32

4, 47

2,83

7 , 21

4, 47

5
0

6,32

Calculando a similaridade mdia, obtm-se:

ELEMENTO

SIMILARIDADE MDIA RELATIVA AOS DEMAIS ELEMENTOS


4,47 + 4 + 2 + 2,24 + 2,83

= 3,11

5
4,47 + 2 + 4 + 2,24 + 7,21

= 3,98

4 + 2 + 4,47 + 2,24 + 6,32

5
2 + 4 + 4,47 + 2,24 + 4,47

5
2,24 + 2,24 + 2,24 + 2,24 + 5

5
2,83 + 7,21 + 6,32 + 4,47 + 5

= 3,81
= 3,44
= 2,79
= 5,17

O elemento 6 possui a maior similaridade, sendo ento, retirado do grupo (1,2,3,4,5,6).


Calculando a similaridade mdia para os elementos que restaram no grupo, a
similaridade mdia entre cada elemento do grupo e o elemento retirado e a diferenas desses
valores, obtemos:
ELEMENTO

SIMILARIDADE MDIA RELATIVA AOS


DEMAIS ELEMENTOS
4,47 + 4 + 2 + 2,24
4

2
3
4
5

4,47 + 2 + 4 + 2,24
4
4 + 2 + 4,47 + 2,24
4
2 + 4 + 4,47 + 2,24
4

SIMILARIDADE MDIA RELATIVA


AO ELEMENTO RETIRADO (6)

DIFERENA

= 3,18

d1,6 = 2,83

0,35

= 3,18

d2,6 = 7,21

-4,03

= 3,18

d3,6 = 6,32

-3,14

= 3,18

d4,6 = 4,47

-1,29

d5,6 = 5

-2,76

2,24 + 2,24 + 2,24 + 2,24


4

= 2,24

50

Na tabela acima, verifica-se que o elemento 1 possui a maior diferena positiva, sendo
ento retirado do grupo (1,2,3,4,5) e agrupado ao elemento (6).
Recalculando a similaridade mdia entre os elementos do grupo (2,3,4,5), a
similaridade dos elementos desse grupo em relao ao grupo (1,6) e a diferena desses
valores, obtemos:

ELEMENTO

SIMILARIDADE MDIA RELATIVA AOS


DEMAIS ELEMENTOS
2 + 4 + 2,24

= 2,75

4, 47 + 2,83
4 + 6,32

= 2,90

= 5,16

-2,26

2 + 4, 47

= 3,57

= 3,24

0,33

= 3,62

-1,38

2,24 + 2,24 + 2,24

-0,90

4 + 4,47 + 2,24

= 3,65

DIFERENA

2 + 4, 47 + 2, 24

SIMILARIDADE MDIA RELATIVA AOS


ELEMENTOS DO NOVO GRUPO (1,6)

2, 24 + 5

= 2,24

Na tabela acima, verifica-se que o elemento 4 possui a maior diferena positiva, sendo
ento, retirado do grupo (2,3,4,5) e agrupado ao grupo (1,6).
Recalculando a similaridade mdia entre os elementos do grupo (2,3,5), a similaridade
dos elementos desse grupo em relao ao grupo (1,4,6) e a diferena desses valores, obtemos:

ELEMENTO

SIMILARIDADE MDIA RELATIVA AOS


DEMAIS ELEMENTOS
2 + 2,24

= 2,12

3
5

2 + 2,24

= 2,12

4,47 + 4 + 7,21

4 + 4,47 + 6,32

= 2,24

2,24 + 2,24 + 5
3

DIFERENA

= 5,21

-3,10

= 4,93

-2,81

= 3,16

-0,92

2,24 + 2,24

SIMILARIDADE MDIA RELATIVA AOS


ELEMENTOS DO NOVO GRUPO (1,4,6)

Na tabela acima, verifica-se que todas diferenas so negativas, portanto, no h


elementos a serem retirados do grupo (2,3,5).
Os dois grupos formados possuem trs elementos, portanto, ser escolhido o grupo
(2,3,5) para prosseguir com as divises.

51

Assim, temos a seguinte matriz de similaridade:


2 0

D = 3 2

5 2, 24

2, 24

2, 24

0
2, 24

Calculando a similaridade mdia de cada elemento em relao aos demais, obtm-se:

ELEMENTO

SIMILARIDADE MDIA EM RELATIVA AOS DEMAIS ELEMENTOS


2 + 2,24

= 2,12

2
2 + 2,24

= 2,12

2
2,24 + 2,24

= 2,24

Na tabela acima, verifica-se que o elemento 5 possui a maior similaridade mdia,


assim, ele ser retirado do grupo (2,3,5).
Calculando a similaridade mdia entre os elementos do grupo (2,3), a similaridade dos
elementos desse grupo em relao ao elemento (5) e a diferena desses valores, obtemos:

ELEMENTO

SIMILARIDADE MDIA RELATIVA AOS


DEMAIS ELEMENTOS

SIMILARIDADE MDIA RELATIVA AO


ELEMENTO RETIRADO (5)

DIFERENA

d23 = 2

d25 = 2,24

-0,24

d32 = 2

d35 = 2,24

-0,24

Como as diferenas so negativas, no necessrio agrupar elementos ao elemento 5.


Considerando o grupo (1,4,6), temos a seguinte matriz de similaridade:
1 0

D = 4 2

6 2,83

2
0
4, 47

2,83

4, 47
0

52

Calculando a similaridade mdia de cada elemento em relao aos demais, obtemos:

ELEMENTO

SIMILARIDADE MDIA RELATIVA AOS DEMAIS ELEMENTOS


2 + 2,83

2
2 + 4,47

2
2,83 + 4,47

= 2,42
= 3,24
= 3,65

Como a similaridade mdia do elemento 6 a maior, ele ser retirado do grupo (1,4,6).
Calculando a similaridade mdia entre os elementos do grupo (1,4), a similaridade dos
elementos desse grupo em relao ao elemento (6) e a diferena desses valores, obtemos:

ELEMENTO

SIMILARIDADE MDIA RELATIVA AOS


DEMAIS ELEMENTOS

SIMILARIDADE MDIA RELATIVA AO


ELEMENTO RETIRADO (6)

DIFERENA

d14 = 2

d16 = 2,83

-0,83

d41 = 2

d46 = 4,47

-2,47

Como as diferenas so negativas, no necessrio agrupar elementos ao elemento 6.


Restam grupos com apenas um ou dois elementos. Portanto, sero divididos os grupo
(1,4) e (2,3).
Como d23 e d14 so iguais, o primeiro grupo, ou seja, (2,3), ser dividido primeiro.
Como foi dito anteriormente, o mtodo divisivo de MacNaughton-Smith realizou um
maior nmero de iteraes para a formao dos agrupamentos que os mtodos aglomerativos.

53

A figura 4.22 traz a seqncia dos grupos formados em cada iterao do algoritmo.

Figura 4.22: Seqncia de agrupamentos realizada no mtodo MacNaughton-Smith.

A figura 4.23 mostra o dendograma gerado pelo do mtodo de MacNaughton-Smith.

Figura 4.23: Dendograma aplicando o mtodo de MacNaughton-Smith.

O algoritmo de MacNaughton-Smith, ao utilizar todas variveis simultaneamente


(matriz de similaridade), considerado um mtodo polittico. Existem tambm os mtodos
divisivos que fazem cada diviso de acordo com uma nica varivel, esses so chamados de

54

monotticos. O mtodo polittico possui a vantagem de ter implementao mais fcil que o
monottico por utilizar a matriz de similaridade e, alm disso, apresentam melhores
resultados.
Comparando os mtodos aglomerativos com os divisivos, verifica-se que o mtodo
divisivo possui vantagem ao considerar no primeiro estgio muitas divises, diminuindo a
probabilidade de uma deciso errada. Portanto, esse mtodo torna-se mais seguro que o
aglomerativo (KAUFMAN, 1990).

4.3 MTODOS NO-HIERRQUICOS OU POR PARTICIONAMENTO


Os mtodos no-hierrquicos, ou por particionamento, foram desenvolvidos para
agrupar elementos em K grupos, onde K a quantidade de grupos definida previamente.
Nem todos valores de K apresentam grupos satisfatrios, sendo assim, aplica-se o
mtodo vrias vezes para diferentes valores de K, escolhendo os resultados que apresentem
melhor interpretao dos grupos ou uma melhor representao grfica (BUSSAB, 1990).
A idia central da maioria dos mtodos por particionamento escolher uma partio
inicial dos elementos e, em seguida, alterar os membros dos grupos para obter-se a melhor
partio (ANDERBERG, 1973).
Quando comparado com o mtodo hierrquico, o mtodo por particionamento mais
rpido porque no necessrio calcular e armazenar, durante o processamento, a matriz de
similaridade.
Em geral, os mtodos por particionamento diferem entre si pela maneira que
constituem a melhor partio. Os mtodos por particionamento mais conhecidos so o mtodo
k-means (k-mdias) e o mtodo k-medoid (k-medides), e so descritos a seguir.

55

4.3.1 Mtodo k-means


O mtodo k-means toma um parmetro de entrada, K, e particiona um conjunto de N
elementos em K grupos, conforme figura 4.24:
Entrada: O nmero de grupos, K, e a base de dados com N
elementos.
Sada: Um conjunto de K grupos.
1. Escolher arbitrariamente K elementos da base de dados
como os centros iniciais dos grupos;
2. Repetir;
3.
(re)Atribua cada elemento ao grupo ao qual o
elemento mais similar, de acordo com o valor
mdio dos elementos no grupo;
4.
Atualizar as mdias dos grupos, calculando o valor
mdio dos elementos para cada grupo;
5. At que no haja mudanas de elementos de um grupo
para outro.
Figura 4.24: Algoritmo do k-means.

Esse mtodo possui uma complexidade de tempo da ordem de O(nkl ) e uma


complexidade de espao da ordem de O(k + n) , onde n o nmero de elementos, k o
nmero de grupos e l o nmero de iteraes do algoritmo (JAIN et al, 1999).
Exemplo. Considerando os elementos e variveis da tabela 4.3, assumindo K=2, tais como
(1,2,3) e (4,5,6), obtemos:
VARIVEIS

ELEMENTO

1
4
3
2
2
7
3
4
7
4
2
3
5
3
5
6
6
1
Tabela 4.3: Conjunto de dados exemplo.

Calculando a mdia dos grupos (1,23) e (4,5,6), temos:


VARIVEIS

GRUPO

(1,2,3)

X
4+2+4
3

(4,5,6)

2+3+6
3

Y
= 3,33
= 3,67

3+7+7
3

= 5,67

3+5 +1
3

=3

56

Calculando a distncia Euclidiana de cada objeto ao centride dos grupos, obtm-se:

DISTNCIA DE CADA ELEMEMTO AO CENTRIDE DOS GRUPOS

VALOR

de(1(1,2,3)) =

(4 4)2 + (3 3 )2

de(1(4,5,6)) =

(4 2)2 + (3 7 )2

4,47

de(2(1,2,3)) =

(2 4)2 + (7 3 )2

4,47

de(2(4,5,6)) =

(2 2)2 + (7 7)2

de(3(1,2,3)) =

(4 4)2 + (7 3 )2

de(3(4,5,6)) =

(4 2)2 + (7 7 )2

Na tabela acima, verifica-se que os elementos 2 e 3 esto mais prximos do grupo


(4,5,6). Assim, eles sero retirado do grupo (1,2,3) e associados ao grupo (4,5,6).
Recalculando o centride dos grupos, temos:
COORDENADAS
GRUPO

1
(2,3,4,5,6)

( 2 + 4 + 2 + 3 + 6)

= 3,4

(7 + 7 + 3 + 5 + 1)

= 4,6

Calculando a distncia Euclidiana de cada objeto ao centride dos grupos, temos:


DISTNCIA DE CADA ELEMEMTO AO CENTRIDE DOS GRUPOS

de (4(1)) =
de (4(2,3,4,5,6)) =
de (5(1)) =
de (5(2,3,4,5,6)) =
de (6(1)) =
de (6(2,3,4,5,6)) =

RESULTADO

(2 4)2 + (3 3 )2
(2 3,4 )2 + (3 4,6 )2
(3 4)2 + (5 3 )2

2
2,17
2,24

(3 3,4 )2 + (5 4,6 )2

0,57

(6 4 )2 + (1 3 )2

2,83

(6 3,4 )2 + (1 4,6 )2

4,44

Na tabela acima, verifica-se que os elementos 4 e 6 esto mais prximos do grupo (1).
Assim, eles sero retirados do grupo (2,3,4,5,6) e associados ao grupo (1).

57

Recalculando o centride dos grupos, obtm-se:


COORDENADAS
GRUPO

x
(1,4,6)
(2,3,,5)

( 4 + 2 + 6)

3
(2 + 4 + 3)

=4
=3

(3 + 3 + 1)

3
(7 + 7 + 5)

= 2,33
= 6,33

Calculando a distncia Euclidiana de cada elemento ao centride dos grupos,


temos:
DISTNCIA DE CADA ELEMEMTO AO CENTRIDE DOS GRUPOS

RESULTADO

de (1(1,4,6)) =

(4 4 )2 + (3 2,33 )2

0,45

de (1(2,3,5)) =

(4 3 )2 + (3 6,33 )2

12,09

de (2(1,4,6)) =

(2 4 )2 + (7 2,33 )2

25,81

de (2(2,3,5)) =

(2 3)2 + (7 6,33 )2

1,45

de (3(1,4,6)) =

(4 4 )2 + (7 2,33 )2

21,81

de (3(2,3,5)) =

(4 3 )2 + (7 6,33 )2

1,45

de (4(1,4,6)) =

(2 4 )2 + (3 2,33 )2

4,45

de (4(2,3,5)) =

(2 3)2 + (3 6,33 )2

12,09

de (5(1,4,6)) =

(3 4 )2 + (5 2,33 )2

8,13

de (5(2,3,5)) =

(3 3)2 + (5 6,33 )2

1,77

de (6(1,4,6)) =

(6 4)2 + (1 2,33 )2

5,77

de (6(2,3,5)) =

(6 3 )2 + (1 6,33 )2

37,41

Verificando a necessidade de realocao, observa-se que cada elemento est


corretamente associado ao grupo com o centride mais prximo, ou seja, cada elemento
possui menor distncia em relao ao grupo no qual faz parte do que em relao ao outro
grupo. Sendo assim, o processo encerra-se com os grupos (1,4,6) e (2,3,5) conforme figura
4.25.

58

Figura 4.25: Seqncia de agrupamentos realizada no mtodo k-means.

Algumas caractersticas desse mtodo so:


-

Sensibilidade a rudos, uma vez que um elemento com um valor extremamente alto pode
distorcer a distribuio dos dados;

Tendncia a formar grupos esfricos;

O nmero de grupos o mesmo durante todo o processo;

Inadequado para descobrir grupos com formas no convexas ou de tamanhos muito


diferentes.

4.3.2 Mtodo k-medoid


O mtodo k-medoid utiliza o valor mdio dos elementos em um grupo como um ponto
referncia, chamado de medide. Esse o elemento mais centralmente localizado em um
grupo.
A estratgia bsica encontrar K grupos em N elementos e, arbitrariamente, encontrar um
elemento representativo (medide) para cada grupo. Cada elemento remanescente agrupado
com o medide ao qual ele mais similar. A estratgia, ento, iterativamente, troca um dos
medides por um dos no medides enquanto a qualidade do agrupamento resultante
melhorada.

59

A figura 4.26 traz o algoritmo k-medoid:


Entrada: O nmero de grupos, K, e a base de dados com N
elementos.
Sada: Um conjunto de K grupos.
1. Escolher, arbitrariamente, K elementos da base de
dados como os medides iniciais dos grupos;
2. Repetir;
3.
atribua cada elemento remanescente ao grupo com o
medide mais prximo;
4.
aleatoriamente, selecione um elemento que no
esteja como medide, r;
5.
calcule o custo total, S, de trocar o medide Oj
pelo elemento r;
6.
se S < 0 ento troque Oj por r para formar o novo
conjunto de k-medides;
7. At que no haja mudana de objetos de um grupo para
outro.
Figura 4.26: Algoritmo k-medoid.

Exemplo. Considerando os mesmos elementos do exemplo anterior, assumindo K=2 e


escolhendo, aleatoriamente, os elementos 1 e 4 como medides iniciais, temos:

ELEMENTOS (i)

di1

di4

Min(di1,di4)

MEDIDE MAIS PRXIMO

1
2
3
4
5
6

0
4,47
4
2
2,24
2,83

2
4
4,47
0
2,24
4,47

0
4
4
0
2,24
2,83
Mdia1,4 = 2,18

1
4
1
4
1
1

Com base na tabela acima, verificamos que os elementos 2, 5 e 6 so agrupados ao


elemento 1, pois esto mais prximos desse medide. O nico elemento mais prximo ao
medide 4 o elemento 3, portanto ser agrupado a esse.
A mdia das similaridades mnimas, calculada acima, representa a qualidade dos
grupos encontrados. Quanto menor esse valor, melhor a qualidade dos grupos. Essa mdia
utilizada para encontrar o custo, S, na mudana de medide.
Para verificar a necessidade de mudana de medide, selecionamos aleatoriamente o
elemento 6 e calculamos o custo de trocar o medide 1 por 6.

60

ELEMENTOS (i)

di6

di4

min(di6,di4)

MEDIDE MAIS PRXIMO

1
2
3
4
5
6

2,83
7,21
6,32
4,47
5
0

2
4
4,47
0
2,24
4,47

2
4
4,47
0
2,24
0
Mdia6,4 = 2,12

4
4
4
4
4
6

Na tabela acima, verificamos que os elementos 1, 2, 3 e 5 so agrupados ao elemento


4, pois esto mais prximos desse medide. Nenhum elemento agrupado ao medide 6.
Calculando o custo de troca do medide 1 pelo 6, temos:
S1,6 = Mdia6,4 - Mdia1,4 = 2,12-2,18 = - 0,06
Como o custo menor que zero, o medide 1 substitudo pelo medide 6.
O algoritmo prossegue selecionando novos no-medides verificando a necessidade de
substituir os medides. Essa anlise feita para todos os pares de elementos.
Na tabela abaixo, temos um resumo dos resultados:

MEDIDES

MDIAS

(1-4)
(4-6)
(2-6)
(1-2)
(1-5)
(1-6)
(1-3)
(2-3)
(2-4)
(2-5)
(3-5)
(3-4)
(4-5)
(4-6)
(3-6)
(5-6)

2,18
2,12
1,85
1,51
1,55
2,12
1,51
2,76
1,79
1,91
1,91
1,79
1,83
2,12
1,92
1,49

Verificando a tabela acima, os medides 5 e 6 possuem a menor mdia e, portanto, so


os medides finais e sero utilizados para formar os grupos.

61

Os elementos 1, 2, 3 e 4 so agrupados ao medide 5. Nenhum elemento agrupado


ao medide 6.
Sendo assim, o processo encerra-se com os grupos (1,2,3,4,5) e (6), conforme figura
4.27.

Figura 4.27: Agrupamentos realizados no mtodo k-medoid.

Algumas caractersticas desse mtodo so:


-

Independente da ordem, os resultados sero os mesmos;

Tendncia a encontrar grupos esfricos;

Processamento mais custoso que o k-means;

No aplicvel grandes bases de dados, pois o custo de processamento alto;

Mais robusto do que o k-means na presena de rudos porque o medide menos


influenciado pelos rudos do que a mdia.
Uma forma de otimizar o mtodo k-medoid para grandes bases de dados considerar

uma poro dos dados como uma amostra representativa, e escolher os medides dessa
amostra. Se a amostra selecionada aleatoriamente, ela dever representar bem o conjunto de
dados originais, apresentando bons resultados (KAUFMAN, 1990).

62

4.4 OUTROS MTODOS


Alm das tcnicas estatsticas de anlise de cluster hierrquica e no-hierrquica,
outras tcnicas como algoritmos evolutivos (JAIN, 1999), agrupamentos fuzzy, redes neurais
(mapas de Kohonen), entre outras, podem ser empregadas para formao de agrupamentos.
Aqui, ilustramos, brevemente, as tcnicas de agrupamento fuzzy e mapas de Kohonen,
indicando referncias mais adequadas a essas tcnicas.

4.4.1 Agrupamentos fuzzy


O agrupamento fuzzy uma generalizao dos mtodos por particionamento e, assim
como nos mtodos por particionamento, tambm necessrio indicar o nmero inicial de
grupos.
Nos mtodos por particionamento, definem-se claramente em qual grupo ficar cada
elemento, ou seja, so definidos agrupamentos rgidos (crisp cluster). J os agrupamentos
fuzzy permitem visualizar a grau de associao de cada elemento em cada grupo, que
geralmente se verifica em domnios de dados reais, onde um elemento pertence a diferentes
grupos, com diferentes graus de associao.
A principal vantagem dos agrupamentos fuzzy em relao aos outros mtodos por
particionamento, que ele fornece informaes mais detalhadas sobre a estrutura dos dados,
pois so apresentados os graus de associao de cada elemento a cada grupo, no tendo,
portanto, a formao de agrupamentos rgidos. A desvantagem desse mtodo que a
quantidade de coeficientes de associao cresce rapidamente com o aumento do nmero de
elementos e de grupos. Entretanto, trata-se de uma tcnica vlida, pois ela associa graus de
incerteza aos elementos nos grupos e, essa situao, em geral, se aproxima mais das
caractersticas reais dos dados (KAUFMAN, 1990).

63

Um algoritmo de agrupamentos fuzzy bastante utilizado o fuzzy c-means. Trata-se de


um algoritmo iterativo que inicia com c valores arbitrrios, e com base nesses valores, associa
cada elemento ao valor ao qual possui menor distncia, formando c grupos. Em seguida,
calcula-se o centro de cada grupo formado, e os elementos so reassociados ao centro mais
prximo. Assim, os clculos prosseguem, iterativamente, at que as diferenas entre os
centros do passo atual e do anterior sejam mnimas.

Exemplo. Utilizando o software Matlab, aplicamos o algoritmo fuzzy c-means aos elementos
da tabela 4.4, considerando a diviso dos elementos em dois grupos. A seguir, mostramos, o
resultado apresentado pelo algoritmo.

ELEMENTOS

1
2
3
4
5
6

4
2
4
2
3
6

3
7
7
3
5
1

Tabela 4.4: Elementos do exemplo fuzzy c-means.

Aps a definio dos centros, foram calculados os graus de associao de cada


elemento em cada grupo, como mostra a tabela 4.5.

ELEMENTO

GRUPO 1

GRUPO 2

1
2
3
4
5
6

0.9515
0.0518
0.0700
0.6605
0.1451
0.8902

0.0485
0.9482
0.9300
0.3395
0.8549
0.1098

Tabela 4.5: Graus de associao dos elementos aos grupos.

64

Os centros obtidos para os grupos foram:

CENTRO

Grupo 1
Grupo 2

4,3168
2,9578

2,3009
6,2364

Observa-se na tabela 4.5, que os elementos 1, 4 e 6 apresentam maior grau de


associao em relao ao grupo 1, enquanto os elementos 2, 3 e 5 apresentam maior grau de
associao em relao ao grupo 2. Ento, pode-se afirmar que:

O elemento 1 pertence 95% ao grupo 1 e 5% ao grupo 2;

O elemento 2 pertence 5% ao grupo 1 e 95% ao grupo 2;

O elemento 3 pertence 7% ao grupo 1 e 93% ao grupo 2;

O elemento 4 pertence 66% ao grupo 1 e 33% ao grupo 2;

O elemento 5 pertence 15% ao grupo 1 e 85% ao grupo 2;

O elemento 6 pertence 89% ao grupo 1 e 11% ao grupo 2.


Portanto, o algoritmo fuzzy c-means apresenta, como resultado os grupos (1,4,6) e

(2,3,5), representados na figura 4.28, onde o centro de cada grupo:

Figura 4.28: Agrupamentos realizados no algoritmo fuzzy c-means.

Maiores detalhes a respeito de agrupamentos fuzzy podem ser obtidos em


(KAUFMANN, 1990) e (BEZDEK,1992).

65

4.4.2 Mapas Auto-Organizveis de Kohonen


Os mapas auto-organizveis de Kohonen constituem uma classe de redes neurais
artificiais baseadas em aprendizado competitivo, em que os neurnios tendem a aprender a
distribuio estatstica dos dados de entrada.
A topologia da rede de Kohonen possui duas camadas, na qual todas as unidades de
entrada encontram-se conectadas a todas as unidades de sada atravs de conexes sinpticas.
Essa rede utiliza regras de aprendizado competitivo, onde os neurnios de uma camada
competem entre si pelo privilgio de permanecerem ativos, tal que o neurnio com maior
atividade seja o principal participante do processo de aprendizado (Winner-takes-all).
O algoritmo de auto-organizao composto por quatro etapas, sendo a inicializao
do mapa, o processo competitivo, o processo cooperativo e a adaptao sinptica.
A inicializao do mapa consiste na atribuio de um vetor de pesos aleatrios iniciais
s conexes entre neurnios das camadas de entrada e sada. necessrio que este vetor de
pesos seja normalizado, para que o somatrio dos quadrados dos valores de pesos das
conexes de entrada seja idntico para cada neurnio de sada.
Assim, um vetor padro de entrada apresentado rede, e este calcula o valor da
distncia quadrtica para cada neurnio de sada em relao ao vetor de entrada. Este valor de
proximidade entre o vetor de entrada e cada neurnio de sada j da rede medido atravs do
parmetro dj de distncia Euclidiana, dado por:
dj =

N 1

(u (t ) w
i

ij (t ))

(4.11)

i =0

- onde: u i (t ) a entrada ao neurnio i, no instante de tempo t;


wij (t ) o peso entre o neurnio de entrada i e o de sada j, no instante de tempo t.

No processo competitivo, mediante a apresentao de um padro de entrada, os


neurnios competem entre si atravs de nveis de ativao, sendo que apenas um neurnio

66

ser o vencedor. Assim, selecionado o neurnio da camada de sada mais prximo ao padro
apresentado, tendo um d j de valor mnimo.
O processo cooperativo inspirado em um mecanismo neurobiolgico, no qual o
neurnio vencedor do processo competitivo tende a influenciar o estado dos neurnios
vizinhos. Assim, a vizinhana inicializada com um valor de largura d 0 e vai diminuindo a
cada iterao, segundo a relao:
t

d t = d 0 1
T

(4.12)

- onde: d t a largura da vizinhana para a iterao t atual e T o nmero total de iteraes.


O neurnio na posio (x, y ) da matriz de sada ser considerado como pertencente
vizinhana de (xv , x y ) , se:

(v d t ) < x < (v + d t ) e (v d t ) < y < (v + d t )

(4.13)

Na fase da adaptao sinptica, os pesos do neurnio vencedor e seus vizinhos so


atualizados de modo a se aproximarem espacialmente do padro de entrada, dado por:
wij (t + 1) = wij (t ) + (t )(e j (t ) wij (t ))

(4.14)

- para todo j na vizinhana de v.


O termo (t ) corresponde taxa de aprendizagem do algoritmo e tambm tem seu
valor alterado a cada iterao, segundo a relao:
t

(t ) = (0)1
T

(4.15)

- onde: (0) o valor inicial de que decresce ao longo das iteraes t.

Os elementos a serem agrupados so apresentados, um por vez, aos neurnios de


entrada. A cada apresentao, os estmulos gerados pelo elemento so capturados pela
camada de entrada e transmitidos igualmente a todos os neurnios da camada do mapa. O

67

neurnio que reagir mais fortemente aos estmulos do elemento apresentado ganha-o para si.
Alm disso, refora suas ligaes com os vizinhos prximos, sensibilizando-os um pouco
mais s caractersticas do elemento capturado.
Numa prxima iterao, quando um elemento parecido for apresentado ao mapa, toda
a regio sensibilizada reagir um pouco mais intensamente. Por outro lado, como os
neurnios vizinhos so diferentes do neurnio ganhador, cada um reagir mais intensamente a
um elemento um pouco diferente.
A cada nova apresentao de um elemento ao mapa, o perfil de sensibilidade dos
neurnios vai se alterando, isto chamado de treinamento da rede. Estas alteraes, no
entanto, so cada vez menores, de forma que a configurao do mapa converge para uma
disposio estvel. Quando isto ocorre, o mapa aprendeu a classificar indivduos.
Essas redes so teis principalmente em reconhecimento de padres, quando as classes
a que devem pertencer os elementos a serem reconhecidos no so conhecidas inicialmente.
O resultado do processamento de uma rede treinada que cada neurnio torna-se dono
de um certo nmero de elementos, parecidos com os capturados pelos neurnios vizinhos.
Desta maneira, elementos semelhantes vo sendo posicionados prximos entre si, formando
um gradiente de caractersticas. Uma reviso detalhada deste tpico podem ser encontrada em
(KOHONEN, 1997).

4.5 CONCLUSO
Neste captulo, tratamos diversas tcnicas de anlise de cluster hierrquicas e nohierrquicas, trazendo seus algoritmos, caractersticas, exemplos e funes distncia
empregadas. Maiores detalhes sobre as tcnicas estatsticas de anlise de cluster podem ser
obtidos em (SNEATH, 1973), (JOHNSON, 1992), (KAUFMAN, 1990), (ROMESBURG,
1984) e (ANDERBERG, 1973). Alm dessas, apresentamos, brevemente, outras tcnicas

68

empregadas em anlise de cluster, como mapas de Kohonen e agrupamentos fuzzy. Uma


reviso detalhada desses mtodos pode ser obtida em (JAIN, 1999), (KOHONEN, 1997),
(KAUFMANN, 1990) e (BEZDEK,1992).
A seguir, aplicamos, em trs conjuntos de dados, algumas tcnicas hierrquicas e nohierrquicas tratadas nesse captulo.

69

5 ESTUDOS DE CASO

Nesse captulo, realizaremos trs estudos de caso, com diferentes conjuntos de dados,
utilizando alguns mtodos de anlise de cluster apresentados nos captulos anteriores.
Para essa anlise, utilizaremos o software estatstico Minitab verso 13.2, da empresa
Minitab Inc.. Esse software possui a maioria dos mtodos de anlise de cluster citados no
trabalho. A figura 5.1 traz a tela inicial do software.

Figura 5.1: Tela inicial do Minitab.

Como podemos observar na figura 5.1, o software dividido basicamente em trs


partes, sendo: o menu superior, o log (Session) e a planilha de dados (Worksheet). O menu
superior possui todos os comandos do software, o log armazena o registro de todas as
operaes realizadas e a planilha armazena os dados a serem analisados.
A seguir, temos uma breve apresentao das funcionalidades do Minitab utilizadas no
trabalho.

70

a) Anlise descritiva dos dados e histograma - para realizar uma anlise descritiva dos dados
armazenados na planilha, devemos seguir, a partir do menu superior, os comandos Stat
Basic Statistics

Display Descriptive Statistics. Aps isso, ser exibida uma tela, conforme a

figura 5.2.

Figura 5.2: Tela de anlise descritiva.

Selecionando as variveis desejadas e clicando em OK, teremos, para cada varivel, as


seguintes estatsticas descritivas: nmero de elementos, mdia, mediana, mdia aparada,
desvio padro, erro padro, mnimo, mximo, primeiro quartil e terceiro quartil. Tambm
nessa tela, temos a opo de histograma, clicando em Graphs e selecionando Histogram of
data.
b) Diagrama de disperso para criar um diagrama de disperso dos dados, devemos seguir
os comandos Graphs

Plot. A seguir ser exibida uma tela, conforme a figura 5.3.

Figura 5.3: Tela de histograma.

71

c) Anlise de cluster hierrquica - para realizar uma anlise de cluster hierrquica, devemos
seguir os comandos Stat

Multivariate

Cluster Observations. Em seguida, aparecer uma

tela (figura 5.4), onde temos a opo de selecionar as variveis, o mtodo, a funo distncia e
a visualizao do dendograma.

Figura 5.4: Tela de anlise de cluster hierrquica.

d) Mtodo do k-means - para aplicar o mtodo do k-means, devemos seguir os comandos Stat
Multivariate

Cluster k-means. Em seguida, aparecer uma tela (figura 5.5), onde

devemos escolher as variveis para anlise. Clicando em Storage e selecionando uma varivel
em branco, os grupos ao qual foram associados os elementos sero armazenados.

Figura 5.5: Tela do mtodo k-means.

O Minitab possui outras funcionalidades, e para maiores detalhes sobre o software


consulte (MINITAB, 2004).

72

5.1 ESTUDO DE CASO 1


Nesse estudo de caso, faremos uma anlise de cluster utilizando um conjunto de dados
de processadores de computador. Esse conjunto possui 209 registros, de 30 diferentes
fabricantes obtidos de (FELDMESSER, 1987).
O objetivo dessa anlise agrupar os processadores que possuem caractersticas
comuns entre as variveis ciclo de mquina, medida em nanosegundos, e memria cache,
medida em kilobytes.
A seguir, sero efetuadas simulaes aplicando-se os mtodos de ligao por vizinho
mais prximo, ligao por vizinho mais distante, ligao de Ward, ligao por centride e
ligao por mdias.

5.1.1 Simulaes
Primeiramente, faremos uma anlise descritiva das variveis. O resultado
apresentado na tabela a seguir.

VARIVEL

MDIA

DESVIO PADRO

MNIMO

MXIMO

Ciclo de mquina

203,8

260,3

17

1500

Memria cache

25,21

40,63

256

Com base na tabela, observamos que o ciclo de mquina est entre 17 e 1500
nanosegundos, e apresenta um alto desvio padro em relao mdia. A varivel memria
cache est distribuda entre 0 e 256 kilobytes, tambm com um alto desvio padro.
Para visualizar a distribuio das variveis, temos o histograma da varivel memria
cache (figura 5.6).

73

Figura 5.6: Histograma da varivel memria cache.

Na figura 5.6, observamos que a maioria dos processadores possui memria cache
entre 0 e 100. Existe ainda, um grupo menor com memria cache entre 100 e 200, e dois
processadores (outliers) com memria de 256 kilobytes.
A figura 5.7 traz o histograma da varivel ciclo de mquina.

Figura 5.7: Histograma da varivel ciclo de mquina.

Observamos, na figura 5.7, que a maioria dos processadores possui ciclo de mquina
entre 0 e 500. Alm disso, existe um grupo menor de processadores com ciclo de mquina
entre 500 e 1000, e dois processadores (outliers) com ciclo de mquina de 1500.
Analisando as duas variveis em conjunto, temos o diagrama de disperso da figura
5.8.

74

Figura 5.8: Diagrama de disperso das variveis ciclo de mquina e memria cache.

Na figura 5.8, observamos a presena de outliers (elementos circulados), os mesmos


observados nos histogramas.
A seguir, aplicaremos os mtodos de anlise cluster hierrquicos. Devido presena
de outliers e conforme descrito no captulo 4, no adequado aplicar os mtodos de ligao
por vizinho mais prximo, ligao por vizinho mais distante e mtodo de Ward a esse tipo de
dado. Para demonstrar a ineficincia desses mtodos aos dados a serem analisados,
realizamos, tambm, os agrupamentos por esses trs mtodos.

5.1.1.1 Simulao 1: Aplicando o mtodo de ligao por vizinho mais prximo


A figura 5.9 traz o dendograma aplicando-se o mtodo de ligao por vizinho mais
prximo ao conjunto de dados de processadores.

75

Figura 5.9: Dendograma utilizando o mtodo de ligao por vizinho mais prximo.

Na figura 5.9, podemos observar que foram formados alguns grupos pequenos, e que
esses grupos foram encadeados em um grupo nico (grupo com a maioria dos elementos).
Com base no corte do dendograma da figura 5.9 (linha pontilhada), verificamos a
diviso dos dados em 6 grupos.
A figura 5.10 traz o diagrama de disperso, identificando os grupos por cores
diferentes.

Figura 5.10: Diagrama de disperso do mtodo de ligao por vizinho mais prximo.

O resultado apresentado pelo mtodo de ligao por vizinho mais prximo no foi
satisfatrio devido presena de encadeamento, que ocorreu com o grupo dos elementos em
vermelho, unindo processadores bem diferentes. Nesse grupo, foram agrupados desde

76

processadores com ciclo de mquina prximo de 0, at processadores com ciclo de mquina


prximo de 1000.

5.1.1.2 Simulao 2: Aplicando o mtodo de ligao por vizinho mais distante


A figura 5.11 traz o dendograma aplicando-se o mtodo de ligao por vizinho mais
distante.

Figura 5.11: Dendograma do mtodo de ligao por vizinho mais distante.

Com base no corte do dendograma da figura 5.11, verificamos a diviso dos dados em
quatro grupos. A figura 5.12 traz o diagrama de disperso, identificando os quatro grupos em
cores diferentes.

Figura 5.12: Diagrama de disperso do mtodo de ligao por vizinho mais distante.

77

O resultado apresentado pelo mtodo de ligao por vizinho mais distante tambm no
satisfatrio, devido incorporao de dois dos outliers ao grupo identificado em azul.

5.1.1.3 Simulao 3: Aplicando o mtodo de ligao de Ward


A figura 5.13 traz o dendograma aplicando-se o mtodo de ligao de Ward.

Figura 5.13: Dendograma do mtodo de ligao de Ward.

Na figura 5.13, verificamos a diviso dos elementos em quatro grupos. A figura 5.14
traz o diagrama de disperso, identificando os grupos em diferentes cores.

Figura 5.14: Diagrama de disperso do mtodo de ligao de Ward.

78

Os resultados apresentados pelo mtodo de ligao de Ward no foram satisfatrios


devido incorporao de dois dos outliers ao grupo identificado em azul, e de outros dois ao
grupo em preto.

5.1.1.4

Simulao 4: Aplicando os mtodos de ligao por centride e ligao por

mdias
Baseado na teoria do captulo 4, observamos, a seguir, que para os dados analisados,
os mtodos de ligao por centride e ligao por mdias apresentam melhores resultados.
As figuras 5.15 e 5.16 trazem os dendogramas dos mtodos de ligao por centride e
de ligao por mdias, respectivamente.

Figura 5.15: Dendograma do mtodo de ligao por centride.

Observamos, na figura 5.15, a diviso dos processadores em cinco grupos no mtodo


de ligao por centride. No dendograma do mtodo de ligao por mdia, ocorreu o mesmo,
os dados foram divididos em cinco grupos, conforme figura 5.16.

79

Figura 5.16: Dendograma do mtodo de ligao por mdia.

Nos dois mtodos, os grupos formados so os mesmos. Portanto, o grfico de


disperso da figura 5.17 vlido para os dois mtodos.

Figura 5.17: Diagrama de disperso dos mtodos de ligao por centride e por mdia.

5.1.2 Concluso
Os mtodos de ligao por centride e por mdia apresentaram melhores resultados aos
dados analisados, assim, consideraremos os grupos obtidos por esses mtodos o resultado
final dos agrupamentos.
Os grupos formados pelo diagrama de disperso da figura 5.17 esto distribudos de
acordo com a tabela 5.1.

80

GRUPO

QUANTIDADE DE
PROCESSADORES

Preto
Vermelho
Verde
Azul
Roxo

2
174
13
18
2

CICLO DE MAQUINA

MEMRIA CACHE

Baixo
Baixo
Baixo
Intermedirio
Alto
Tabela 5.1: Grupos finais.

Alta
Baixa
Intermediria
Baixa
Baixa

A tabela 5.2 traz a diviso dos valores das variveis em trs faixas.
CICLO DE MQUINA

Baixo
Intermedirio
Alto

AMPLITUDE

MEMRIA CACH

17-500
Baixa
500-1100
Intermediria
1100-1500
Alta
Tabela 5.2: Classificao das variveis.

AMPLITUDE

0-80
80-160
160-256

A tabela 5.3 traz a descrio da quantidade de processadores por grupo, dividido por
fabricante.
GRUPO
Preto

Vermelho

Verde

Azul
Roxo

FABRICANTE

QUANTIDADE

FABRICANTE

QUANTIDADE

adviser
nas
amdahl
apollo
basf
bti
burroughs
c.r.d
cambex
cdc
dec
dg
four-phase
gould
harris
honeywell

1
1
8
2
2
2
7
6
5
7
4
5
1
2
7
13

hp
ibm
ipl
magnuson
microdata
nas
ncr
nixdorf
perkin-elmer
prime
siemens
sperry
sratus
wang

7
21
6
6
1
17
11
3
3
5
11
9
1
2

amdahl
burroughs
cdc
gould
nas
ncr
siemens
sperry
dec
dg
formation
ibm
ibm

1
1
2
1
1
2
1
4
2
2
5
9
2

Tabela 5.3: Identificao dos fabricantes e quantidade de processadores por grupo.

81

A figura 5.18 traz a diviso final dos processadores em cinco grupos diferentes,
classificados em trs faixas de valores. Com essa diviso, podemos observar que os
fabricantes de processadores produzem uma variedade maior de modelos de processadores de
menor poder computacional, com utilizao voltada s aplicaes comerciais.

Figura 5.18: Grupos finais dos processadores.

5.2 ESTUDO DE CASO 2


Neste estudo de caso, utilizamos um conjunto de dados de 4601 e-mails classificados,
previamente, como spam ou no-spam (HOPKINS, 1999). considerado spam mensagens
comerciais no solicitadas, entre outras.
As variveis empregadas so descritas na tabela 5.4.
VARIVEIS

DESCRIO

1 a 48
49-54
55
56
57
58

Freqncia com que as palavras aparecem


Freqncia com que os caracteres aparecem
Mdia do nmero de letras em seqncia de letras maisculas
Nmero de letras na maior seqncia de letras maisculas
Soma do nmero de letras em seqncia de letras maisculas
Identificao: spam ou no-spam
Tabela 5.4: Descrio das variveis do conjunto de dados de e-mails.

82

O objetivo, aqui, verificar se o mtodo k-means apresenta bons resultados na diviso


dos e-mails em spam e no-spam. Para isso, aplicaremos o mtodo k-means s 57 primeiras
variveis e, verificaremos se os grupos so os mesmos classificados conforme a varivel 58.

5.2.1 Simulao aplicando o mtodo k-means


Aplicando o mtodo k-means, tendo K = 2, os e-mails foram divididos em um grupo
com 3102 e-mails, considerados no-spam e, 1499 considerados spam.
Comparando o resultado encontrado pelo mtodo k-means com a classificao real,
temos a tabela 5.5.

K-MDIAS

REAL

SPAM

NO-SPAM

TOTAL

SPAM

2622 (56,99%)
166 (3,61%)
2788 (60,60%)
NO-SPAM
480 (10,43%)
1333 (28,97%)
1813 (39,40%)
TOTAL
3102 (67,42%)
1499 (32,58%)
4601 (100,00%)
Tabela 5.5: Identificao dos e-mails e fabricantes.

Observamos, na tabela 5.5, uma baixa porcentagem (3,61%) de e-mails no-spam que
o mtodo k-means classificou como spam. Porm, a porcentagem de e-mails spam
classificados como no-spam maior, 10,43%.
As porcentagens apresentadas na tabela 5.5 foram obtidas comparando-se cada e-mail
classificado pelo mtodo k-means ao respectivo e-mail previamente classificado.

5.2.2 Concluso
Conclumos que se um usurio com o conjunto dos 3102 e-mails acima, utilizasse o
mtodo k-means como um filtro de sua caixa de e-mails, ele teria poucos problemas com emails desejados (166 mensagens) que foram direcionados para a caixa de e-mail spam, mas
maiores problemas com e-mails indesejados (480 mensagens) que chegariam sua caixa de
entrada. Entretanto, um conjunto de variveis mais adequado poderia permitir uma melhor
deteco dos e-mails.

83

5.3 ESTUDO DE CASO 3


Neste estudo de caso, empregamos um conjunto de dados com 325.729 sites,
indicando para cada pgina quais so seus links, obtidos de (ALBERT, 2002). Esse conjunto
foi extrado do domnio http://nd.edu, da Universidade de Notre Dame, para estudo da
estrutura de redes internet.

5.3.1 Simulao aplicando o mtodo k-means


Manipulamos esse conjunto de dados e criamos duas variveis; a primeira
(ENTRADA), o nmero de sites que apontam para um determinado site; a segunda
(SADA), o nmero de sites para os quais cada pgina aponta (nmero de links por pgina).
A tabela 5.6 traz uma anlise descritiva das variveis.

VARIVEL

MDIA

DESVIO PADRO

MNIMO

MXIMO

ENTRADA
4,6
39
1
10721
SADA
4,6
21,48
0
3445
Tabela 5.6: Anlise descritiva das variveis ENTRADA e SADA.

Observamos que a varivel ENTRADA est distribuda entre 1 e 10.721, e a varivel


SADA est distribuda entre 0 e 3.445.
A figura 5.19 traz o histograma da varivel ENTRADA.

Figura 5.19: Histograma da varivel ENTRADA.

84

Observamos, na figura 5.19, que a varivel apresenta uma alta concentrao nos
valores prximos de zero, tendo um decrscimo exponencial extremamente rpido.
A figura 5.20 traz o histograma da varivel SADA.

Figura 5.20: Histograma da varivel SADA.

Observamos, na figura 5.20, que a varivel SADA apresenta um comportamento


semelhante ao da varivel ENTRADA. A queda exponencial dessa varivel j era esperada,
por se tratar de um comportamento de redes sem escala (ALBERT, 2002).
Devido ao comportamento sem escala da rede, torna-se difcil visualizar os dados em
sua escala original, tornando-se apropriado utilizar um grfico na escala log-log, ou seja, com
a freqncia e o nmero de links por pgina em escala logartmica na base 10.

Figura 5.21: Grfico log-log da distribuio do nmero de links por pgina.

85

Observamos, na figura 5.21, que os pontos (pginas) se distribuem ao longo de uma


reta, caracterizando o comportamento exponencial, sem escala, do nmero de links na rede.
Uma rede sem escala caracterizada segundo uma lei exponencial, onde a maior parte
dos ns possui um pequeno nmero de conexes e, alguns, tm uma quantidade imensa de
links (ALBERT, 2002). A rede WWW considerada uma rede sem escala, pois obedece uma
distribuio segundo a figura 5.22.

Figura 5.22: Distribuio exponencial dos links.

Devido ao grande nmero de pginas, seria impossvel visualizar a rede de conexes


entre elas de maneira grfica e fazer inferncias sobre o comportamento dessa rede.
Utilizamos o mtodo k-means para agrupar essas pginas e conseguir uma rede de grupos que
resuma o comportamento das conexes.
Aplicando o mtodo k-means, assumindo K=15, temos os grupos, conforme tabela 5.7.
Observamos que se formaram grupos bastante heterogneos entre si. Desde grupos, com
pginas com poucos links e com poucas pginas apontando para elas, at grupos com pginas
com mais de 7026 pginas que apontam para elas.

86

GRUPO

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

QUANTIDADE

MNIMA
ENTRADA

MXIMA
ENTRADA

MNIMO
SADA

MXIMA
SADA

3
7026
10721
0
17
8
3562
4300
2
21
237447
1
13
0
4
3262
1
23
23
106
1391
105
364
94
365
66330
1
13
1
22
5868
17
82
0
52
3100
1
105
24
142
335
79
322
0
61
238
1
47
140
486
6
1
7
1736
3445
58
1
11
497
1478
106
346
863
0
642
7528
7
52
0
28
49
863
2347
0
1058
Tabela 5.7: Resultado dos agrupamentos dos dados de pginas web.

Com base nestes grupos, utilizamos o software Pajek (PAJEK, 2004) e obtemos uma
representao grfica simplificada dessa rede, conforme as figuras 5.22 e 5.23.

Figura 5.23: Desenho circular da rede aps os agrupamentos.

87

Na figura 5.22, as cores das conexes indicam os graus de conectividade entre os


grupos, onde a cor preta representa os grupos com maior conectividade, seguida do azul,
magenta, verde e por fim, a cor vermelha, indicando menor conectividade.
A figura 5.23 traz as direes das conexes entre os grupos.

Figura 5.24: Desenho tridimensional da rede indicando as direes das conexes.

5.3.2 Concluso
Nessa anlise, observamos existncia de alguns grupos que possuem um grande
nmero de sites que apontam para eles, apesar de possurem poucos elementos, como os
grupos 1, 2. As pginas desses grupos so importantes para a rede, e caso haja alguma falha
nesses grupos, a rede perderia diversas conexes. Outro grupo importante para a formao da
rede, o grupo 11, pois concentra grande quantidade de links em suas poucas pginas.
Verificamos, neste estudo de caso, a importncia de tcnicas de minerao de dados
para a explorao de estruturas e caractersticas de redes complexas, como a rede internet.

88

6 CONCLUSO

O emprego da minerao de dados em grandes Data Warehouses cada dia mais


comum, seja para prover o suporte deciso em sistemas empresariais, como em sistemas de
relacionamento com clientes; seja no mbito cientfico, na busca de estruturas e relaes
ocultas em grandes massas de dados, como no caso das informaes sobre o genoma de uma
espcie.
As tcnicas de anlise de cluster tm grande importncia dentro das tcnicas
disponveis de minerao de dados. Devido complexidade e a escalabilidade das bases de
dados, essas tcnicas so eficientes, trazendo reduo da complexidade, para uma melhor
interpretao em processos decisrios. Neste estudo, damos destaque s tcnicas de anlise de
cluster hierrquicas e de particionamento, nas quais uma funo de similaridade desempenha
um papel essencial. Esses mtodos diferenciam-se de outras tcnicas de agrupamento, muitas
delas associadas a sistemas inteligentes como redes neurais e algoritmos genticos.
Aplicando essas tcnicas a alguns conjuntos de dados, verificamos sua aplicabilidade,
sendo possvel a extrao de informaes sobre a estrutura de dados relativamente complexos
e volumosos, as quais eram previamente desconhecidas e difceis de serem observadas sem
uma reduo de sua complexidade atravs da anlise de clusters.
Embora tcnicas de classificao (ou categorizao) e anlise de cluster tenham um
resultado final similar, com a diviso de diferentes elementos em classes, ou agrupamentos, as
tcnicas de anlise de cluster so mais poderosas e complexas, uma vez que as categorias, ou
agrupamentos, no so previamente determinados.
Em uma primeira anlise de cluster, realizada sobre um conjunto de dados sobre
caractersticas de processadores computacionais, empregamos diversas tcnicas hierrquicas
de agrupamento descritas no captulo 4, utilizando a distncia Euclidiana como medida de

89

similaridade. Nas primeiras simulaes, onde foram utilizadas as tcnicas de ligao por
vizinho mais prximo, ligao por vizinho mais distante, ligao de Ward, os resultados no
foram satisfatrios, devido presena de outliers e a forma como as funes distncia
definem os agrupamentos. Os mtodos de ligao por mdias e ligao por centride
obtiveram melhores resultados, dividindo, de forma correta, os diversos processadores.
Em uma segunda anlise, utilizamos um conjunto de informaes sobre e-mails para
agrupa-los em e-mails spam e no-spam, resultado que apresenta um grande valor prtico.
Aqui, foi empregada a tcnica no-hierrquica do k-means, utilizando a funo de
similaridade de distncia Euclidiana. Essa anlise apresentou um resultado bastante
satisfatrio, observando-se uma pequena porcentagem de erro, similar a outras tcnicas
classificao automtica.
Em uma ltima anlise realizada, um conjunto de dados de pginas web foi utilizado, e
aplicamos a tcnica de cluster no-hierrquica para particionar essas pginas em grupos
similares, e obter uma representao grfica e simplificada da rede.
Tendo em vista os resultados aqui obtidos, observamos a efetiva aplicabilidade das tcnicas
de cluster, hierrquica e no-hierrquica, as quais se mostraram eficientes no tratamento de
dados complexos com recursos computacionais relativamente modestos. O sucesso, aqui
verificado, do uso dessas tcnicas sobre dados associados estrutura internet (como e-mails e
websites), indicam como promissores novos estudos e o aprofundamento do uso da anlise de
cluster em dados ligados a estrutura de redes complexas e internet, para seu melhor
entendimento.

90

REFERNCIAS BIBLIOGRFICAS

ALBERT, Rka; JEONG, Hawoong; BARABSI, Albert-Lszl. Diameter of the World


Wide Web. Disponvel em: <http://www.nd.edu/~networks/database/www/www.dat.gz>.
Acesso em: 15 abr. 2004.
ANDERBERG, Michael R. Cluster analysis for applications. New York: Academic Press,
1973.
AURLIO, Marco; VELLASCO, Marley; LOPES, Carlos Henrique. Descoberta de
conhecimento e minerao de dados. Pontifcia Universidade Catlica, Laboratrio de
Inteligncia Computacional Aplicada, 1999.
BARBAR, Daniel; CHEN, Ping. Using self-similarity to cluster large data sets. Data
Mining and Knowledge Discovery, v. 7, n. 2, p. 123-152, Apr. 2003.
BEZDEK, James C.; PAL, Sankar K. Fuzzy models for pattern recognition: methods that
search for structures in data. Piscataway: IEEE Press, 1992.
BRAGA, Antnio de Pdua et al. Redes neurais artificiais. In: REZENDE, Solange Oliveira
(Org.). Sistemas inteligentes: fundamentos e aplicaes. So Paulo: Malone, 2003, p. 141168.
BUSSAB, Wilton de Oliveira; MIAZAKI, dina Shizue; ANDRADE, Dalton Francisco de.
Introduo anlise de agrupamentos. So Paulo: Associao Brasileira de Estatstica, 1990.
DINIZ, Carlos Alberto R.; LOUZADA NETO, Francisco. Data mining: uma introduo. So
Paulo: Associao Brasileira de Estatstica, 2000.
FAYYAD, Usama M. et al. Advances in knowledge discovery and data mining.
Massachusetts: MIT Press, 1996.
FAUSETT, Laurence. Fundamentals of neural networks: architectures, algorithms and
applications. New Jersey: Prentice Hall, 1994.
FELDMESSER, Jacob; EIN-DOR, Phillip. Relative CPU performance data. Tel Aviv, Tel
Aviv University, 1987. Disponvel em: <ftp://ftp.ics.uci.edu/pub/machine-learningdatabases/cpu-performance>. Acesso em: 15 abr. 2004.
FREITAS, Alex A.; LAVINGTON, Simon H. Mining very large databases with parallel
processing. Kluwer Academic Publishers. 1998.
HECKERMAN, David. Bayesian networks for knowledge discovery. In: FAYYAD, Usama
M. et al. (Ed.). Advances in knowledge discovery and data mining. Massachusetts: MIT
Press, 1996, p. 273-305.
HOPKINS, Mark; REEBER, Erik; FORMAN, George. SPAM e-mail database. Palo Alto:
Jaap Suermondt Hewlett-Packard Labs., 1999. Disponvel em:
<ftp://ftp.ics.uci.edu/pub/machine-learning-databases/spambase>. Acesso em: 15 abr. 2004.

91

INMON, William H. Como construir o Data Warehouse. Rio de Janeiro: Campus, 1997.
JACKSON, Joyce. Data mining: a conceptual overview. Communications of the Association
for Information Systems. v. 8, p. 267-296, Mar. 2002.
JOHNSON, Richard. A.; WICHERN, Dean W. Applied multivariate statistical analysis.
4th ed. New Jersey: Prentice Hall, 1992.
JAIN, A. K.; MURTY, M. N.; FLYNN, P. J. Data clustering: a review. ACM Computing
Surveys, New York, v. 31, n. 3, p. 265-323, Sept., 1999.
KAUFMAN, Leonard; ROUSSEEUW, Peter J. Finding groups in data: an introduction to
cluster analysis. New York: Wiley, 1990.
KOHONEN, T. Self-organizing maps. 2nd ed. Heidelberg: Springer, 1997.
MINITAB. Tutorials Homepage. Disponvel em: <http://www.minitab.com/resources/tutorials>.
Acesso em: 20 abr. 2004.
PAJEK. Program for large network analysis. University of Ljubljana. 2004. Disponvel em:
<http://vlado.fmf.uni-lj.si/pub/networks/pajek/>. Acesso em: 15 abr. 2004.
REZENDE, Solange Oliveira et al. Minerao de dados. In: REZENDE, Solange Oliveira
(Org.). Sistemas inteligentes: fundamentos e aplicaes. So Paulo: Malone, 2003, p. 307333.
ROMESBURG, Charles H. Cluster analysis for researchers. Belmont: Lifetime Learning
Publications, 1984.
RUSSEL, Stuart J.; NORVIG, Peter. Artificial intelligence: a modern approach. Upper Saddle
River: Prentice Hall, 1995.
SNEATH, Peter H.; SOKAL, Robert R. Numerical taxonomy: the principles and practice of
numerical classification. San Francisco: W. H. Freeman, 1973.
ZAIANE, Osmar R. et al. On data clustering analysis: scalability, constraints and validation.
Edmonton Alberta, University of Alberta, 2003.
WEISS, Sholon M.; KULIKOWSKY, Casimir A. Computer systems that learn: classification
and prediction methods from statistics. Morgan Kaufman, 1991.

92

BIBLIOGRAFIA COMPLEMENTAR

CABENA, Peter et al. Discovering data mining: from concept to implementation. New
Jersey: Prentice Hall, 1998.
CADEZ, Igor et al. Model-based clustering and visualization of navigation patterns on a web
site. Data Mining and Knowledge Discovery, v. 7, n. 4, p. 399-424, Oct. 2003.
EVERITT, Brian S. Cluster analysis. 3rd ed. London: Edward Arnold, 1993.
HALKIDI, Maria; BATISTAKIS, Yannis; VAZIRGIANNIS, Michalis. On clustering
validation techniques. Journal of Intelligent Information Systems, v. 17, n. 2-3, p. 107-145,
Dec. 2001.
MACKINNON, Murray J; GLICK, Ned. Data mining and knowledge discovery in databases:
an overview. Australian New Zealand Journal of Statistics, v. 41, p. 255-275, Sep. 1999.
MINERAO de Dados. Grupo de Sistemas Inteligentes. Maring: Universidade Estadual de
Maring. Disponvel em: <http://www.din.uem.br/ia/mineracao/geral/index.html>. Acesso
em: 10 out. 2003.
STATLIB. Data, software and news from the statistics community. Disponvel em:
<http://lib.stat.cmu.edu/>. Acesso em: 27 set. 2003.
STATISTICA. Data mining, data analysis, quality control, and web analytics software.
Disponvel em: <http://www.statsoftinc.com/>. Acesso em: 10 nov. 2003.
WITTEN, Ian H.; FRANK, Eibe. Data mining: practical machine learning tools and
techniques with Java implementations. San Francisco: Morgan Kaufmann, 1999.

You might also like