Buscar

Algoritimos para Analise de Dados II

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Inserir Título Aqui 
Inserir Título Aqui
Algoritmos para 
Análise de Dados
Algoritmos de clustering
Responsável pelo Conteúdo:
Prof. Dr. Alberto Messias
Revisão Textual:
Prof. Ms. Luciano Vieira Francisco
Nesta unidade, trabalharemos os seguintes tópicos:
• Introdução ao Tema
• Orientações para leitura Obrigatória
• Material Complementar Fonte: iStock/Getty Im
ages
Objetivos
• Compreender as definições iniciais sobre os algoritmos de clustering.
• Entender o funcionamento do algoritmo kmeans, as técnicas de validação do modelo 
criado pelo algoritmo e, por fim, um caso prático de execução do qual.
Caro Aluno(a)!
Normalmente, com a correria do dia a dia, não nos organizamos e deixamos para o 
último momento o acesso ao estudo, o que implicará o não aprofundamento no material 
trabalhado ou, ainda, a perda dos prazos para o lançamento das atividades solicitadas.
Assim, organize seus estudos de maneira que entrem na sua rotina. Por exemplo, você 
poderá escolher um dia ao longo da semana ou um determinado horário todos ou alguns 
dias e determinar como o seu “momento do estudo”.
No material de cada Unidade, há videoaulas e leituras indicadas, assim como sugestões 
de materiais complementares, elementos didáticos que ampliarão sua interpretação e 
auxiliarão o pleno entendimento dos temas abordados.
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de 
discussão, pois estes ajudarão a verificar o quanto você absorveu do conteúdo, além de 
propiciar o contato com seus colegas e tutores, o que se apresenta como rico espaço de 
troca de ideias e aprendizagem.
Bons Estudos!
Algoritmos de clustering
UNIDADE 
Algoritmos de clustering
Introdução ao Tema
Algoritmos de Clustering
Os algoritmos de clustering são métodos de aprendizado não supervisionado, os 
quais utilizados na criação de grupos homogêneos, dado um conjunto de dados com 
base em sua estrutura interna.
Clustering é um método frequentemente usado para análise exploratória dos dados, 
onde não há estimativas de quaisquer valores ou agrupamentos, de modo que as criações 
dos grupos ocorrem apenas na semelhança entre os dados e os organizando em clusters.
A ideia de semelhanças pode ser explicada com questões sobre como fazer para:
1. Agrupar esses documentos por tópico;
2. Realizar segmentação de clientes para permitir programas de marketing dire-
cionados ou especiais.
Note que a definição de “similaridade” é específica ao domínio do problema. Assim, 
estamos definindo semelhanças entre esses pontos de dados com a mesma característica 
de “tópico” ou de clientes que podem ser perfilados para uma mesma “faixa etária/
renda/gênero” ou a um “padrão de compra”.
Se tivermos um vetor de medidas de um atributo de dados, os pontos desses dados 
agrupados em um cluster terão valores para a medição próxima uns dos outros – em 
relação aos pontos de dados agrupados em um cluster diferente. Em outras palavras, a 
distância – um inverso de semelhança – entre os pontos dentro de um cluster é sempre 
menor do que a distância entre os pontos em um cluster diferente.
Reforçando, em um cluster, acabamos em um grupo apertado – homogêneo – de pontos 
de dados que estão distantes dos pontos de dados que acabam em um cluster diferente.
Note que a escolha do tipo de medida de distância é importante para a execução 
dos algoritmos que usam medidas de similaridade, pois neste caso a principal função de 
distância utilizada é a euclidiana.
Segue um exemplo de agrupamento:
Figura 1 – Exemplo de clusters
Fonte: Theodoridis e Koutroumbas, 2008
6
7
À esquerda há dois agrupamentos que criam formas e à direita, agrupamentos com 
pontos aleatórios, neste caso usando duas dimensões, características, ou ainda atributos 
para a classificação.
Na literatura são encontrados diversos tipos de algoritmos de clustering, entre os quais:
• Métodos de partição – aos quais são criados os clusters e são agregadas as 
instâncias a cada um dos clusters, dada a execução dos algoritmos;
• Métodos de clusters hierárquicos – criam-se tuplas e se aumenta o número de 
participantes dos clusters, além de agrupar as instâncias conforme a similaridade, 
tal como se observa na Figura 2, onde um dendograma é formado pela execução 
do algoritmo, em que no eixo vertical se observa a escala de similaridade e no eixo 
horizontal, as instâncias a serem agrupadas. Note que a cada nível é ampliado o 
número de participantes do cluster, chegando ao máximo – que será o número 
total de instâncias do modelo:
Figura 2 – Dendograma gerado pelo método de clustering hierárquico
Fonte: Duda, Hart e Stork, 2000
• Métodos com base em densidade de objetos – a ideia principal é continuar o 
crescimento de um cluster à medida que sua densidade ou quantidade de objetos 
em sua vizinhança tenha uma proximidade determinada. Este método permite 
criar clusters de forma arbitrária, com regiões densas separadas entre si por 
dados dispersos, de modo que o algoritmo comumente mencionado na literatura 
é o DBSCAN:
Figura 3 – Exemplo de clusters utilizando a técnica de densidade
Fonte: Zaki e Meira, 2014
7
UNIDADE 
Algoritmos de clustering
• Métodos que utilizam estruturas de grafo – neste caso, os vértices são os objetos, 
enquanto que as suas ligações – ou arestas – são as suas similaridades, de modo que 
ao analisar a estrutura do grafo ou rede gerada é possível criar tais clusters:
Figura 4 – Exemplo de clusters usando a estrutura dos grafos
Fonte: Theodoridis e Koutroumbas, 2008
Observe que os objetos devem ser representados por seus atributos, por exemplo: 
idade, peso, sexo, cor de pele e altura, podendo ser características ou atributos que 
representarão um indivíduo.
Segue um exemplo de representação de instâncias:
P1 = {34, 71, M, Branca, 1.72}
P1 = {34, 58, F, Branca, 1.65}
O Algoritmo Kmeans
O algoritmo de clustering kmeans foi proposto inicialmente por MacQueen, em 
1967, e utiliza medidas de similaridade entre os objetos.
Deve receber como parâmetro a quantidade de grupos ou clusters nos quais se 
deseja agrupar os objetos. Assim, o algoritmo escolhe aleatoriamente N objetos que se 
tornam representantes de cada cluster, chamados de centroides. A cada iteração do 
algoritmo, os outros objetos são alocados nos clusters, ou seja, o objeto é colocado no 
cluster do centroide mais próximo. Por sua vez, a cada iteração, o algoritmo recalcula o 
centroide, usando a média das distâncias entre todos os integrantes do cluster. Segue a 
Figura que ilustra o funcionamento do algoritmo:
8
9
Figura 5 – Representação em duas dimensões de iterações do algoritmo kmeans
Fonte: Duda, Hart e Stork, 2000
A Figura representa, em duas dimensões, algumas iterações do algoritmo kmeans, 
onde inicialmente os centroides definidos aleatoriamente e a cada iteração do algoritmo 
vão convergindo e ficando mais próximos das instâncias de seu cluster. Note que os 
centroides vão mudando de lugar e suas respectivas formações/divisões entre os grupos 
também o fazem, conforme as linhas marcadas com 1, 2 e 3 vão se modificando.
Quando não ocorrerem mais variações nos posicionamentos dos centroides, significa 
que o algoritmo convergiu. A seguinte Figura ilustra o pseudocódigo do algoritmo:
Figura 6 – Pseudocódigo do algoritmo kmeans
Fonte: Dougherty, 2012
9
UNIDADE 
Algoritmos de clustering
Tal algoritmo executa da seguinte maneira:
• Escolha K, o número de clusters que se deseja classificar;
• Aleatoriamente, defina os posicionamentos de cada um dos K centroides;
• Atribua cada instância ao seu centroide mais próximo;
• Recalcule o valor de cada um dos centroides dada a média de todas as instâncias 
do cluster;
• Repita a função de atribuir instâncias e recalcular as posições dos centroides até que 
não ocorram mais variações no posicionamentodesses.
Note que o algoritmo kmeans é relativamente simples, de modo que seu tempo 
de execução dependerá da quantidade de K, da escolha dos valores iniciais para os 
centroides e do critério de parada, podendo ser o número máximo de iterações ou, 
caso se tenha como fato, cessará a execução do algoritmo apenas após a paralização 
completa das posições dos centroides.
Segue mais um exemplo ilustrado do passo a passo que ocorre com a execução do 
algoritmo para uma condição hipotética com k = 3:
Figura 7 – Passo 1
No passo 1 observa-se a escolha inicial dos centroides.
10
11
Figura 8 – Passo 2
No passo 2 observa-se que o algoritmo calcula a distância de cada instância para os 
centroides e atribui dada instância a um cluster específico.
Figura 9 – Passo 3
Neste passo 3, ao se atribuírem as instâncias a cada um dos grupos, a posição de 
cada centroide deve ser revisada, usando a média da posição de cada instância existente 
em seu cluster.
11
UNIDADE 
Algoritmos de clustering
Figura 10
As repetições dos passos 2 e 3 ocorrem até que os centroides fiquem estáveis ou que 
as suas variações sejam extremamente pequenas e aceitáveis.
A saída do algoritmo deverá corresponder aos respectivos valores dos centroides e às 
instâncias utilizadas no modelo e classificadas em seus respectivos clusters.
Existem diversas ferramentas que implementam o algoritmo kmeans, por exemplo: 
o software Weka; a plataforma Mahout, que pode ser instalada sobre o Hadoop; a 
plataforma Spark, que também é executada sobre o Hadoop; o software R, bastante 
utilizado em análise de big data; entre outros softwares para análise de dados, de modo 
que algumas dessas ferramentas serão elencadas nas leituras obrigatórias ou materiais 
complementares.
Validação de Clusters
Outro aspecto importante em análise e reconhecimento de padrões é a validação dos 
modelos propostos pelos algoritmos.
Na análise de clustering é sempre importante conhecer o domínio de aplicação para 
que se possa fazer a análise do modelo criado e utilizar técnicas de validação – embora 
não sejam técnicas simples para a implementação algorítmica.
Dada a grande variedade de algoritmos de clustering, observa-se também considerável 
diversidade de técnicas de validação que levam em consideração medidas internas aos 
clusters e externas, considerando o modelo completo (ZAKI; MEIRA, 2014):
• Medidas externas – utilizam critérios que não são inerentes ao conjunto de dados, 
mas sim ao domínio de aplicação. Isso pode se dar na forma de conhecimento prévio 
ou especializado sobre os clusters, por exemplo: as instâncias foram previamente 
etiquetadas, com informações oriundas de conhecimento de especialistas e se faz 
uma validação a partir dos erros e acertos do algoritmo, sem levar em consideração 
12
13
medidas específicas. Para esse tipo de técnica, pode-se usar as medidas chamadas 
de F-measure, que mensurarão a precisão do algoritmo como um todo, técnica 
comumente utilizada para validação de classificadores ou detecção de outliers;
• Medidas internas – empregam critérios que são derivados dos dados em si, por 
exemplo: podemos usar distâncias intracluster e intercluster para obter medidas 
de coesão do cluster – por exemplo, quão semelhantes são os pontos no mesmo 
cluster? – e de separação – por exemplo, quão distantes estão os pontos em 
diferentes clusters?
Observe que a validação de um modelo de cluster, na verdade, corresponde à 
avaliação se a quantidade de clusters ou grupos gerados for adequada ao conjunto de 
dados utilizados para a geração do modelo. 
Agora nos concentraremos em duas medidas internas de validação de clusters, a 
medida interna que utiliza a soma dos erros quadrados e o coeficiente de silhueta.
Medida de Soma dos Erros Quadrados
A medida de soma dos erros quadrados mostrará o valor da soma total das 
distâncias entre cada instância e seus respectivos centroides, utilizando, neste 
caso, a distância euclidiana como medida. Caso esse valor seja muito alto, 
significa que o cluster em si não é coeso e possivelmente poderá ser separado; 
mas se esse valor é muito baixo, significa que o cluster está muito especializado, 
ou seja, poderá se juntar ao outro.
Segue a especificação da equação para a soma dos erros quadrados, utilizando a 
distância euclidiana, esta que é dada por:
d p pik jk
k
n
= −
=
∑( )2
1
O SSE, ou a soma dos erros quadrados será a soma da distância euclidiana ao 
quadrado de cada instância do cluster para o seu centroide, dada por:
SSE C d x cii
i
n
( )) ( , )=∑ 2
Ou seja, calculando apenas a coesão de um dado cluster; mas pode-se também 
calcular o erro quadrado do modelo completo – neste caso, tal valor é dado pelo 
somatório do SSE de cada cluster:
SSE SSE Ci
i
k
=∑ ( )
Para validar o modelo proposto é importante executar tal validação para inúmeros 
valores de K. Trata-se de executar o algoritmo iniciando com K igual a 1 e aumentando 
gradativamente para cada execução do algoritmo, a fim de calcular o SSE total e plotar 
13
UNIDADE 
Algoritmos de clustering
em um gráfico. Desse modo, a minimização de tal soma de erro quadrado ilustrará 
graficamente a qualidade do modelo gerado. Nesse sentido, segue um gráfico que ilustra 
um modelo hipotético:
Figura 11 – Decaimento de ESS para a validação do modelo proposto
Fonte: Souza, 2015
O ponto ideal do número de cluster será no chamado “joelho da curva”. No gráfico 
ilustrado pela Figura 11, observa-se o valor de K = 5. Note que com k = 1, o modelo 
possui um erro muito grande; enquanto que para K = 20, o modelo fica extremamente 
especializado, neste caso, com K tendendo ao número de instância e o erro quadrado 
tendendo a 0. Assim, o meio termo é um número ideal de clusters para tal modelo.
Medida do Coeficiente de Silhueta
O coeficiente de silhueta é uma medida de coesão e separação de clusters. É 
baseado na diferença entre a distância média de um ponto aos pontos de seu cluster 
e a distância média de um objeto a todos os objetos do cluster mais próximo.
Inicialmente, deve-se calcular o coeficiente de silhueta para cada objeto i. Para isso, 
deve-se calcular a distância média de um objeto i para todos os objetos de seu cluster, 
dado por:
s i b ai i( ) = −
max(a , b )i i
Onde ai é a distância média do objeto i em relação a todos os outros objetos 
do seu cluster, enquanto bi é a distância média do objeto i em relação a todos os 
outros objetos do cluster vizinho mais próximo.
14
15
O próximo passo é calcular o coeficiente de silhueta para todo o modelo. Assim, a 
média s(i) para todos os objetos i presentes nos dados é fornecida por:
SWC
N
s i
i
N
=
−
∑1
0
( )
Para validar o modelo proposto é importante executar essa validação para inúmeros 
valores de K. Trata-se de executar o algoritmo iniciando com K igual a 1 e aumentar 
gradativamente para cada execução do algoritmo, a fim de calcular o SWC e plotar em 
um gráfico. Tipicamente, o SWC será um valor entre -1 e 1, sendo que o modelo com 
K que melhor agrupa o conjunto de dados será aquele que possuir valor mais próximo 
de 1. Segue um gráfico que ilustra um modelo hipotético:
Figura 12 – Valores do coeficiente de silhueta pela quantidade de clusters
 Fonte: Souza, 2015
