Você está na página 1de 11

Análise de Dados em Bioinformática – Profs.

Moscato & Von Zuben


DCA/FEEC/Unicamp

Uma Visão Geral de


Clusterização de Dados
1 Introdução

• clusterização é a classificação não-supervisionada de dados, formando


agrupamentos ou clusters. Ela representa uma das principais etapas de processos
de análise de dados, denominada análise de clusters (JAIN et al., 1999).
• a análise de clusters envolve, portanto, a organização de um conjunto de padrões
(usualmente representados na forma de vetores de atributos ou pontos em um
espaço multidimensional – espaço de atributos) em clusters, de acordo com
alguma medida de similaridade.
• intuitivamente, padrões pertencentes a um dado cluster devem ser mais
“similares” entre si do que em relação a padrões pertencentes a outros clusters.

Tópico 5: Uma Visão Geral de Clusterização de Dados 1

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

Figura 1 – Clusterização de dados (ponto de vista métrico)

Tópico 5: Uma Visão Geral de Clusterização de Dados 2


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

• é necessário distinguir aqui clusterização (classificação não-supervisionada) de


análise discriminante (classificação supervisionada):
‰ em classificação supervisionada, são fornecidos padrões rotulados (pré-
classificados) e o problema é rotular novos padrões, ainda não-rotulados.
‰ em classificação não-supervisionada, o problema é agrupar um conjunto de
padrões não-rotulados em clusters que possuam algum significado, ou seja,
de tal modo que os padrões apresentem alguma propriedade comum. Sendo
assim, uma vez definidos os clusters, os padrões também estarão “rotulados”,
mas o rótulo aqui é ditado pelos próprios padrões que compõem cada cluster.
• problemas de clusterização podem ser encontrados em muitas áreas de atuação,
nos mais variados contextos: information retrieval, image segmentation, pattern
classification, phylogenetic inference, microarray gene expression, etc.
• por um lado, isto representa um ponto positivo, por permitir o envolvimento de
pesquisadores e estudiosos com variadas formações e objetivos.

Tópico 5: Uma Visão Geral de Clusterização de Dados 3

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

• por outro lado, as diferentes notações e formas de abordagem para as mesmas


questões têm dificultado o estabelecimento de metodologias genéricas.
• o objetivo deste tópico do curso é posicionar devidamente as abordagens já
propostas, a partir da definição de conceitos fundamentais.

2 Análise de dados

• a análise de dados é requerida em praticamente todas as aplicações


computacionais, seja na fase de desenvolvimento de ferramentas de solução de
problemas ou então na aplicação das ferramentas desenvolvidas.
• dependendo da disponibilidade de modelos apropriados para os fenômenos
responsáveis pela produção dos dados, a análise de dados pode ser exploratória
(formulação de hipóteses e tomada de decisão) ou confirmatória (validação de
modelos).

Tópico 5: Uma Visão Geral de Clusterização de Dados 4


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

• a clusterização está normalmente associada com a análise exploratória, pois


envolve problemas em que há pouca informação a priori acerca dos dados (por
exemplo, modelos estatísticos), e poucas hipóteses podem ser sustentadas.
• é justamente a clusterização que pode fornecer novas hipóteses a respeito dos
inter-relacionamentos dos dados e de sua estrutura intrínseca.

3 Componentes de uma tarefa de clusterização

• a atividade de clusterização normalmente envolve:


‰ representação dos padrões (podendo incluir extração ou seleção de
características);
‰ definição de uma medida de similaridade apropriada ao domínio da
aplicação;
‰ clusterização ou agrupamento;
‰ apresentação do resultado.

Tópico 5: Uma Visão Geral de Clusterização de Dados 5

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

Nova Inter-
Extração ou representação Medida relacionamento
Padrões dos padrões dos padrões
Seleção de de Agrupamento
Características Similaridade

Clusters

Apresentação

Figura 2 – Etapas de um processo de clusterização

• representação dos padrões: envolve definição do número, tipo e modo de


apresentação dos atributos que descrevem cada padrão;
• seleção de características: processo de identificação do subconjunto mais efetivo
dos atributos disponíveis para descrever cada padrão;

Tópico 5: Uma Visão Geral de Clusterização de Dados 6


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

• extração de características: uso de uma ou mais transformações junto aos atributos


de entrada de modo a salientar uma ou mais característica dentre aquelas que estão
presentes nos dados.

• medida de similaridade: fornecida por uma função de distância definida entre


pares de dados ou padrões. É possível incluir na medida de distância aspectos
conceituais (qualitativos) ou então numéricos (quantitativos).

• agrupamento: os grupos podem ser definidos como conjuntos crisp (um padrão
pertence ou não-pertence a um dado grupo) ou fuzzy (um padrão pode apresentar
graus de pertinência aos grupos). O processo de agrupamento pode ser
hierárquico, com um processo recursivo de junções ou separações de grupos, ou
não-hierárquico, com o emprego direto de técnicas de discriminação de clusters.

