Feature Learning

Il feature learning è un insieme di tecniche di machine learning volte ad automatizzare il feature engineering, cioè quante e quali feature usare e come parametrizzarle.

Purtroppo i dataset del mondo reale sono caratterizzati da dati sparsi, mancanti, rumorosi e ad alta dimensionalità. Questo rende molto difficile visualizzare i dati e capirne strutture e relazioni, per questo è importante sapere come destreggiarsi.

La soluzione potrebbe sembrare prendere direttamente tutte le feature, ma questo porta ad avere modelli molto complessi e per niente desiderabili.

A volte i dati hanno poche relazioni tra loro, oppure sono troppo pochi e mal distribuiti, in quei casi il feature learning non funziona.

Approssimatori universali

Supponiamo di avere un insieme di B vettori di lunghezza N (il numero di data point), ognuno di questi corrisponde ad una feature. Lo span di questo insieme (che è chiamato spanning set) è l’insieme di tutte le combinazioni lineari ottenute dalle B features.

Il compito di un modello è trovare una combinazione lineare di queste feature in grado di approssimare un vettore o una funzione.

$$ w_0+f_1(x)w_1+...+f_B(x)w_B=y(x) $$

La bontà dell’approssimazione dipende da:

Le feature possono essere non parametrizzate (e quindi simili ad un vettore perché sono solo una funzione dell’input) oppure parametrizzate, in quel caso possono assumere varie forme e hanno una maggiore capacità rappresentativa (che però ha un costo).

Quando uno spanning set ha un rank $M$, allora questo si dice approssimatore universale, perché è in grado di approssimare qualsiasi vettore di dimensione $N\le M$, la stessa cosa vale anche per le funzioni, ma per approssimare una funzione generica con precisione arbitraria è possibile che siano necessarie infinite spanning functions.

Le funzioni usate dagli universal approximators sono generalmente di tre tipi:

Per scegliere il tipo di funzione in genere si può fare una valutazione sul tipo di dato con cui stiamo lavorando, per le altre caratteristiche invece può essere complicato.

Model selection