Per un'applicazione di apprendimento della macchina, i miei bisogni di gruppo per calcolare la distanza euclidea al esimo vicino più prossimo in un insieme per ogni (per tra il 5 e circa 100 e alcune centinaia fino a qualche milione). Attualmente stiamo usando l'approccio o quello ovvio con un albero kd su , che quando è alto eè relativamente basso non vince mai. (Tutto è in memoria.)X x ∈ ( X ∪ Y ) ⊂ R d d | X | ≈ | Y | O ( d | X | |X d | X |
Sembra che ci debba essere un modo migliore della forza bruta, almeno - almeno uno che sfrutti la disuguaglianza del triangolo, o forse con gli hash sensibili alla località. Un'approssimazione ragionevolmente stretta è anche potenzialmente a posto.
La ricerca che sono stato in grado di trovare sembra concentrarsi sul problema di trovare il vicino più vicino (o uno che è approssimativamente il più vicino). Il problema che sto cercando va con un altro nome o c'è una connessione a un problema correlato a cui non ho pensato?