380 likes | 461 Views
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).
E N D
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? 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
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
xj yi wij j i 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 Estensione ai sistemi neurali artificiali: Il peso della wijdella connessione tra i neuroni i e j cresce al fluire di un segnale da j a i: Regola di Hebb
x1 w1 x2 w2 S y wD xD x w q y grande y y = 0 • 1 Strato • D Input • 1 Output Lineare LNS-5 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 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
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
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
V Es: D=2 w2 w1 Hebb potenza LNS-8 potenza in uscita Set di dati definita positiva La regola di Hebb muove i pesi nella direzione del gradiente, nel campo di potenza dei dati di Input • Divergenza (campo illimitato)
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
LNS-10 Regola di Oja Mantiene i pesi con norma unitaria
LNS-11 Dimostrazione: per h piccolo Posto: Input effettivo
x2 x2 w w w0 x1 w0 x1 Esempio: LNS-12 • 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
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
x2 a asse principale x1 LNS-14 Significato di wOja R funzione di autocorrelazione l scalare reale w è un autovettore di R e l l’autovalore massimo
Per dati con LNS-15 Ricapitolando: La regola di Oja converge ad un vettore peso che ha le seguenti proprietà: wha la direzione dell’ autovettore di C con autovalore massimo wha la direzione che massimizza la <y2> La forma quadratica, per w fissato è massimizzata quando w ha la direzione dell’autovettore massimo di C
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 di lunghezza unitaria M vettori tra loro ortogonali che riduca la dimensione dei dati, massimando l’informazione contenuta
A OB SECONDA COMPONENTE PRINCIPALE (A BASSA VARIANZA) PCA B OA PRIMA COMPONENTE PRINCIPALE (AD ALTA VARIANZA) O 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 …
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
LNS-19 Riassumendo: Scartando le combinazioni a piccola varianza: MD
w11 y1 x1 S x2 w21 y2 w31 S Rete Lineare w1D w2D yM S xD wMD LNS-20 Algoritmi basati sulla risoluzione di equazioni matriciali PCA Reti Neurali RETI NEURALI PCA
i = 1 i = 2 w1j y1 xj w2j 1 y2 xj 2 II componente principale I componente principale (regola di Oja) proiezione in uno spazio ortogonale alla I componente i = 3 LNS-21 Regola di Sanger
COMPRESSIONE DATI 1 y x T R W W-1 al trasmettitore: compressione proiezione al ricevitore: decompressione 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 Non esiste un sistema lineare che fornisca migliori caratteristiche per la ricostruzione applicazione PCA per la compressione dei dati
CLASSIFICAZIONE 2 x2 1 2 CLASSI 2 x1 Direzione principale LNS-23 x1 ricostruzione x2 classificazione
Un Output per ogni categoria • Non sono robuste • Non possono rappresentare una conoscenza gerarchica y1 y2 x1 x2 x3 x4 CK-1 LEARNING NON SUPERVISIONATO COMPETITIVO • Solo un’unità è attiva (vincitore) • Scopo: clusterizzare i dati in ingresso • Codifica • Compressione • Elaborazione di immagini • Ottimizzazione combinatoria • Feature Mapping (Kohonen)
y1 yM . . . . . . x2 x3 xN x1 x wi wi• x CK-2 SEMPLICE LEARNING COMPETITIVO x = [x1 , . . . , xN] (0 , 1) y = [y1 , . . . , yN] (0 , 1) VINCITORE IL VINCITORE E’ L’UNITA’ PIU’ VICINA ALL’INPUT
0 < h < 1 x-wi x wi new h (x-wi) wi CK-3 IL LEARNING w(t = 0) = random REGOLA INSTAR • Sposta wi* verso xp • Fa sì che l’unità i* abbia maggiore probabilità di vincere in futuro per un Input simile a x
p1 p2 CK-4 Esempio di CLUSTERING P = 1, … , N numero di esempi Input continui Input binari Stato iniziale Stato finale wi vettori prototipo - individuano dei punti nello spazio Tassellazione di Voronoi
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 CK-5 COSCIENZA
wij + + i - j - - CK-6 COMPETIZIONE SOFT • Anche i neuroni vicini al vincitore possono essere attivi (bolla di attività) • Connessioni laterali funzione della distanza dal vincitore distribuzione a cappello messicano • E’ possibile un mappaggio topologico dallo spazio degli ingressi a quello delle uscite
y1 yM - + . . . + - x2 x1 y1 y2 x1 x2 CK-7
2 vicini 1- D 1 1 2-D 0 1 0 1 Input 2-D Rete 1-D CK-8 RETI DI KOHONEN • Cappello messicano SENZA connessioni laterali • Le relazioni di vicinato compaiono nel learning • Output organizzato secondo una griglia
y1 y2 … x1 x2 xD x wi - x wi wi• x CK-9 ALGORITMO DI LEARNING L : funzione di vicinato Rete di Kohonen Rete elastica
Vi(0) Vi(t1) h (n) s (n) Vi(t2) CK-10 Scelta sperimentale del numero di neuroni Conservazione della DENSITA’ dei dati di Input
CK-11 Esempi
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