• apresentação: deve permitir que um computador possa utilizar o resultado de


forma direta ou então deve ser orientada ao usuário, permitindo a visualização

Tópico 5: Uma Visão Geral de Clusterização de Dados 7

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

gráfica dos clusters e a compreensão de suas inter-relações, através da proposição


de protótipos ou outras descrições compactas para os clusters.
• a realimentação do resultado do processo de clusterização pode levar à redefinição
dos módulos de “extração ou seleção de características” e “medida de
similaridade”.

4 Validação do resultado de um processo de clusterização

• como avaliar a qualidade da saída produzida por um processo de clusterização?


• o que caracteriza bons e maus processos de clusterização?
• o fato é que todo algoritmo de clusterização vai produzir clusters a partir dos
padrões de entrada. Sendo assim, caso os dados de entrada não contenham
clusters, então eles não devem ser processados por um algoritmo de clusterização.
• pouco se tem investido em técnicas que permitem indicar a tendência de
clusterização de dados a serem processados (CHENG, 1995; DUBES, 1987).

Tópico 5: Uma Visão Geral de Clusterização de Dados 8


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

• para validar a saída produzida por um processo de clusterização, geralmente se


recorre a critérios de otimalidade, muitas vezes definidos de forma subjetiva. Um
estudo sobre processos de validação de clusters podem ser encontrado em JAIN &
DUBES (1988).

5 Algoritmos de clusterização

• razão para a existência de tantos algoritmos de clusterização:


‰ não há uma técnica de clusterização universal, capaz de revelar toda a
variedade de estruturas que podem estar presentes em conjuntos de dados
multidimensionais;
‰ na definição da medida de similaridade e dos critérios de agrupamento, os
algoritmos de clusterização geralmente dependem implicitamente da
imposição de certas hipóteses a respeito da forma dos clusters ou da
configuração dos múltiplos clusters;

Tópico 5: Uma Visão Geral de Clusterização de Dados 9

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

‰ os dados dificilmente estarão estruturados “idealmente”, ou seja, não formam


configurações hiperesféricas, hiperelipsoidais, lineares, etc., de modo que
cada novo algoritmo de clusterização pode apresentar um comportamento
superior aos já existentes para uma dada conformação específica dos dados
no espaço de atributos.
• uma taxonomia das técnicas de clusterização é apresentada na figura 3.
• todos os nós da taxonomia podem ser refinados com a adoção de critérios mais
específicos para descrever a abordagem, como:

‰ aglomerativa ou divisiva;

‰ mono-atributo ou multi-atributos;

‰ crisp ou fuzzy;

‰ determinística ou estocástica;

‰ incremental ou não-incremental.

Tópico 5: Uma Visão Geral de Clusterização de Dados 10


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

Clusterização

Hierárquica Particional

Single Complete Métrica Teoria de Mistura de


Link Link Euclidiana Grafos Densidades

Expectation
k-means
Maximization

Figura 3 – Taxonomia de Técnicas de Clusterização de Dados

Tópico 5: Uma Visão Geral de Clusterização de Dados 11

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

6 Outros tópicos

• como escolher um método de clusterização para o problema que se tem em mãos,


ou seja, como comparar algoritmos de clusterização em termos de suas
propriedades intrínsecas: critérios de admissibilidade (DUBES & JAIN, 1976;
FISHER & VAN NESS, 1971).
• spatial clustering: está relacionado a dados que descrevem objetos não-
descritíveis por um único ponto, por incluir relações de espaço e aspectos de
topologia. Exemplo: dados geográficos, análise de cenas, sensoriamento remoto
(ESTER, 1999; SAMET, 1990).

7 Técnicas Baseadas em Auto-Organização

• o estudo de sistemas auto-organizados é recente, embora a humanidade tenha


sempre se ocupado com questões vinculadas à origem de sistemas organizados.

Tópico 5: Uma Visão Geral de Clusterização de Dados 12


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

• as formas que podem ser observadas no mundo à nossa volta representam apenas
uma pequena parcela de todas as formas possíveis. Logo, por que não existe mais
variedade?
• para procurar respostas a questões como esta é que se estuda sistemas auto-
organizados e teoria da complexidade.
• exemplos de sistemas naturais que apresentam organização: galáxias, planetas,
componentes químicos, células, organismos, sociedades.
• existem campos de atuação científica que procuram explicar a auto-organização
recorrendo a propriedades e leis aplicáveis às partes constituintes (componentes)
de um sistema organizado específico.
• no entanto, a auto-organização pode ser abordada de modo completamente
distinto, recorrendo-se às propriedades e leis comuns a todos os sistemas
organizados, independente de suas particularidades.

