Learning Non Supervisionato
LEARNING NON SUPERVISIONATO LNS-1 LEARNING NON SUPERVISIONATO Non c’è insegnante Reti con Input e Output, Nessun Feedback dall’ambiente La Rete deve scoprire Da Sola Caratteristiche, Regolarità, Correlazioni, etc. nei dati di input. (AUTO-ORGANIZZAZIONE) Durante il Learning i pesi variano in accordo con una Regola Interna specificata A Priori
Cosa possono individuare tali reti? FAMILIARITA’ LNS-2 FAMILIARITA’ Quando un nuovo input è simile ai pattern visti in passato (ex: un output a valori continui) ANALISI DELLE COMPONENTI PRINCIPALI estendendo il caso precedente a più unità porta ad una base lungo cui misurare la somiglianza a esempi precedenti CLUSTERING Un set di output a valori binari può indicare a quale categoria appartiene un dato input CODIFICA L’output può essere una versione codificata dell’input FEATURE MAPPING Un output con una data struttura geometrica (ex: una matrice) può mappare gli input in punti diversi della struttura, realizzando una mappa topografica dell’input Input simili Output vicini
Quando utilizzare le Reti NON Supervisionate: LNS-3 Quando utilizzare le Reti NON Supervisionate: Quando il learning supervisionato non è possibile Quando il learning supervisionato è troppo lento In cascata ad una rete supervisionata
LA COMUNICAZIONE E’ FACILITATA DALL’ECCITAZIONE RIPETUTA LNS-4 LEARNING HEBBIANO 1940: Donald Hebb, studiando la comunicazione tra neuroni, verificò che l’eccitazione ripetuta di un neurone i da parte di un neurone j portava all’abbassamento della soglia di eccitazione del neurone i. LA COMUNICAZIONE E’ FACILITATA DALL’ECCITAZIONE RIPETUTA j i wij xj yi Estensione ai sistemi neurali artificiali: Il peso della wij della connessione tra i neuroni i e j cresce al fluire di un segnale da j a i: Regola di Hebb
L’ampiezza di y misura la somiglianza tra Input e Pesi grande y w1 w2 wD x1 x2 xD 1 Strato D Input 1 Output Lineare LNS-5 q x w y Gli Input più frequenti avranno, a lungo termine, più influenza e produrranno un output maggiore. L’ampiezza di y misura la somiglianza tra Input e Pesi grande y y = 0 Durante il learning, i pesi sono esposti ai dati di Input e condensano l’informazione in essi contenuta nel loro valore I PESI SONO LA MEMORIA A LUNGO TERMINE DELLA RETE
Vincolare la crescita dei pesi: Per un singolo peso: LNS-6 PROBLEMA: I pesi crescono senza limite ed il learning non si ferma mai REGOLA DI OJA (versione stabile) Vincolare la crescita dei pesi: Rinormalizzazione dei pesi dopo l’aggiornamento: oppure Aggiungere un termine proporzionale a y2, nella formula di Hebb Regola di Oja
LNS-10 Regola di Oja Mantiene i pesi con norma unitaria
LNS-11 Dimostrazione: per h piccolo Posto: Input effettivo
Matrice di autocorrelazione degli Input Hebb correlazione LNS-7 Learning on-line Learning batch Matrice di autocorrelazione degli Input Il learning Hebbiano aggiorna i pesi con una stima della funzione di autocorrelazione
Divergenza (campo illimitato) Hebb potenza LNS-8 Set di dati potenza in uscita Es: D=2 w2 w1 V definita positiva La regola di Hebb muove i pesi nella direzione del gradiente, nel campo di potenza dei dati di Input Divergenza (campo illimitato)
Legame Potenza - Varianza Massima Potenza Massima Varianza LNS-9 Legame Potenza - Varianza Massima Potenza Massima Varianza Varianza - Informazione Esempio: Nube di punti 2-D Spazio a dimensione minore (Componente Principale) E’ la direzione a maggiore varianza
L’output finale è la proiezione dell’input x nella direzione di w Esempio: LNS-12 w0 w x1 x2 I pesi partono da piccoli valori random e vengono aggiornati secondo la regola di Oja: L’output finale è la proiezione dell’input x nella direzione di w È dovuto alla scelta di UNITA’ LINEARI
a) Input a media zero < x > = 0 LNS-13 a) Input a media zero < x > = 0 Output a media zero < y > = 0 (qualunque sia la direzione di w) MA la direzione di wOja fa sì che <| y |> sia massimo b) Input a media diversa da zero Output con media massima in corrispondenza di wOja La direzione di wOja fa sì che <| y |> sia massimo
R matrice di autocorrelazione l scalare reale LNS-14 Significato di wOja R matrice di autocorrelazione l scalare reale w è un autovettore di R e l l’autovalore massimo x1 x2 a asse principale
w ha la direzione dell’ autovettore di R con autovalore massimo LNS-15 Ricapitolando: La regola di Oja converge ad un vettore peso che ha le seguenti proprietà: w ha la direzione dell’ autovettore di R con autovalore massimo w ha la direzione che massimizza la <y2> La forma quadratica, per w fissato è massimizzata quando w ha la direzione dell’autovettore massimo di R Per dati con
ANALISI DELLE COMPONENTI PRINCIPALI (PCA) LNS-16 ANALISI DELLE COMPONENTI PRINCIPALI (PCA) La regola di Oja produce un vettore di pesi nella direzione in cui si trova la maggiore informazione sui dati di input COMPONENTE PRINCIPALE Come trovare altre direzioni che tengono conto il più possibile della varianza dei dati di Input? Scopo Trovare un sistema di coordinate ORTONORMALE M vettori tra loro ortogonali M vettori di lunghezza unitaria che riduca la dimensione dei dati, massimando l’informazione contenuta
La proiezione lungo OA consente di evidenziare i cluster PCA B A O OA PRIMA COMPONENTE PRINCIPALE (AD ALTA VARIANZA) OB SECONDA (A BASSA VARIANZA) LNS-17 Esempio La proiezione lungo OA consente di evidenziare i cluster La prima componente principale si prende lungo la direzione a massima varianza; La seconda lungo la direzione a massima varianza del sottospazio ortogonale alla prima; La terza lungo …
Sia C la matrice di covarianza di x : LNS-18 Procedura: Sia C la matrice di covarianza di x : se dove: autovalori di C e colonne di Q: autovettori corrispondenti y vettore delle componenti principali di x matrice di autocorrelazione
Scartando le combinazioni a piccola varianza: Riassumendo: LNS-19 Scartando le combinazioni a piccola varianza: MD
Algoritmi basati sulla risoluzione di equazioni matriciali PCA LNS-20 Algoritmi basati sulla risoluzione di equazioni matriciali PCA Reti Neurali RETI NEURALI PCA S x1 x2 xD w11 w21 w31 w1D w2D wMD y1 y2 yM Rete Lineare
I componente principale LNS-21 Regola di Sanger I componente principale (regola di Oja) 1 xj w1j y1 i = 1 proiezione in uno spazio ortogonale alla I componente 2 xj w2j y2 i = 2 II componente principale i = 3
compressione proiezione LNS-22 N.B. I pesi relativi alla II CP convergeranno solo dopo la convergenza dei pesi della I CP, e così via … PCA è il miglior “feature extractor” LINEARE 1 COMPRESSIONE DATI Non esiste un sistema lineare che fornisca migliori caratteristiche per la ricostruzione applicazione PCA per la compressione dei dati T R y W W-1 x al trasmettitore: compressione proiezione al ricevitore: decompressione
CLASSIFICAZIONE 2 x2 1 2 CLASSI 2 x1 Direzione principale LNS-23 2 CLASSIFICAZIONE 2 CLASSI Direzione principale x2 1 2 x1 x1 ricostruzione x2 classificazione
Reti Competitive e di Kohonen
LEARNING NON SUPERVISIONATO COMPETITIVO CK-1 LEARNING NON SUPERVISIONATO COMPETITIVO Solo un’unità è attiva (vincitore) Scopo: clusterizzare i dati in ingresso Codifica Compressione Elaborazione di immagini Ottimizzazione combinatoria Un Output per ogni categoria Non sono robuste Non possono rappresentare una conoscenza gerarchica y2 y1 x1 x2 x3 x4 Feature Mapping (Kohonen)
SEMPLICE LEARNING COMPETITIVO CK-2 SEMPLICE LEARNING COMPETITIVO . . . x1 x2 x3 xN y1 yM x = [x1 , . . . , xN] (0 , 1) y = [y1 , . . . , yN] (0 , 1) VINCITORE x wi wi • x IL VINCITORE E’ L’UNITA’ PIU’ VICINA ALL’INPUT
IL LEARNING 0 < h < 1 x-wi w(t = 0) = random x wi new h (x-wi) CK-3 IL LEARNING wi new x x-wi wi h (x-wi) 0 < h < 1 w(t = 0) = random REGOLA INSTAR Sposta wi* verso x p Fa sì che l’unità i* abbia maggiore probabilità di vincere in futuro per un Input simile a x
w i vettori prototipo - individuano dei punti nello spazio CK-4 Esempio di CLUSTERING P = 1, … , N numero di esempi p1 p2 Input continui Input binari Stato iniziale Stato finale w i vettori prototipo - individuano dei punti nello spazio Tassellazione di Voronoi
1 solo strato partizioni convesse dello spazio degli input CK-5 1 solo strato partizioni convesse dello spazio degli input N° di cluster da fissare a priori troppi cluster cluster morti input simili in cluster diversi pochi cluster ogni unità rappresenta + di un cluster Problema delle unità morte COSCIENZA
Connessioni laterali funzione della distanza dal vincitore CK-6 COMPETIZIONE SOFT Anche i neuroni vicini al vincitore possono essere attivi (bolla di attività) Connessioni laterali funzione della distanza dal vincitore wij + - i - j distribuzione a cappello messicano E’ possibile un mappaggio topologico dallo spazio degli ingressi a quello delle uscite
CK-7 . . . y1 yM - + x1 x2 y2 y1 x1 x2
Cappello messicano SENZA connessioni laterali CK-8 RETI DI KOHONEN Cappello messicano SENZA connessioni laterali Le relazioni di vicinato compaiono nel learning Output organizzato secondo una griglia 1- D 2 vicini 1 Input 2-D Rete 1-D 2-D
L : funzione di vicinato CK-9 ALGORITMO DI LEARNING y2 y1 x1 x2 … xD x wi wi • x wi - x L : funzione di vicinato Rete di Kohonen Rete elastica
Scelta sperimentale del numero di neuroni CK-10 Vi(0) Vi(t1) Vi(t2) h (n) s (n) Scelta sperimentale del numero di neuroni Conservazione della DENSITA’ dei dati di Input
CK-11 Esempi
Riconoscimento del parlato Ottimizzazione combinatoria CK-12 Applicazioni: Controllo di motori Riconoscimento del parlato Ottimizzazione combinatoria Quantizzazione vettoriale (LBG algorithm) Kohonen è un algoritmo ottimale per la quantizzazione vettoriale LVQ Learning Vector Quantization