Apprendimento Automatico Apprendimento non supervisionato:

Slides:



Advertisements
Presentazioni simili
Le trasformazioni.
Advertisements

SISTEMA NERVOSO SISTEMA DI INTEGRAZIONE SISTEMA EFFERENTE MOTORIO
Apprendimento Automatico Apprendimento supervisionato
IL PIANO CARTESIANO.
Come possono essere classificati?
La trasmissione dell’Impulso Nervoso
Funzioni cognitive Coscienza © G. Cibelli, 2006
Il controllo della coordinazione: il cervelletto
Il codice neurale.
Applications of Evolutionary Algorithms Giuseppe Nicosia Dep. of Mathematics and Computer Science University of Catania.
Gli effetti della droga sul sistema nervoso
Sistemi di supporto alle decisioni 4. Clustering
Attività cerebrale I neuroni si attivano in gruppi sotto lazione di uno stimolo Attività in gruppi ben delimitati con alta o bassa attività Il gruppo.
ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI
Le reti neurali dagli esordi alle applicazioni
Il modello computazionale del controllo
Apprendimento di funzioni algebriche
Reti neurali naturali ed artificiali
Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di eventi Vincenzo Izzo.
Nicoletti Cap. 1.
BIOINGEGNERIA S. Salinari Lezione 4.
BIOINGEGNERIA S. Salinari Lezione 8. RETI AD APPRENDIMENTO NON SUPERVISIONATO Le reti ad apprendimento non supervisionato debbono essere in grado di determinare.
TECNOLOGIE DEI SISTEMI DI CONTROLLO
BIOINGEGNERIA S. Salinari Lezione 7. RETI CON APPRENDIMENTO SUPERVISIONATO A DISTANZA Nello sviluppo delle reti neurali si è proceduto indebolendo via.
La mente nel corpo II Giacomo Romano Dipartimento di Filosofia e Scienze Sociali Università degli Studi di Siena, a. a. 2008/2009 Corso di Filosofia della.
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Filtri adattativi.
Esercitazione N°6 Apprendimento Non-Supervisionato.
Analisi delle corrispondenze
LE PROIEZIONI ORTOGONALI
Intelligenza Artificiale Algoritmi Genetici
Intelligenza Artificiale
CALCOLO EVOLUZIONISTICO. In ogni popolazione si verificano delle mutazioni. Le mutazioni possono generare individui che meglio si adattano allambiente.
In contrapposizione con i metodi convenzionali (hard computing), le tecniche di soft computing non si basano su procedimenti esprimibili in forma chiusa.
Apprendimento Automatico Calcolo Evoluzionistico Stefano Cagnoni.
APPLICAZIONI DI INTELLIGENZA ARTIFICIALE ALLA MEDICINA
RETI NEURALI ARTIFICIALI
Roma 28 gennaio 2002 Beam Monitor per il TOP-Linac E. Cisbani, G. Vacca Riunione di lavoro TOP gennaio 2002 Polo Oncologico e Dermatologico I.F.O.
IL RISCALDAMENTO Graziano Camellini.
TRASDUTTORI E SENSORI.
Struttura di un neurone
FLOWCHART DELL’ALGORITMO DI APPRENDIMENTO DELLA RETE DI KOHONEN
Proiezioni per sviluppo modificate matematicamente Carta di Mercatore
Il neurone e i suoi componenti Il nucleo I dendriti Lassone Le connessioni sinaptiche.
IL CERVELLO UMANO Il cervello umano è sicuramente la struttura più complessa dell‘universo e può essere considerato come una enorme rete neurale. Circa.
Fisiologia della sensibilità generale
Percezione temporale Una illusione percettiva di contrazione temporale
La corteccia cerebrale è uno strato laminare continuo che rappresenta la parte più esterna del telencefalo negli esseri vertebrati. È formata dai neuroni,
Rete di Hopfield applicata al problema del TSP Federica Bazzano
IL SISTEMA NERVOSO.
MATURAZIONE E APPRENDIMENTO Dr.ssa Barbara Arfé Dipartimento di Psicologia e Antropologia Culturale Facoltà di Scienze della Formazione.
Esercitazione 2 Reti Neurali Backpropagation. 2 Esercizio 1  Scompattare bp  Compilare i 4 programmi (con make, v.file readme )  Utilizzare i dati.
RETI NEURALI - 2.
Intelligenza Artificiale
Intelligenza Artificiale Reti Neurali
APPROSSIMAZIONE DI FUNZIONI
Learning Non Supervisionato
Psicologia della visione
I recettori sensoriali
Superfici Equipotenziali
COME SI CALCOLA Vm NEL CASO DI UNA CELLULA PERMEABILE A 3 SPECIE IONICHE? Il potenziale di membrana è la media “pesata” dei potenziali elettrochimici.
M. De Cecco - Sensor Fusion: teoria ed applicazione alla percezione di sistemi robotici SLAM Simultanea localizzazione e mappatura di veicoli autonomi.
REALIZZAZIONE DI UN SISTEMA DI CLASSIFICAZIONE Prof. Roberto Tagliaferri Studente: Ragognetti Gianmarco Corso di Reti Neurali e Knowledge Discovery A.A.
SISTEMI SENSORIALI.
Esercitazione N°5 Approssimazione di Funzioni. Esercizio 1 Costruzione di una rete RBF Il metodo più semplice per approssimare una funzione mediante reti.
Self-Organizing Map (SOM Kohonen, 1981) è una tecnica di visualizzazione dei dati multidimensionali SOM è una mappa mono- (bi-)dimensionale che rappresenta.
Fisiologia dell’apparato respiratorio Lo scambio gassoso nei polmoni La diffusione dei gas tra alveoli e sangue obbedisce alle regole della diffusione.
L’Analisi delle Corrispondenze. Obiettivi: Rappresentazione graficaRappresentazione grafica SintesiSintesi della struttura di associazione tra due (o.
L’analisidei dati L’analisi dei dati Analisi mutlidimensionali: Analisi delle corrispondenze multiple Cluster Analysis.
Transcript della presentazione:

Apprendimento Automatico Apprendimento non supervisionato: Reti Neurali Apprendimento non supervisionato: Reti di Kohonen Stefano Cagnoni

Mappe auto-organizzanti (SOM) di Kohonen Homunculus Modello biologico di partenza Nella corteccia cerebrale esistono mappature (proiezioni) di stimoli sensoriali su specifiche reti di neuroni corticali. I neuroni senso-motori costituiscono una mappa distorta (l’estensione di ciascuna regione è proporzionale alla sensibilità della corrispondente area corporea, non alle dimensioni) della superficie corporea. Tuttavia, parti adiacenti della corteccia corrispondono a parti adiacenti della superficie corporea.

Mappe auto-organizzanti (SOM) di Kohonen Interazioni laterali fra neuroni eccitazione laterale a breve raggio (50-100 mm) azione inibitoria (fino a 200-500 mm) azione eccitatoria debole a lungo raggio (fino a qualche cm) approssimabili come:

Mappe auto-organizzanti (SOM) di Kohonen Mappe “sensoriali”, costituite da un singolo strato di neuroni in cui le unità si specializzano a rispondere a stimoli diversi in modo tale che: ingressi di tipo diverso attivino unità diverse unità topologicamente vicine vengano attivate da ingressi simili

Mappe auto-organizzanti (SOM) di Kohonen Singolo strato di neuroni ni i=1,w*h (w=largh. h= alt. mappa) Ogni ingresso X={xj, j=1,N} è collegato a tutti i neuroni (quindi ad ogni neurone afferiscono N connessioni) Ogni connessione è associata ad un peso wij Funzione di attivazione fi 1/d(Wi,X) d= distanza Presenza di interazioni laterali (proporzionali alla distanza fra neuroni secondo la funzione a cappello di messicano)

Mappe auto-organizzanti (SOM) di Kohonen I pesi di ciascun neurone vengono modificati: in senso eccitatorio, proporzionalmente al valore della propria funzione di attivazione e di quelle dei neuroni appartenenti ad un loro vicinato e in funzione della distanza da essi; in senso inibitorio, proporzionalmente al valore della funzione di attivazione dei neuroni esterni al vicinato e in funzione della distanza da essi. Quindi, se si ripropone lo stesso ingresso alla rete: i neuroni che avevano un valore elevato di attivazione e i vicini mostreranno un’attivazione ancora maggiore i neuroni che rispondevano poco risponderanno ancor meno

Mappe auto-organizzanti (SOM) di Kohonen Se si presentano alla rete dati ben distribuiti nello spazio degli ingressi, in modo iterativo, ogni neurone si specializza a rispondere a dati di un certo tipo Inoltre, neuroni vicini rispondono a stimoli vicini proiettando, in pratica, lo spazio degli ingressi sullo strato di neuroni. Risultati: riduzione di dimensionalità dei dati da N (dim. dell’ingresso) a m (dimensione della mappa); ogni dato è rappresentato dalla coordinata dell’unità su cui si proietta, cioè quella in cui il dato genera la massima attivazione, cioè quella per cui i cui pesi sono più simili (vicini) al dato stesso.

Mappe auto-organizzanti (SOM) di Kohonen In pratica: una SOM su cui sia stato operato il training partiziona lo spazio degli ingressi in tanti sottospazi quanti sono i neuroni ogni sottospazio si di S={Xk} è definito come: si = {Xj t.che d(Xj,Wi) = mint (Xi,Wt) } si ottiene la cosiddetta Tassellazione di Voronoi dello spazio di ingresso

Mappe auto-organizzanti (SOM) di Kohonen Semplificazioni del modello per implementazione algoritmo di addestramento: si modificano i pesi solo nell’intorno del neurone che ha max attivazione (neurone vincente, questo tipo di addestramento è detto anche competitive learning) si considerano solo le interazioni laterali eccitatorie all’interno di un intorno limitato del neurone vincente NB Modificare i pesi in senso eccitatorio significa renderli più simili all’ingresso (si incrementa l’attivazione in corrispondenza dell’ingresso stesso); modificarli in senso inibitorio significa renderli meno simili (l’attivazione diminuisce).

Mappe auto-organizzanti (SOM) di Kohonen a=C (a = learning rate, C costante positiva piccola << 1) Dato un training set X = { xi | , Xi=(xi1, xi2, ….,, xim), i=1…N } Inizializza i pesi con valori compatibili con i dati - Per ogni esempio xi nel training set: determina l’unità vincente nw modifica i pesi dell’unità vincente e di quelle che si trovano in un suo intorno nel modo seguente: wj(t+1) = wj (t) + a (xi - wj (t)) a(t+1) = a(t) * (1 - g) (g costante positiva piccola << 1 ) finché la rete non raggiunge una configurazione stabile o a = 0

Mappe auto-organizzanti (SOM) di Kohonen Modello semplificato delle interazioni laterali fra neuroni adiacenti la cui intensità ha un andamento tipico a cappello messicano. Nell’algoritmo si usa un modello semplificato in cui l’attivazione è uniforme nell’intorno del neurone vincente (a finestra rettangolare). L’intorno è tipicamente quadrato (per semplicità) ma può assumere qualunque forma (comune anche esagonale) E’ possibile prevedere anche un’area che circonda l’intorno considerato in cui si ha un effetto inibitorio, in cui cioè la regola diventa wj(t+1) = wj (t) - a (xi - wj (t)) Esiste un isomorfismo fra lo spazio di ingresso e lo spazio dei pesi

Mappe auto-organizzanti (SOM) di Kohonen Realizzano il clustering dei dati, cioè l’identificazione, nello spazio degli ingressi, di nuvole di dati che si addensano in zone dello spazio di ingresso, inducendone una partizione ogni partizione è rappresentabile mediante il centroide della nuvola, che nelle reti di Kohonen corrisponde ai pesi associati ad una unità della mappa il clustering è di tipo non supervisionato, in quanto non abbiamo alcuna informazione a priori sulle classi di appartenenza dei dati a posteriori è possibile classificare i dati in base alla partizione dello spazio degli ingressi cui appartengono

Versione supervisionata (Learning Vector Quantization o LVQ) La partizione di cui è centroide il vettore dei pesi associati ad una unità della mappa rappresenta il prototipo (o una approssimazione) per una certa classe di dati. Vector Quantization = procedura mediante la quale si definisce un codice di lunghezza limitata che approssima i valori di dati simili sostituendoli con un codice fisso. Il codice è tale da minimizzare l’errore che si commette sostituendo ad un insieme di dati vicini lo stesso elemento (il centroide dei dati) di tale codice. Utilizzabile per la compressione di segnali o immagini. Es. immagini a colori rappresentate con una palette di dimensioni limitate. Unendo questi concetti è possibile definire un algoritmo di apprendimento supervisionato con una regola simile alle SOM.

Learning Vector Quantization (LVQ) a=C (a = learning rate, C costante positiva piccola << 1) Dato un training set X = { (xi,li) | , Xi=(xi1, xi2, ….,, xim), i=1…N, liZ} Inizializza i pesi con valori compatibili con i dati, assegnando etichette random ai neuroni corrispondenti (o utilizzando alcuni degli esempi), purché rappresentino tutte le classi. Per ogni esempio xi nel training set: determina l’unità vincente nw modifica i pesi dell’unità vincente nel modo seguente: wj(t+1) = wj (t) + D a (xi - wj (t)) (D =1 se li = lw; D = -1 altrimenti) a(t+1) = a(t) * (1 - g) (g costante positiva piccola << 1 ) finché la rete non raggiunge una configurazione stabile o finché non si raggiunge un errore sufficientemente basso

Learning Vector Quantization Non è più necessario modellare le interazioni laterali fra neuroni: si effettua una quantizzazione, non una proiezione come nel caso delle SOM. La rete non è più una mappa, ma un insieme di prototipi indipendenti l’uno dall’altro La classificazione di un dato avviene assegnando al dato l’etichetta associata al prototipo che rappresenta la partizione dello spazio degli ingressi entro cui si colloca il dato, cioè il prototipo più vicino al dato. Errore valutabile come errore di approssimazione (vector quantization) o come accuratezza (classificazione) Problema del dimensionamento della rete: di quanti prototipi ho bisogno ?

Learning Vector Quantization L’algoritmo LVQ fissa a priori la dimensione della rete. Se i neuroni sono pochi (partizioni “grandi”), vi è elevata probabilità che in una partizione giacciano dati appartenenti a classi diverse. Se i neuroni sono troppi posso avere overfit. Al limite, posso azzerare l’errore di classificazione sul training set se utilizzo una rete che ha tanti neuroni quanti esempi nel training set e pesi uguali agli esempi stessi. Si possono usare strategie di dimensionamento dinamico della rete, in funzione delle prestazioni della rete.

Optimum-Size Learning Vector Quantization (OSLVQ) E’ necessario predisporre un validation set, da utilizzare per valutare le prestazioni della rete, ai fini di effettuare le modifiche opportune. Modifiche = cancellazioni o inserimento di neuroni Se un neurone viene attivato da pattern appartenenti ad una classe diversa in numero significativo, è necessario inserire un nuovo neurone corrispondente a tale classe nella partizione corrispondente. Se un neurone non viene mai attivato o se, in sua assenza, i pattern che giacciono nella sua partizione vengono ugualmente classificati in modo corretto, si può eliminare il neurone

Optimum-Size Learning Vector Quantization (OSLVQ) Si definiscono le costanti, a, b, g e Niter a = numero max di errori tollerato in una partizione b = numero minimo di pattern che devono attivare un neurone g = numero max di neuroni vicini della stessa classe Per ogni Niter iterazioni dell’algoritmo LVQ Se in una partizione P si ha che Nerr > a, allora si aggiunge un neurone. I pesi del nuovo neurone sono inizializzati con le coordinate del centroide (media) dei pattern, appartenenti alla classe su cui si commettono più errori in P, che cadono in tale partizione. Se il neurone è attivato da Np < b pattern, allora si elimina il neurone. Se Nn > g neuroni vicini appartengono alla stessa classe, si elimina il neurone. finché la rete non si stabilizza o raggiunge prestazioni “sufficienti”