Vai al contenuto

Kernel smoother

Da Wikipedia, l'enciclopedia libera.

Un kernel smoother è una tecnica non parametrica di apprendimento automatico statistico atta a stimare una funzione a valori reali come media ponderata di dati osservati adiacenti [1][2]. Il peso è definito dal kernel, in modo che ai punti più vicini vengano assegnati pesi maggiori. La funzione stimata non ha discontinuità e il livello di smoothness è impostato da un singolo parametro. Il kernel smoothing può essere considerato un tipo di media mobile ponderata.

Sia un kernel definito da

dove:

  • è la norma euclidea
  • è un parametro (raggio del kernel)
  • D(t) è tipicamente una funzione a valori reali positivi, il cui valore decresce (o no cresce) al crescere della distanza tra X e X0.

I kernel più comunemente utilizzati per lo smoothing comprendono i kernel parabolici (Epanechnikov), tricube e gaussiani.

Sia una funzione continua di X. Per ogni , la media ponderata del kernel di Nadaraya-Watson (stima Y( X )) è definita da

dove:

  • N è il numero di punti osservati
  • Y ( X i ) sono le osservazioni nei punti X i.

Nelle sezioni seguenti si descriveranno alcuni casi particolari di kernel smoother.

Kernel smoother gaussiano

[modifica | modifica wikitesto]
Esempio di regressione con kernel smoother gaussiano.

Uno dei kernel più ampiamente utilizzati è il kernel gaussiano, che viene espresso dalla seguente equazione

in tale equazione b viene detta scala di lunghezza per lo spazio di input.

Smoother del vicino più prossimo

[modifica | modifica wikitesto]
Esempio di smoother del vicino più prossimo.

L' algoritmo k-nearest neighbor può essere utilizzato per definire uno smoother k -nearest neighbor come segue. Per ogni punto X0, si considerano m vicini più prossimi e si stima il valore di Y(X0) facendo la media dei valori di tali vicini.

Formalmente, , dove è il m-esimo vicino più prossimo a X0 e

In questo esempio, X è unidimensionale. Per ogni X 0, è un valore medio dei 16 punti più prossimi a X 0 (indicati in rosso).

Kernel smoother medio

[modifica | modifica wikitesto]
Esempio di kernel smoother medio.

L'idea del kernel average smoother è la seguente. Per ogni punto X0, si sceglie una grandezza di distanza costante λ (raggio del kernel o larghezza della finestra per p = 1 dimensione) e si calcola una media ponderata per tutti i punti con distanza da X0 inferiore a (più i punti sono vicini a X0, più alto è il loro peso).

Formalmente, e D(t) è basata su uno dei kernel più diffusi.

Per ogni X 0 la larghezza della finestra è costante e il peso di ciascun punto nella finestra è schematicamente indicato dall'area in giallo nel grafico. Si può osservare che la stima è regolare, ma i punti di confine sono distorti. Ciò dipende dal numero ineguale di punti nella finestra (da destra e da sinistra rispetto a X0), quando X0 è sufficientemente vicino al confine.

Regressione locale

[modifica | modifica wikitesto]

Regressione lineare locale

[modifica | modifica wikitesto]

Nelle due sezioni precedenti si è ipotizzato che la funzione Y(X) in questione fosse localmente costante, quindi si è potuto utilizzare la media ponderata per la stima. L'idea della regressione lineare locale è quella di adattare localmente una retta (o un iperpiano per più dimensioni) e una funzione costante (linea orizzontale). Dopo aver adattato la retta, la stima è fornita dal valore di questa linea nel punto X0. Ripetendo questa procedura per ogni X0, si ottiene la funzione di stima . Come nella sezione precedente, la larghezza della finestra è costante Formalmente, la regressione lineare locale viene calcolata risolvendo un problema di minimi quadrati ponderati.

Risultato della regressione lineare locale.

Per una dimensione (p = 1):

La soluzione in forma chiusa è data da:

dove:

La funzione risultante è regolare e si è ridotto il problema dei punti di confine distorti.

La regressione lineare locale può essere applicata a spazi con qualunque numero di dimensioni, sebbene la questione di cosa si trovi un intorno locale diventi più complessa al crescere di tale numero. È comune utilizzare k punti di training più vicini a un punto di test per adattare la regressione lineare locale. Questo può portare a un'elevata varianza della funzione appresa. Per limitare la varianza, l'insieme dei punti di training dovrebbe contenere il punto di test nel proprio inviluppo convesso.[3]

Regressione polinomiale locale

[modifica | modifica wikitesto]

Invece di adattare funzioni localmente lineari, si può ricorrere a funzioni polinomiali. Per p=1, si dovrebbe minimizzare:

con

Nel caso generale (p>1), si dovrebbe minimizzare:

Voci correlate

[modifica | modifica wikitesto]
  1. ^ Trevor Hastie, Robert Tibshirani e J. H. Friedman, The elements of statistical learning: data mining, inference, and prediction: with 200 full-color illustrations, collana Springer series in statistics, Springer, 2001, ISBN 978-0-387-95284-0.
  2. ^ Qi Li e Jeffrey Scott Racine, Nonparametric econometrics: theory and practice, Princeton University Press, 2007, ISBN 978-0-691-12161-1.
  3. ^ Maya R. Gupta, Eric K. Garcia e Erika Chin, Adaptive Local Linear Regression With Application to Printer Color Management, in IEEE Transactions on Image Processing, vol. 17, n. 6, 2008-06, pp. 936–945, DOI:10.1109/TIP.2008.922429.