O ponto ideal de quantidade de clusters para o exemplo notadamente é o valor de 5 
grupos, conforme se observa no gráfico, sendo o valor mais próximo de 1.
Caso Prático de Execução do Algoritmo Kmeans
Utilizaremos o software Weka para fazer um experimento com a execução do 
algoritmo kmeans. Tal experimento será com uma base de dados Iris Flower Dataset, 
comumente utilizada para ilustrar o funcionamento do algoritmo relacionado ao 
reconhecimento de padrões.
Trata-se de um software livre e muito comum para o processamento de bases de dados 
e validações experimentais,com a possibilidade de importar arquivos, fazer conexões 
diretas com bancos de dados, ou ainda gerar dados aleatórios para experimentos.
15
UNIDADE 
Algoritmos de clustering
Figura 13 – Tela do Weka ao se carregar o arquivo da base de dados
Fonte: Weka
Na tela é possível observar os valores mínimos, máximos, a média e o desvio padrão, 
além da quantidade de instâncias na base e os atributos existentes.
Cada aba do software possui um conjunto de algoritmos com a mesma finalidade, 
como algoritmos de classificação, cluster, regras de associação, seleção de atributos e 
visualização dos dados e resultados.
A Figura 14 ilustra a aba de algoritmos de clustering, neste caso, ao clicar no botão 
choose pode-se escolher o algoritmo desejado:
Figura 14
Fonte: Weka
16
17
Neste caso, o algoritmo selecionado é o SimpleKMeans, em sua implementação 
principal. A Figura 15 apresenta os parâmetros possíveis para o algoritmo kmeans:
Figura 15
Fonte: Weka
Na tela exibida na Figura 16, pode-se observar a escolha da métrica de distância – 
euclidiana –, além de outros parâmetros como, por exemplo, a quantia de clusters K e 
a quantidade máxima de iterações do algoritmo:
Figura 16
Fonte: Weka
17
UNIDADE 
Algoritmos de clustering
=== Run information ===
Scheme: weka.clusterers.SimpleKMeans -init 0 -max-candidates 
100 -periodic-pruning 10000 -min-density 2.0 -t1 -1.25 -t2 -1.0 -N 
3 -A “weka.core.EuclideanDistance -R first-last” -I 500 -num-slots 
1 -S 10
Relation: iris
Instances: 150
Attributes: 5
 sepallength
 sepalwidth
 petallength
 petalwidth
 class
