Machine Learning · Insper

Agrupamento Hierárquico

Abordagem avançada

Que ligação acha que formas, que distância serve para que dados, até onde o método escala e quando uma árvore é a ferramenta certa

O caminho desta parte

  1. Casar a ligação com a formaencadeamento contra grupos compactos; uma regra local de corte
  2. Escolher a distânciauma fórmula de atualização; correlação e cosseno
  3. Encarar o customemória e tempo quadráticos; amostrar e depois atribuir
  4. Escolher a ferramentacontra o k-means e o agrupamento por densidade; aplicações
Cada etapa responde a uma pergunta: que ligação acha que formas? → que distância para que dados? → até onde o método escala? → quando uma árvore é a ferramenta certa?
Etapa 1 · que ligação acha que formas?

O comportamento de cada ligação, medido

Quatro conjuntos com grupos conhecidos, 300 pontos cada; todo método recebe o número verdadeiro de grupos. A nota é o ARI (índice de Rand ajustado, Adjusted Rand Index): 1 para os grupos verdadeiros, perto de 0 para o acaso.

Preveja. Qual ligação recupera as duas luas?
simplescompletamédiaWard
bolhas0,570,980,980,98
bolhas + ponte0,000,910,990,96
luas1,000,200,430,30
faixas paralelas1,000,120,190,22

Dois campos

Quatro conjuntos por quatro ligações: a simples ganha nas luas e nas faixas, mas falha nas bolhas e na ponte; as outras, o contrário

A simples pergunta "existe algum salto curto?": segue cadeias (1,00 nas luas e nas faixas) e uma ponte de 20 pontos funde duas bolhas (0,00). Isso é o encadeamento (chaining).

A completa, a média e Ward comparam os grupos como um todo: uma ponte não consegue puxar duas bolhas uma para a outra, mas elas cortam as luas e as faixas de través, como o k-means.

Ward (o padrão) ou a média para grupos compactos; a simples para formas finas, conectadas e bem separadas. Sempre olhe a árvore.

Uma regra local para o corte: o coeficiente de inconsistência

\(h\) = altura de uma fusão; \(\bar h\), \(s\) = média e desvio padrão de \(h\) e das alturas das fusões logo abaixo dela (profundidade 2: no máximo três alturas). Árvore de Ward dos 400 pontos.

\[ \text{coeficiente} = \frac{h - \bar h}{s} \]
fusão\(\bar h\)\(s\)coef.
4ª do topo7,053,050,86
3ª16,1412,221,15
2ª16,9013,361,15
topo73,9373,871,15
Árvore de Ward de 400 pontos com cortes em 2 e em 4 grupos; salto de 126,9 para k=2 e 20,6 para k=4
Três alturas: o coeficiente não passa de \(2/\sqrt3 = 1{,}15\) e as três fusões do topo chegam todas a esse máximo. Ele não distingue \(k = 2\) de \(k = 4\); os saltos distinguem.
Etapa 2 · que distância para que dados?

Uma fórmula de atualização para todas as ligações

Depois que \(I\) e \(J\) se fundem, a distância de qualquer outro grupo \(K\) até \(I \cup J\) (Lance & Williams, 1967), com coeficientes \(\alpha_I, \alpha_J, \beta, \gamma\) escolhidos pela ligação:

\[ d(K, I \cup J) = \alpha_I\, d(K, I) + \alpha_J\, d(K, J) + \beta\, d(I, J) + \gamma\, \lvert d(K, I) - d(K, J) \rvert \]
A B C 0 3 7 d(I, J) = 3 d(K, I) = 7 d(K, J) = 4 I = {A}, J = {B}, K = {C}
ligaçãocoeficientes\(d(C, \{A, B\})\)
simples\(\alpha = \tfrac12,\ \beta = 0,\ \gamma = -\tfrac12\)\(3{,}5 + 2 - 1{,}5 = 4\)
completa\(\alpha = \tfrac12,\ \beta = 0,\ \gamma = +\tfrac12\)\(3{,}5 + 2 + 1{,}5 = 7\)
média\(\alpha_I = \tfrac{|I|}{|I| + |J|},\ \beta = \gamma = 0\)\(3{,}5 + 2 = 5{,}5\)
O mínimo, o máximo e a média das tabelas feitas à mão, só a partir da matriz de distâncias. Então o algoritmo nunca precisa dos pontos: qualquer dissimilaridade serve, exceto para Ward, cuja fórmula só é exata para distâncias euclidianas ao quadrado.

Além da distância euclidiana

perfis: distância de correlação

Quatro clientes: dois crescem de forma constante, dois gastam quase tudo num único mês; em cada par, um gasta cinco vezes mais.

