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.