Test mode: evaluate on training data
=== Clustering model (full training set) ===
kMeans
======
Number of iterations: 3
Within cluster sum of squared errors: 7.817456892309574
Initial starting points (random):
Cluster 0: 6.1,2.9,4.7,1.4,Iris-versicolor
Cluster 1: 6.2,2.9,4.3,1.3,Iris-versicolor
Cluster 2: 6.9,3.1,5.1,2.3,Iris-virginica
Missing values globally replaced with mean/mode
Final cluster centroids:
 Cluster#
Attribute Full Data 0 1 2
 (150.0) (50.0) (50.0) (50.0)
A listagem exibe a saída do algoritmo na tela principal de execução dos algoritmos 
no Weka:
18
19
===========================================================
sepallength 5.8433 5.936 5.006 6.588
sepalwidth 3.054 2.77 3.418 2.974
petallength 3.7587 4.26 1.464 5.552
petalwidth 1.1987 1.326 0.244 2.026
class Iris-setosa Iris-versicolor Iris-setosa Iris-
virginica
Time taken to build model (full training data) : 0 seconds
=== Model and evaluation on training set ===
Clustered Instances
0 50 ( 33%)
1 50 ( 33%)
2 50 ( 33%)
Observe, na saída do algoritmo, os pontos principais e respectivos como:
• Os parâmetros passados na execução do algoritmo;
• A quantidade de instâncias da base de dados;
• Os atributos presentes na base;
• O número de iterações do algoritmo;
• O valor de erro quadrado do modelo gerado;
• Os centroides gerados pelo algoritmo;
• Uma tabela com as informações sobre as instâncias classificadas em cada cluster; e
• A quantidade de instâncias em cada cluster.
A Figura 17 ilustra o resultado das instâncias separadas em clusters, ao clicar 
com o botão direito do mouse sobre o experimento e ir na opção visualizar o 
modelo gerado, conforme se vê a seguir:
19
UNIDADE 
Algoritmos de clustering
 
