Perché il vicino più vicino basato su KD-Tree esponenziale in K?


9

Ho letto in molti articoli sulla ricerca del vicino più vicino di dimensione superiore che gli alberi KD sono esponenziali in K, ma non riesco a determinare il perché.

Quello che sto cercando è una solida analisi della complessità del runtime che spiega questo aspetto del problema.


Il pensiero rapido è che kè effettivamente la dimensione del problema e quindi soffre della "maledizione della dimensionalità".
— Michael Klein,

Risposte:


1

kNN tende ad essere esponenziale perché lo spazio di ricerca aumenta con 2K. Immagina di dividere lo spazio attorno al tuo punto di ricerca in quadranti. Per k = 1 devi solo cercare due "quadranti" (valori più alti e più bassi), per k = 2 sono 4 quadranti, per k = 3 sono 8 quadranti, cioè crescita esponenziale dello spazio di ricerca. Questo è ciò di cui soffre l'albero kD, perché deve cercare2K sottobranche.

Altri alberi hanno prestazioni molto migliori, ad esempio CoverTree . Ho anche scoperto che l'albero del PH funziona abbastanza bene, sembra impiegare costantemente il doppio del CoverTree per i set di dati tra k = 8 e k = 27 (non avevo set di dati con k più alto).


Nota che puoi usare LaTeX qui per comporre la matematica in un modo più leggibile. Vedi qui per una breve introduzione.
— Raffaello
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.