De una forma u otra, cada algoritmo de agrupamiento se basa en alguna noción de "proximidad" de puntos. Parece intuitivamente claro que puede usar una noción relativa (invariante de escala) o una noción de proximidad absoluta (consistente), pero no ambas .
Primero intentaré ilustrar esto con un ejemplo, y luego diré cómo esta intuición encaja con el Teorema de Kleinberg.
Un ejemplo ilustrativo
Supongamos que tenemos dos conjuntos y S 2 de 270 puntos cada uno, dispuestos en el plano de esta manera:S1S2270
Es posible que no vea puntos en ninguna de estas imágenes, pero eso es solo porque muchos de los puntos están muy juntos. Vemos más puntos cuando hacemos zoom:270
Probablemente estará de acuerdo espontáneamente en que, en ambos conjuntos de datos, los puntos están organizados en tres grupos. Sin embargo, resulta que si hace zoom en cualquiera de los tres grupos de , verá lo siguiente:S2
Si crees en una noción absoluta de proximidad, o en la consistencia, seguirás manteniendo que, independientemente de lo que acabas de ver bajo el microscopio, consta de solo tres grupos. De hecho, la única diferencia entre S 1 y S 2 es que, dentro de cada grupo, algunos puntos ahora están más juntos. Si, por otro lado, crees en una noción relativa de proximidad, o en una invariancia de escala, te sentirás inclinado a argumentar que S 2 consiste no en 3 sino en 3 × 3 = 9 grupos. Ninguno de estos puntos de vista es incorrecto, pero debe elegir de una forma u otra.S2S1S2S233×3=9
Un caso de invariancia de isometría
Si compara la intuición anterior con el teorema de Kleinberg, encontrará que están ligeramente en desacuerdo. De hecho, el teorema de Kleinberg parece decir que usted puede lograr invariancia de escala y consistencia al mismo tiempo, siempre y cuando no se preocupan por una tercera propiedad llamada riqueza. Sin embargo, la riqueza no es la única propiedad que pierde si simultáneamente insiste en la invariancia de escala y la coherencia. También pierde otra propiedad más fundamental: la isometría-invariancia. Esta es una propiedad que no estaría dispuesto a sacrificar. Como no aparece en el documento de Kleinberg, me detendré en él por un momento.
En resumen, un algoritmo de agrupación es invariante en isometría si su salida depende solo de las distancias entre puntos, y no de alguna información adicional, como etiquetas que adhiere a sus puntos, o de un orden que impone a sus puntos. Espero que esto parezca una condición muy leve y muy natural. Todos los algoritmos discutidos en el artículo de Kleinberg son invariantes de isometría, excepto el algoritmo de enlace único con la condición de detención del clúster . Según la descripción de Kleinberg, este algoritmo utiliza un orden lexicográfico de los puntos, por lo que su salida puede depender de cómo los etiquete. Por ejemplo, para un conjunto de tres puntos equidistantes, la salida del algoritmo de enlace único con el 2k2- la condición de detención del clúster dará diferentes respuestas según si etiquetas tus tres puntos como "gato", "perro", "ratón" (c <d <m) o como "Tom", "Spike", "Jerry" (J <S <T):
Este comportamiento antinatural puede, por supuesto, repararse fácilmente reemplazando la condición de detención del clúster con una “condición de detención del clúster ( ≤ k ) ”. La idea es simplemente no romper los lazos entre los puntos equidistantes, y dejar de fusionar grupos tan pronto como hayamos llegado a la mayoría de los k grupos. Este algoritmo reparado seguirá produciendo k grupos la mayor parte del tiempo, y será invariante de isometría e invariante de escala. De acuerdo con la intuición dada anteriormente, sin embargo, ya no será consistente.k(≤k) kk
Para una definición precisa de la invariancia de isometría, recuerde que Kleinberg define un algoritmo de agrupamiento en un conjunto finito como un mapa que asigna a cada métrica en S una partición de S :
Γ : { métricas en S } → { particiones de S }SSS
Unaisometría i entre dos métricas d y d ′ en S es una permutación i : S → S tal que d ′ ( i ( x ) , i ( y ) ) = d ( x , y ) para todos puntos x y y en S .
Γ:{metrics on S}→{partitions of S}d↦Γ(d)
idd′Si:S→Sd′(i(x),i(y))=d(x,y)xyS
Definición: Un algoritmo de agrupamiento es invariante en isometría si cumple la siguiente condición: para cualquier métrica d y d ′ , y cualquier isometría i entre ellas, los puntos i ( x ) e i ( y ) se encuentran en el mismo grupo de Γ ( d ′ ) si y solo si los puntos originales x e y se encuentran en el mismo grupo de Γ ( d ) .Γdd′ii(x)i(y)Γ(d′)xyΓ(d)
Cuando pensamos en algoritmos de agrupamiento, a menudo identificamos el conjunto abstracto con un conjunto concreto de puntos en el plano, o en algún otro espacio ambiental, e imaginamos que variamos la métrica en S como moviendo los puntos de S alrededor. De hecho, este es el punto de vista que tomamos en el ejemplo ilustrativo anterior. En este contexto, la invariancia de isometría significa que nuestro algoritmo de agrupamiento es insensible a rotaciones, reflexiones y traslaciones.SSS
Una variante del teorema de Kleinberg
La intuición dada anteriormente es capturada por la siguiente variante del Teorema de Kleinberg.
Teorema: no existe un algoritmo de agrupamiento no trivial invariante de isometría que sea simultáneamente consistente e invariante de escala.
Aquí, mediante un algoritmo de agrupación trivial , me refiero a uno de los dos algoritmos siguientes:
S
S
La afirmación es que estos algoritmos tontos son los únicos dos algoritmos invariantes de isometría que son consistentes e invariantes a escala.
SΓd₁Sd₁(x,y)=1x≠ySΓΓ(d₁)Γ(d₁)Γ(d₁)Γ(d₁)dS≥1dΓ(d)=Γ(d₁)ΓΓ(d₁)dS≤1Γ(d)=Γ(d₁)Γ
Por supuesto, esta prueba es muy cercana en espíritu a la prueba de Margareta Ackerman del teorema original de Kleinberg, discutido en la respuesta de Alex Williams.