Figura 17
Fonte: Weka
Então, clique para exibir o modelo de clusters gerado. Note que as instâncias classifi-
cadas em seus respectivos grupos estão com cores que identificam o cluster específico.
Figura 18 – Modelo de clusters gerado e as instâncias classifi cadas
Fonte: Weka
Dado que na saída do algoritmo é exibido o erro quadrado do modelo, é possível, 
então, validá-lo ao executar o algoritmo variando o número de clusters.
Para o experimento de verificação da minimização dos erros quadrados para a 
validação do modelo, o algoritmo foi executado treze vezes, variando o K entre 1 e 10 
e, logo após, com 50, 100 e 146 clusters, conforme se vê na Tabela extraída com as 
somas dos erros quadrados:
Tabela 1
Clusters Erro quadrado
1 141,1381720229770
2 62,1436882815797
20
21
3 7,8174568923096
4 6,6138232746904
5 6,2935568618108
6 6,1318396310806
7 5,2024143888778
8 4,8527343852958
9 4,6720734767839
10 4,6239733170433
50 0,6325772361931
100 0,1908186705859
146 1.0030885127016854E-34
Fonte: elaborada pelo professor conteudista.
Observe que inicialmente a soma dos erros quadrados para um único cluster traz 
um valor bastante alto e ao se aumentar o número de clusters, tal modelo vai se 
especializando, de modo que esse erro é minimizado. Note também que ao se aproximar 
do número total de instância, o erro tende a zero, porém, o modelo fica extremamente 
especializado – o que não é um bom resultado.
A Figura 19 ilustra graficamente o decaimento da soma dos erros quadrados:
Figura 19
Fonte: elaborada pelo professor conteudista.
Conforme informado, a quantidade ideal de clusters para dado modelo ocorre 
quando há um “joelho no gráfico”. Assim, note que o valor ideal de clusters para a base 
usada é de três. O erro inicialmente é bastante alto, mas quando se chega ao número 
ideal, cai bruscamente e, logo após, a redução do erro é pequena, sendo que no final 
tende a zero, conforme se observa na execução do algoritmo com 146 clusters, sendo 
que a base total possui 150 instâncias.
O software Weka será interessante para se fazer a modelagem inicial dos conjuntos e 
tipos de dados a se trabalhar, antes de se implementar o modelo usando tecnologias de 
big data como, por exemplo, Hadoop ou Spark.
Vale destacar ainda que o software Weka possui uma Application Programming 
Interface (API) em linguagem de programação java, permitindo o uso de suas 
implementações algorítmicas em seus projetos java, de modo a permitir uma integração 
mais profunda em seus projetos de business intelligence ou mineração de dados.
21
UNIDADE 
Algoritmos de clustering
Orientações para leitura Obrigatória
Segue a indicação de leitura obrigatória de uma apresentação existente no site de 
documentação do software Weka, disponível em: https://goo.gl/1iwuvs 
Dá uma visão importante sobre as possibilidades existentes nesse software.
Leia também o capítulo 13 do livro Data mining and analysis: fundamental concepts and 
algorithms, disponível em: https://goo.gl/ytF97R 
Discorre sobre algoritmos de clustering, englobando o algoritmo kmeans.
Finalmente, segue também a indicação de leitura do capítulo 17 do mesmo livro, Data mining 
and analysis: fundamental concepts and algorithms, disponível em: https://goo.gl/ytF97R.
Agora sobre algoritmos de clustering e acerca dos métodos de validação dos modelos 
de clustering.
22
23
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Sites
UCI
Segue a indicação do site de repositórios de bases de dados livres para experimentos.
https://goo.gl/c8s2kg
 Leitura