Tópico 5: Uma Visão Geral de Clusterização de Dados 13

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

• neste caso, a atual disponibilidade de recursos computacionais é fundamental para


viabilizar a investigação dos processos envolvidos, através de simulações que
envolvem um grande número de etapas e uma grande variedade de parâmetros e
condições iniciais.
• mesmo assim, o estudo está restrito a fenômenos (concretos ou abstratos) que são
facilmente reprodutíveis, os quais certamente representam um subconjunto de
todos os fenômenos possíveis.
• a reprodução em computador de fenômenos auto-organizados tem levado à
geração de teorias que procuram descrever sistemas complexos e sua organização
espontânea (sistemas parcialmente decomponíveis).
• um sistema complexo pode ser caracterizado como o resultado da auto-
organização de componentes sob forte interação, produzindo estruturas sistêmicas
cujas propriedades geralmente não estão presentes em nenhum de seus
componentes, já que estas dependem de níveis mais elevados de organização.

Tópico 5: Uma Visão Geral de Clusterização de Dados 14


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

• um sistema, por sua vez, pode ser definido como um agrupamento coerente de
componentes que operam como um todo e que apresentam uma individualidade,
ou seja, se distinguem de outras entidades por fronteiras reconhecíveis. Há muitas
variedades de sistemas, as quais podem ser classificadas em 3 grandes grupos:

1. quando as interações de seus componentes são fixas. Ex: máquina.


2. quando as interações de seus componentes são irrestritas. Ex: gás.
3. quando existem interações fixas e variáveis de seus componentes. Ex: célula.

• os sistemas de maior interesse são aqueles pertencentes à classe 3, já que


dependem da natureza e forma das interações de seus componentes ao longo de
sua existência. Assim, o sistema vai apresentar um novo comportamento sempre
que componentes forem adicionados, removidos ou rearranjados, ou então sempre
que houver modificação nas interações.
• a essência da auto-organização está no surgimento de estrutura (formas restritas) e
ordem (organização) sem que estas sejam impostas de fora do sistema. Isto

Tópico 5: Uma Visão Geral de Clusterização de Dados 15

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

implica que este fenômeno é interno ao sistema, resulta da interação de seus


componentes e, em essência, não depende da natureza física destes componentes.
• a organização pode se dar no espaço, no tempo, ou em ambos.
• o que se busca são regras gerais para o crescimento e evolução de estruturas
sistêmicas. Com isso, espera-se poder prever a organização futura que irá resultar
de alterações promovidas junto aos componentes de um dado sistema, além de
poder estender estes resultados a outros sistemas semelhantes.

8 Motivação para clusterização usando auto-organização

• dados rotulados são aqueles que assumem valores em um mesmo espaço vetorial
multidimensional, e que vêm acompanhados da classe a que cada um pertence
(rótulo), podendo haver múltiplas classes, com variâncias e número de dados
distintos ou não para cada classe.
• dados não-rotulados são aqueles que assumem valores em um mesmo espaço
vetorial multidimensional, e que não se conhece a priori a classe a que cada um

Tópico 5: Uma Visão Geral de Clusterização de Dados 16


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

pertence, embora cada um pertença a uma classe específica. O número de classes


pode ser conhecido a priori ou não. A variância e o número de dados de cada
classe pode diferir ou não.

8.1 Modelo simples de classificação para dados rotulados

¾ hipótese: as classes apresentam propriedades distintas (seus elementos


pertencem a regiões distintas do espaço vetorial multidimensional);
¾ modelagem: um representante para cada classe;
¾ objetivo: minimizar o somatório das distâncias entre os dados e o respectivo
representante da classe a que pertencem;
¾ aplicação: após finalizar o posicionamento de todos os representantes, definir
o rótulo de cada novo dado não-rotulado como aquele associado ao
representante que possuir a menor distância ao dado.
• trata-se, portanto, de um problema de otimização, que pode ser resolvido por
intermédio de técnicas de treinamento supervisionado.

Tópico 5: Uma Visão Geral de Clusterização de Dados 17

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

• no caso, basta dividir o presente problema em C problemas distintos, sendo C o


número de classes.
• exemplos gráficos e análise topológica.
• limitações.

8.2 Modelo composto de classificação para dados rotulados

¾ hipótese: as classes apresentam propriedades distintas (seus elementos


pertencem a regiões distintas do espaço vetorial multidimensional);
¾ modelagem: múltiplos representantes para cada classe;
¾ objetivo: minimizar o somatório da distância entre cada dado e o
representante mais próximo da classe a que pertence;
¾ aplicação: após finalizar o posicionamento de todos os representantes, definir
o rótulo de cada novo dado não-rotulado como aquele associado ao
representante que possuir a menor distância ao dado.

Tópico 5: Uma Visão Geral de Clusterização de Dados 18


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp

