Stima kernel di densità
# Stima kernel di densità

In statistica, la stima kernel di densità (o kernel density estimation) è un metodo non parametrico utilizzato per il riconoscimento di pattern e per la classificazione attraverso una stima di densità negli spazi metrici, o spazio delle feature. Per ogni x all'interno dello spazio delle feature, l'algoritmo permette di calcolare la probabilità di appartenere ad una classe C, considerando la densità di C in un intorno k del punto x. Il metodo si basa su un intorno di dimensione fissa calcolata in funzione al numero di osservazione N.

È nota anche come metodo delle finestre di Parzen-Rosenblatt o delle finestre di Parzen, dagli statistici Emanuel Parzen e Murray Rosenblatt.

## Idea di base

### Classificazione per prossimità

Un metodo di classificazione per prossimità (finestre di Parzen o k-nearest neighbors), propone di calcolare la probabilità condizionale in un punto x con la seguente stima di densità:

    $P(x|C)=K/NV$

dove:

* $N$ è il numero di osservazione nel training set;
* $V$ è il volume dell'intorno del punto $x$;
* $K$ sono gli elementi nell'intorno $V$, appartenenti alla classe $C$.

### Strategia

L'algoritmo a finestre di Parzen propone di ridurre la dimensione della regione $V$ intorno ad $x$, in funzione del numero $N$ di osservazioni disponibili. Questa strategia si basa sull'idea di ridurre $V$ il più possibile, in maniera da ottenere una stima approssimata a quella reale del punto, allo stesso tempo cerca di non considerare una regione tanto piccola da avere $K=0$, non perché $x$ è impossibile per $C$, ma perché la regione non è troppo piccola per contenerlo.

## Algoritmo

### Funzione K

Si consideri una funzione $K(h,P)$ che dipende dal parametro di scala $h$, e dalla distanza di $P$ a un punto fissato $P$$_0.$ È richiesto che questa funzione abbia integrale unitario sul dominio $P$.

### Il metodo

Consiste nell'assegnare $P(x|C)$ nel punto $x$ nel seguente modo:

$P(x|C)=1/N$$Σ_i$ $K$$(h,d(x,x_i))$

Cioè la densità nel punto $x$ si ottiene considerando il contributo come la somma dei contributi forniti dalle osservazioni nel campione spalmate secondo la legge $K(h,P)$, normalizzati ad $N$.

### La scelta di h

La scelta di $h$ è un problema molto delicato, generalmente dipende dal problema in esame. Una regola molto diffusa e generalizzata è quella di prendere $h=O$($n$$^{-1/5}).$

## Valutazioni

Un problema di questo metodo è dovuto alla scelta fissa della funzione K per tutto lo spazio delle feature. Alla fine se si utilizza una finestra molto piccola, si introduce il rischio di overfitting. Se si utilizza una finestra troppo grande si hanno più errori nelle zone più addensate. Per questo motivo una finestra dinamica (Algoritmo k-nn) potrebbe dare risultati migliori.