A euclidiana agrupa por quanto gastam; \(1 - r\) agrupa pelo formato do gasto.

documentos: distância do cosseno

Um texto, o mesmo texto dez vezes mais longo, um texto sobre outro tema. A partir do primeiro, euclidiana: 20,12 até a cópia longa, 3,87 até o outro tema. Cosseno: 0,0 e 1,0.

Qual distância está certa depende da pergunta; nenhum índice calculado nos dados pode decidir isso. A simples, a completa e a média aceitam qualquer dissimilaridade; Ward, só a euclidiana.
Etapa 3 · até onde o método escala?

Custo: por que não escala

linhasdistâncias entre pares
1.0000,004 GB
10.0000,400 GB
100.00040 GB
1.000.000cerca de 4.000 GB
O tempo do linkage do SciPy cresce como n elevado a 2,5 para Ward e a 2,3 para a simples, contra 0,004 s do k-means; memória de 0,4 GB com 10.000 linhas, 40 GB com 100.000

Os melhores algoritmos são \(O(n^2)\), ainda quadráticos. Na máquina em que a figura foi gerada, 16.000 linhas levaram 6,11 s com Ward; o k-means, 0,004 s. Um método para centenas a dezenas de milhares de linhas.

O que fazer com mais linhas

  • Amostrar e depois atribuir. Árvore numa amostra de 2% (2.000 de 100.000 linhas), cortada em 5, cada um dos demais pontos ao centroide mais próximo: ARI 0,993. O que se perde é a estrutura fina: um grupo de 30 pontos teria cerca de 0,6 representante.
  • Restrições de conectividade: só fundir vizinhos num grafo esparso.
  • O HDBSCAN (o DBSCAN hierárquico; DBSCAN: density-based spatial clustering of applications with noise) é ele próprio hierárquico: uma árvore de ligação simples sobre uma distância ajustada pela densidade, sem a matriz completa. Além disso, marca ruído.
Etapa 4 · quando uma árvore é a ferramenta certa?

Hierárquico vs k-means vs DBSCAN

hierárquicok-meansDBSCAN / HDBSCAN
um grupo éum ramo da árvore de fusõesos pontos mais perto de um centroideuma região densa
decidido depois do ajuste\(k\) ou a altura do corte——
saídauma família aninhada de partiçõesuma partiçãouma partição mais ruído
qualquer distância?sim, exceto Wardsó euclidianasim
pontos novossem predictpredictsem predict
mesmo resultado a cada execuçãosimdepende da inicializaçãosim

Aplicações

Taxonomias: sempre que o produto é uma árvore e não uma partição.

Segmentação em várias granularidades: 12 segmentos finos que são subdivisões de 3 grossos.

Mapas de calor de expressão gênica: agrupe linhas e colunas com distância de correlação e redesenhe na ordem das folhas.

Uma tabela de 40 genes por 12 amostras parece ruído na ordem medida e forma blocos nítidos na ordem das folhas do dendrograma; as amostras de tumor e as normais se separam no topo

Os mesmos números, reordenados pela árvore: aparecem blocos de genes que sobem e que descem nos tumores e a árvore das colunas separa as amostras de tumor das normais na sua fusão do topo.

Resumo

  1. A simples segue cadeias e se engana com pontes; a completa, a média e Ward acham grupos compactos e cortam formas finas de través.
  2. Uma regra local de corte (o coeficiente de inconsistência) deixa escapar o que os saltos, lidos do topo, enxergam.
  3. Uma fórmula de atualização: qualquer dissimilaridade serve, exceto para Ward. Distância de correlação para perfis, cosseno para documentos.
  4. Memória e tempo quadráticos: centenas a dezenas de milhares de linhas. Além disso: amostrar e atribuir, restrições de conectividade, HDBSCAN.
  5. Escolha uma árvore quando o produto é uma hierarquia, os grupos são desiguais ou vários níveis de detalhe são necessários.
Lab avançado · cerca de 25 min, em duplas

A árvore contra o k-means e o gabarito, passos 7 a 9

  • Mesmo notebook, mesma sessão, a partir do passo 7.
  • Passo 7: o k-means com \(k = 4\) e \(k = 7\); as partições dele são aninhadas como os cortes da árvore?
  • Passo 8: abrir as classes dos zoólogos e auditar cada decisão do lab fundamental.
  • Passo 9: o mapa de calor, com linhas e colunas reordenadas pela árvore.
  • Simulações: o k-means com outra semente (passo 7) e a ligação, auditada (passo 8).

Ritmo: passo 7 e a sua simulação em 10 min; passo 8 e a sua simulação em 10 min; passo 9 em 5 min.