• trata-se também de um problema de otimização, mas neste caso técnicas de


treinamento não-supervisionado devem ser empregadas, pois os representantes de
cada classe devem se auto-organizar no espaço de acordo com a distribuição
apresentada pelos dados da respectiva classe.
• como no caso anterior, pode-se dividir o presente problema em C problemas
distintos.
• exemplos gráficos e análise topológica.

8.3 Modelo composto de classificação para dados não-rotulados

¾ hipótese: não se conhece o número de classes, mas sabe-se que elas


apresentam propriedades distintas (seus elementos pertencem a regiões
distintas do espaço vetorial multidimensional);
¾ modelagem: múltiplos representantes não-rotulados;
¾ objetivo: minimizar o somatório da distância entre cada dado e o
representante não-rotulado mais próximo.

Tópico 5: Uma Visão Geral de Clusterização de Dados 19

Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben


DCA/FEEC/Unicamp

¾ rotulagem: após finalizar o posicionamento de todos os representantes


(também por auto-organização), aplicar alguma técnica de discriminação que
agrupe representantes de acordo com as posições relativas entre eles. A
seguir, atribuir um rótulo diferente a cada grupo de representantes.
¾ aplicação: definir o rótulo de cada novo dado não-rotulado como aquele
associado ao representante que possuir a menor distância ao dado.
• exemplos gráficos e análise topológica (COSTA, 1999).

9 Referências bibliográficas
CHENG, Y. “Mean Shift, Mode Seeking, and Clustering”, IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 17, pp.
790-799, 1995.
COSTA, J.A.F. “Classificação Automática e Análise de Dados por Redes Neurais Auto-Organizáveis”, Tese de Doutorado,
Faculdade de Engenharia Elétrica e de Computação (FEEC/Unicamp), 1999.
DUBES, R.C. “How Many Clusters Are Best? – An Experiment”, Pattern Recognition, vol. 20, pp. 645-663, 1987.
DUBES, R.C. & JAIN, A.K. “Clustering Techniques: The User’s Dilemma”, Pattern Recognition, vol. 8, pp. 247-260, 1976.
ESTER, M. “Spatial Analysis”, invited chapter in Kloesgen, W. & Zytkow, J. Handbook of Data Mining and Knowledge
Discovery, Oxford University Press, 1999.
FISHER, L. & VAN NESS, J.W. “Admissible Clustering Procedures”, Biometrika, vol. 58, pp. 91-104, 1971.

Tópico 5: Uma Visão Geral de Clusterização de Dados 20


Análise de Dados em Bioinformática – Profs. Moscato & Von Zuben
DCA/FEEC/Unicamp
JAIN, A.K. & DUBES, R.C. “Algorithms for Clustering Data”, Prentice Hall, 1988.
JAIN, A.K., MURTY, M.N. & FLYNN, P.J. “Data Clustering: A Review”, ACM Computing Surveys, vol. 31, no. 3, pp. 264-323,
1999.
SAMET, H. “The Design and Analysis of Spatial Data Structures”, Addison-Wesley, 1990.

10 Bibliografia adicional
BACKER, E. “Computer-Assisted Reasoning in Cluster Analysis”, Prentice Hall, 1995.
DUDA, R.O., HART, P.E. & STORK, D.G. “Pattern Classification”, Wiley, 2nd edition, 1998.
DURAN, B.S. & ODELL, P.L. “Cluster Analysis: A Survey”, Springer-Verlag, 1974.
EVERITT, B.S. “Cluster Analysis”, Halsted Press, 3rd edition, 1993.
FASULO, D. “An Analysis of Recent Work on Clustering Algorithms”, Technical Report #01-03-02, Department of Computer
Science & Engineering, University of Washington, 1999.
FAYYAD, U.M., PIATETSKY-SHAPIRO, G., SMYTH, P. & UTHURUSAMY, R. (eds.) “Advances in Knowledge Discovery and Data
Mining”, AAAI/MIT Press, 1996.
GORDON, A.D. “Classification: Methods for the Exploratory Analysis of Multivariate Data”, Chapman and Hall, 1981.
HARTIGAN, J.A. “Clustering Algorithms”, John Wiley, 1975.
KAUFMAN, L. & ROUSSEEUW, P.J. “Finding Groups in Data: An Introduction to Cluster Analysis”, John Wiley & Sons, 1990.
PIATETSKY-SHAPIRO, G. & FRAWLEY, W.J. (eds.) “Knowledge Discovery in Databases”, AAAI/MIT Press, 1991.
RASMUSSEN, E. “Information Retrieval”, Prentice Hall, 1992.
SPATH, H. “Cluster Analysis Algorithms for Data Reduction and Classification”, Ellis Horwood Publishers, 1980.

Tópico 5: Uma Visão Geral de Clusterização de Dados 21

Você também pode gostar