Capisco che c'è un thread che discute un problema simile qui:
Come cercare in modo efficiente un set di vettori per un vettore che è la corrispondenza più simile
Ma il mio problema è leggermente diverso e, si spera, più facile.
Dato un insieme di vettori della stessa dimensione, ad es.
[2, 3, 5, 9]
[12, 9, 2, 8]
[45, 1, 0, 1]
E un vettore di query [1, 4, 7, 2], vorrei un algoritmo che restituisca [2, 3, 5, 9] come il vettore di corrispondenza più vicino perché ha la somma più bassa di differenza elementare, cioè, (1-2) + (4-3) + (7-5) + (2-9) = -5
Un modo sarebbe di pre-calcolare la "similarità" a coppie, ma il calcolo è molto pesante, dato che avrò più di 5000 vettori quindi 250.000 confronti.