Reti Neurali Mercoledì, 10 Novembre 2004 Giuseppe Manco References: Chapter 4, Mitchell Chapter 1-2,4, Haykin Chapter 1-4, Bishop Reti Neurali Lezione.

Slides:



Advertisements
Presentazioni simili
Macchine di Percezione
Advertisements

Artificial intelligence
Algoritmi e Strutture Dati
Algoritmi e Strutture Dati
Apprendimento Automatico Apprendimento supervisionato
Sistemi di Classificazione usando NCD
Reti Neurali Alessandro Mazzetti.
Primo sguardo a metodi multivariati per l'analisi del ttH
Riconoscimento di forme
Sistemi di supporto alle decisioni 2. Features space
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.
Pattern Recognition con Reti Neurali MLP
Esercitazione N°1 Il tool di Matlab.
ALGORITMI DI OTTIMIZZAZIONE PER L'ADDESTRAMENTO DI RETI NEURALI
Reti Neurali: studi sull'intelligenza artificiale
Capitolo 4 Ordinamento Algoritmi e Strutture Dati.
Apprendimento di funzioni algebriche
Valutazione delle ipotesi
Apprendimento di funzioni algebriche
Computational Learning Theory and PAC learning
Apprendimento Automatico: Reti Neurali
Metodi di Ensemble Metaclassificatori.
Support Vector Machines
Support Vector Machines
Algoritmi Paralleli e Distribuiti a.a. 2008/09
Algoritmi Paralleli e Distribuiti a.a. 2008/09 Lezione del 20/03/2009 Prof. ssa ROSSELLA PETRESCHI a cura del Dott. SAVERIO CAMINITI.
Capitolo 4 Ordinamento: Selection e Insertion Sort Algoritmi e Strutture Dati.
Reti neurali naturali ed artificiali
Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di eventi Vincenzo Izzo.
BIOINGEGNERIA S. Salinari Lezione 4.
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.
Algoritmi per l’Image Alignment
Modelli simulativi per le Scienze Cognitive Paolo Bouquet (Università di Trento) Marco Casarotti (Università di Padova)
Modelli simulativi per le Scienze Cognitive
Filtri adattativi.
PATTERN RECOGNITION.
Reti Neurali Ricorrenti
Introduzione alla bioinformatica
Artificial intelligence
Instance Based Learning Mercoledì, 17 novembre 2004 Giuseppe Manco Readings: Chapter 8, Mitchell Chapter 7, Han & Kamber Instance-Based Learning (IBL):
Chapter 14, Hastie , Tibshirani and Friedman
Strutture di controllo in C -- Flow Chart --
Intelligenza Artificiale Algoritmi Genetici
Intelligenza Artificiale
Intelligenza Artificiale
APPLICAZIONI DI INTELLIGENZA ARTIFICIALE ALLA MEDICINA
RETI NEURALI ARTIFICIALI
PoliICR Riconoscimento dei Caratteri Daniele Gasperini – William Spinelli Riconoscimento dei Segnali: un approccio unitario prof. Sergio Brofferio.
Il neurone e i suoi componenti Il nucleo I dendriti Lassone Le connessioni sinaptiche.
STATISTICA PER LE DECISIONI DI MARKETING
Dynamic Artificial Neural Networks
Perceptron. è la somma effettuata sul nodo i-esimo dello strato j n è il numero di nodi dello strato j-1 è l'output proveniente dal nodo k-esimo dello.
Metaclassificazione Giovedì, 18 novembre 2004 Francesco Folino ( Combinare Classificatori Lecture 8.
LE RETI NEURALI: MODELLI, ALGORITMI E APPLICAZIONI
Ugo de'Liguoro - Informatica 2 a.a. 03/04 Lez. 1 Cicli ed asserzioni Corso di Informatica 2 a.a. 2003/04 Lezione 1.
Esercitazione 2 Reti Neurali Backpropagation. 2 Esercizio 1  Scompattare bp  Compilare i 4 programmi (con make, v.file readme )  Utilizzare i dati.
RETI NEURALI ARTIFICIALI
Università di Milano-Bicocca Laurea Magistrale in Informatica
RETI NEURALI - 2.
APPLICAZIONI DI INTELLIGENZA ARTIFICIALE ALLA MEDICINA 4.
Intelligenza Artificiale
Intelligenza Artificiale Reti Neurali
APPROSSIMAZIONE DI FUNZIONI
TEORIE E TECNICHE DEL RICONOSCIMENTO
Learning Non Supervisionato
FILTRI ANALOGICI E DIGITALI Modulo del Corso Integrato di: Progetto di Circuiti per il Trattamento dei Segnali.
REALIZZAZIONE DI UN SISTEMA DI CLASSIFICAZIONE Prof. Roberto Tagliaferri Studente: Ragognetti Gianmarco Corso di Reti Neurali e Knowledge Discovery A.A.
Le reti neurali Simona Balbi. Cosa sono le reti neurali Una rete neurale artificiale (A)NN è un paradigma di elaborazione dell’informazione ispirato al.
Esercitazione N°2 Data Fitting con Modelli Lineari.
Transcript della presentazione:

Reti Neurali Mercoledì, 10 Novembre 2004 Giuseppe Manco References: Chapter 4, Mitchell Chapter 1-2,4, Haykin Chapter 1-4, Bishop Reti Neurali Lezione 5

Reti Neurali Outline Perceptron Learning –Unità neurale –Gradiente Discendente Reti Multi-Layer –Funzioni nonlineari –Reti di funzioni nonlineari Backpropagation dellerrore –Lalgoritmo backpropagation –problematiche Ottimi locali Overfitting

Reti Neurali Modelli Connezionisti Il cervello umano –Tempo di switch di un neurone: ~ (10 -3 ) secondi –Numero di neuroni: ~ miliardi (10 10 – ) –connessioni per neurone: ~ (10 4 – 10 5 ) –Tempo di classificazione: ~0.1 secondi Reti Neurali artificiali –… a system composed of many simple processing elements operating in parallel whose function is determined by network structure, connection strengths, and the processing performed at computing elements or nodes. - DARPA (1988) Proprietà –Molti neuroni –Molte interconnessioni pesate –Computazione distribuita –I pesi si costituiscono automaticamente

Reti Neurali Input: dati numerici di alta dimensionalità –Esempio: input da sensori –Rumore Output: nominale/Numerico/vettoriale –Funzione di forma ignota Risultato: leggibilità meno importante delle performances –Performance misurata in termini di accuratezza –Leggibilità: capacità di spiegare linferenza Esempi –Classificazione di immagini –Predizione finanziaria

Reti Neurali Rete neurale –

Reti Neurali Riconoscimento di caratteri (Progetto scorso anno) Dimensionalità

Reti Neurali Le regioni di decisione Dato x, vogliamo trovare h(x) consistente con c(x) –h(x) può essere approssimata con una funzione lineare y –y = 1: h(x) = + –y = 0: h(x) = - –Qual è una possibile istanziazione di y? –generalizzazione? x1x1 x2x2

Reti Neurali Perceptron: modello neuronale singolo –Input definito come una combinazione lineare –Output: funzione di attivazione basata su una soglia sullinput (threshold = w 0 ) Il Perceptron x1x1 x2x2 xnxn w1w1 w2w2 wnwn x 0 = 1 w0w0

Reti Neurali Le regioni di decisione Il perceptron può rappresentare alcune funzioni –Emulazione di porte logiche –ESERCIZIO: Quali pesi rappresentano g(x 1, x 2 ) = AND(x 1, x 2 )? OR(x 1, x 2 )? NOT(x)? Alcune funzioni non sono rappresentabili –Non linearmente separabili Esempio A x1x1 x2x2 + + Esempio B - - x1x1 x2x2

Reti Neurali Perceptron Learning Regola di learning del Perceptron (Rosenblatt, 1959) –Idea: un target può aggiornare I pesi in modo tale da produrre loutput desiderato –dove t = c(x) è il valore di output atteso, o è il valore di output calcolato – è il tasso di learning

Reti Neurali Algoritmo Perceptron learning Algorithm Train-Perceptron (D { }) –inizializza tutti I pesi w i a valori random –WHILE non tutti i valori sono predetti correttamente DO FOR EACH istanza x D Calcola loutput o(x) FOR i = 1 to n w i w i + (t - o)x i

Reti Neurali Convergenza dellalgoritmo Teorema di convergenza –Se esiste un insieme di pesi consistente con i dati (cioè: I dati sono linearmente separabili), lalgoritmo converge –Complessità computazionale –Regioni non linearmente separabili –Se le regioni non sono linearmente separabili, lalgorimo entra in un loop infinito –Cicla sugli stessi pesi

Reti Neurali Gradiente Discendente: Idea Unità lineari –Consideriamo lunità più semplice: –Obiettivo: trovare il migliore adattamento a D Algoritmo di approssimazione –Minimizzare lerrore sul training set D –Funzione dellerrore: Somma dei quadrati (SSE) Come si minimizza? –Ottimizzazione semplice –Ci muoviamo in direzione del più ripido gradiente nello spazio pesi-errore

Reti Neurali Idea di fondo Vogliamo trovare una sequenza di pesi w(1), w(2), …, w(t) tali che Metodo: Giustificazione: –Sviluppo in serie di Taylor al primo ordine –Sostituendo, –Quando è positivo, il secondo addendo è sempre negativo

Reti Neurali Gradiente discendente: delta rule Il gradiente Regola di learning

Reti Neurali Algoritmo del Gradiente Discendente Algorithm Gradient-Descent (D, r) –Ogni istanza ha la forma, dove x è il vettore di input e t(x) è il valore di output. r è il tasso di learning (ad esempio, 0.05) –Inizializza i pesi w i a valori random –WHILE la condizione di terminazione non è soddisfatta, DO Inizializza ogni w i a 0 FOR each in D, DO Calcola o(x) FOR each w i, DO w i w i + r(t - o)x i FOR each w i, DO w i w i + w i –RETURN w

Reti Neurali Concetti Linearmente Separabili: classificazione ottimale –esempio A: Convergenza Concetti Non-LS: approssimazione –esempio B: non LS; la delta rule converge, ma non è ottimale –esempio C: non LS; buona generalizzazione Vettore w = somma dei x D misclassificati –Perceptron: minimizza w –Delta Rule: minimizza errore distanca dal separatore Delta e Perceptron Rules Esempio A x1x1 x2x2 + + Esempio B - - x1x1 x2x2 Esempio C x1x1 x2x

Reti Neurali Sommario: Perceptron Learning Funzione di base: –Classificazione binaria –Separabilità lineare Due estensioini: –K classi –Relazioni nonlineari

Reti Neurali Estensioni K classi Relazioni nonlineari

Reti Neurali Unità nonlineari –Funzione dattivazione (originaria): sgn (w x) –Attivazione nonlinare: generalizzazione di sgn Reti Multi-Layer –Multi-Layer Perceptrons (MLPs) –Una rete multi-layer feedforward è composta da uno strato di input, uno strato intermedio (nascosto) e uno strato di output –Gli strati di output è intermedi sono perceptrons (unità nonlineari) MLPs in teoria –Le reti (di 2 or o più strati) possono rappresentare qualsiasi funzione MLPs in pratica –Trovare la topologia giusta è difficoltoso –La fase di training è molto dispendiosa Reti Multi-Layer x1x1 x2x2 x3x3 Input Layer u 11 h1h1 h2h2 h3h3 h4h4 Hidden Layer o1o1 o2o2 v 42 Output Layer

Reti Neurali Funzione sigmoidale –Funzione di attivazione a threshold: sgn (w x) –Funzione nonlineare: generalizzazione di sgn – è la funzione sigmoidale –utile per ottenere lupdate dal gradiente per Una unità Reti Multi-layer Funzione iperbolica Funzioni di attivazione nonlineari x1x1 x2x2 xnxn w1w1 w2w2 wnwn x 0 = 1 w0w0

Reti Neurali Reti Feed-Forward

Reti Neurali Addestramento di FFNNs: Backpropagation Obiettivo: minimizzazione dellerrore Utilizzando Dobbiamo calcolare

Reti Neurali Backpropagation (2) Per un peso di output, otteniamo:

Reti Neurali Backpropagation (3) riassumendo: Regola di aggiustamento:

Reti Neurali Backpropagation (4) Su un peso interno, otteniamo:

Reti Neurali Backpropagation (5) riassumendo: Regola di aggiustamento:

Reti Neurali Algoritmo Backpropagation x1x1 x2x2 x3x3 Input Layer w 11 h1h1 h2h2 h3h3 h4h4 Hidden Layer o1o1 o2o2 v 42 Output Layer Idea: Riportiamo leffetto dellerrore ai layers successivi Algorithm Train-by-Backprop (D, r) –Ogni istanza ha la forma, dove x è il vettore di input e t(x) è il valore di output. r è il tasso di learning (ad esempio, 0.05) –Inizializza tutti i w i a valori random –UNTIL la condizione di terminazione non è ottenuta, DO FOR EACH in D, DO calcola o(x) = (net(x)) FOR EACH unità k di output, DO FOR EACH unità j interna, DO Aggiorna ogni w = w i,j (a = x j ) o w = v j,k (a = z k ) w start-layer, end-layer w start-layer, end-layer + w start-layer, end-layer w start-layer, end-layer end-layer a end-layer –RETURN w, v

Reti Neurali Proprietà Gradiente Discendente –Trova un ottimo locale Backprop in pratica –Tipicamente, si tende ad includere il momento –Quanto generalizza su altri esempi? –La fase di training è molto lenta: migliaia di iterazioni (epoche) –Inferenza (applicazione della rete) estremamente veloce

Reti Neurali Potere di rappresentazione x1x1 x2x2 x1x1 x2x2 x1x1 x2x2

Reti Neurali Potere di rappresentazione Representational (i.e., Expressive) Power –2-layer feedforward ANN Funzioni booleane Ogni funzione continua limitata –3-layer feedforward ANN: Qualsiasi funzione Inductive Bias –Spazio delle ipotesi continuo –Spazio euclideo n-dimensionale (spazio dei pesi) –Preference bias: interpolazione tra gli esempi positivi –Non ancora compreso a fondo

Reti Neurali Unità interne e Feature Extraction –I valori interni rappresentano le proprietà essenziali dellinput esempio Learning Hidden Layer Representations

Reti Neurali Evoluzione dellerrore e dei nodi interni error D (o k ) z j ( ), 1 j 3

Reti Neurali –w 0 converge a 0 –Cambiamneti dopo le prime 1000 epoche Evoluzione dei pesi u i1, 1 i 8

Reti Neurali Overfitting Overfitting –hpeggio di h su D train, meglio su D test Overtraining –Overfitting dovuto a troppe iterazioni

Reti Neurali Overfitting Altre possibili cause –Il numero di nodi interni è fissato –Troppo pochi (underfitting) La rete non riesce a riassumere Analogia: sistemi di equazioni non determinati (troppe variabili rispetto alle equazioni) –Troppi La rete non generalizza analogia: approssimare una parabola con un polinomio di grado >> 2 Approcci –Prevenzione: selezione degli attributi –aggiramento Hold out o k-fold cross-validation Weight decay: decrementiamo ogni peso di un certo fattore ad ogni epoca –recovery: aggiunta o cancellazione di unità interne

Reti Neurali Progetto: Reti per il riconoscimento facciale 30 x 32 Inputs sinistra fronte destra su