Seja uma função à qual nos referimos como função de similaridade . Exemplos de funções de similaridade são distância cosseno, norma , distância de Hamming, similaridade de Jaccard, etc.
Considere vectores binários de comprimento : .
Nosso objetivo é agrupar vetores semelhantes. Mais formalmente, queremos calcular um gráfico de similaridade em que os nós são os vetores e as arestas representam vetores que são semelhantes ( ).
e são números muito grandes, e comparar doisvetores comprimentoé caro, não podemos realizar todas asoperações deforça bruta . Queremos calcular o gráfico de similaridade com significativamente menos operações.
Isso é possível? Se não, podemos calcular uma aproximação ao gráfico que contém todas as arestas no gráfico de similaridade e possivelmente no máximo outras arestas?