The Weka Workbench
Assim como a introdução ao Weka, no site desse software.
https://goo.gl/xD7W7i
Clustering de Dados Biomédicos com Algoritmos baseados em Critérios Entrópicos
Mais a dissertação de Mestrado que aborda o tema da aplicação do algoritmo de clustering 
em dados biomédicos
https://goo.gl/Tssvno
Introduction to K-means Clustering
Artigo sobre o algoritmo kmeans
https://goo.gl/MM9tBV
23
UNIDADE 
Algoritmos de clustering
Referências
DOUGHERTY, G. Pattern Recognition and Classification: An Introduction. 2013. 
ed. [S.l.]: Springer, 2012.
DUDA, R. O.; HART, P. E.; STORK, D. G. Pattern classification. 2nd ed. [S.l.]: 
Wiley-Interscience, 2000.
SOUZA, A. M. da C. Uma nova arquitetura para internet das coisas com análise e 
reconhecimento de padrões e processamento com big data. 2015. Tese (Doutorado 
em SistemasEletrônicos) - Escola Politécnica da Universidade de São Paulo, São 
Paulo, 2015. Disponível em: <http://www.teses.usp.br/teses/disponiveis/3/3142/
tde-20062016-105809>. Acesso em: 7 mar. 2017.
THEODORIDIS, S.; KOUTROUMBAS, K. Pattern recognition 4th ed. [S.l.]: 
Academic Press, 2008.
ZAKI, M. J.; MEIRA JR. W. Data mining and analysis: fundamental concepts and 
algorithms. New York: Cambridge University, 2014. Disponível em: <http://www.
dataminingbook.info/pmwiki.php/Main/BookPathUploads?action=downloadman&u
pname=book-20160121.pdf>. Acesso em: 7 mar. 2017.
24

Continue navegando