Supongamos que tengo cinco conjuntos que me gustaría agrupar. Entiendo que la técnica SimHashing descrita aquí:
https://moultano.wordpress.com/2010/01/21/simple-simhashing-3kbzhsxyg4467-6/
podría producir tres grupos ( {A}
, {B,C,D}
y {E}
), por ejemplo, si sus resultados fueran:
A -> h01
B -> h02
C -> h02
D -> h02
E -> h03
Del mismo modo, la técnica MinHashing descrita en el Capítulo 3 del libro MMDS:
http://infolab.stanford.edu/~ullman/mmds/ch3.pdf
También podría producir los mismos tres grupos si sus resultados fueran:
A -> h01 - h02 - h03
B -> h04 - h05 - h06
|
C -> h04 - h07 - h08
|
D -> h09 - h10 - h08
E -> h11 - h12 - h13
(Cada conjunto corresponde a una firma MH compuesta de tres "bandas", y dos conjuntos se agrupan si al menos una de sus bandas de firma coincide. Más bandas significarían más posibilidades de coincidencia).
Sin embargo, tengo varias preguntas relacionadas con estos:
(1) ¿Se puede entender SH como una versión de banda única de MH?
(2) ¿MH implica necesariamente el uso de una estructura de datos como Union-Find para construir los clústeres?
(3) ¿Estoy en lo cierto al pensar que los grupos, en ambas técnicas, son en realidad "pre-grupos", en el sentido de que son solo conjuntos de "pares candidatos"?
(4) Si (3) es verdadero, ¿implica que todavía tengo que hacer una búsqueda dentro de cada "pre-cluster", para dividirlos en grupos "reales"? (lo que podría ser razonable si tengo muchos pre-grupos pequeños y bastante equilibrados, de lo contrario no tanto)
fuente