Scelta di un valore k per l'analisi del rilevamento del fattore anomalo locale (LOF)


9

Ho una serie di dati tridimensionali e sto cercando di utilizzare l'analisi del fattore anomalo locale per identificare i valori più unici o strani. Come si decide il valore k da utilizzare nell'analisi LOF? Capisco cosa determina il valore k, e quindi non sono sorpreso di vedere risultati leggermente diversi usando k diversi, ma non sono sicuro se ci sono caratteristiche del mio set di dati che dovrebbero spingermi verso un valore rispetto agli altri . Grazie!

Risposte:


10

Pubblicando questo qui per chiunque incontrerà la mia domanda in futuro - il documento originale che descrive l'algoritmo del fattore anomalo locale, "LOF: Identificare i valori anomali locali basati sulla densità" (Breunig et al), raccomanda un metodo per scegliere un valore k . Come promemoria, l'algoritmo LOF confronta la densità di ciascun punto con la densità dei suoi vicini più vicini. Gli autori dell'articolo raccomandano di scegliere un minimo e un massimo , e per ogni punto, prendendo il valore LOF massimo su ogni in quell'intervallo. Offrono diverse linee guida per la scelta dei limiti.k k kkkkk

Per il valore minimo, i valori LOF fluttuano selvaggiamente i punti in una distribuzione uniforme per , con punti in una distribuzione uniforme che talvolta appaiono come valori anomali, quindi raccomandano almeno . In secondo luogo, il valore minimo di funge da dimensione minima affinché qualcosa sia considerato un "cluster", in modo che i punti possano essere anomali rispetto a quel cluster. Se , e hai un gruppo di punti e un punto , ogni punto nel gruppo includerà nei vicini più vicini e includerà quei punti, portando ad avere LOF molto simili. Quindi, se vuoi considerare un punto vicino a un gruppo dim i n ( k ) = 10 k k = 15 12 p p p N Nk<10min(k)=10kk=1512pppNInoltre, come valore aberrante, piuttosto che parte di quel gruppo, proprio valore k deve essere almeno .N

Per il valore massimo, si applica un criterio simile, in quanto dovrebbe essere il numero massimo di oggetti che si desidera vengano considerati anomali se raggruppati insieme. Un gruppo di oggetti isolati dall'insieme principale può essere un cluster o valori anomali; per , saranno i primi; per , saranno i secondi.N k < N k > NNNk<Nk>N

Speriamo che questo aiuti chiunque abbia un problema simile. Il documento completo è qui e la discussione dei valori k max / min inizia a pagina 7 e passa a pagina 9. (Si riferiscono al valore come MinPts .)k


Voglio solo capire una cosa. Supponiamo che per ogni set di dati seleziono k = 20 e generi LOF per ciascun punto, quindi visualizzo tutti i punti in ordine decrescente del relativo LOF. Ora, quando sto analizzando i dati, posso scegliere l'intervallo fino al quale penso che i dati siano anomali (secondo la conoscenza del dominio) Pensi che questo aiuti? Solo io come adesso non devo preoccuparmi del valore di k e sto usando la mia conoscenza del dominio per analizzare gli outlier secondo la classifica LOF. Grazie,
Swapnil Bhure,
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.