Sommario Introduzione alle Reti Neuronali • Motivazioni • Elaborazione neurale • Modelli di apprendimento • Memorie Associative Giorgio Buttazzo • Riconoscimento di pattern Dipartimento di Informatica e Sistemistica Università di Pavia • Reti per il controllo autonomo • Conclusioni 2 Applicazioni dell’I.A. Ricerca della soluzione Si basa su l’esplorazione di vaste strutture dati organizzate ad albero: • Giochi di strategia – scacchi, dama, otello • Comprensione del parlato 3 9 27 81 243 … – analisi sintattica e semantica • Risoluzione di teoremi – dimostrazioni automatiche • Sistemi esperti Dopo 10 passi ci sono circa 60.000 nodi da esplorare Dopo 20 passi ce ne sono circa 3 miliardi e mezzo. – diagnosi mediche, previsioni 3 4 Gli scacchi Deep Blue vs. Kasparov • Ogni posizione ammette in media 20 mosse legali. • Lo spazio di ricerca è immenso (10120). Tuttavia i calcolatori sono più efficienti dell’uomo nelle ricerche su grosse strutture dati. Potenza attuale dei computer: Deep Blue: 2 ·108 posiz /sec Kasparov: 3 posiz /sec 108 - 10 9 posizioni/sec Ricerca esaustiva: 10111 s 1094 U 11 Maggio 97: Deep Blue batte Kasparov 3.5 a 2.5 (U ≅ 101 7 s) (ore 19:00 GMT) 5 6 1 Bambino batte Computer Il dilemma dell’I.A. I computer sono eccellenti nel calcolo, ma falliscono quando si cerca di riprodurre attività tipicamente umane: • Percezione sensoriale 3a0 Sebbene un computer possa battere il campione del mondo di scacchi, esso non è in grado di competere con un bambino di 3 anni nel • costruire con il Lego • riconoscere il volto di una persona • riconoscere la voce dei genitori • Coordinamento senso-motorio • Riconoscimento di immagini • Capacità di adattamento 7 8 Problema Esempi • Le azioni complesse dipendono da molti fattori, che non possono essere previsti esattamente in un programma. • Afferraggio di un oggetto è determinato da numerosi fattori: • Tali fattori devo essere acquisiti con l’esperienza, in una fase di apprendimento. La mente ha bisogno di un corpo! – – – – la posizione dell'oggetto la nostra postura la dimensione e la forma dell'oggetto il peso previsto – gli eventuali ostacoli interposti 9 Riconoscimento del parlato Richiede una necessaria per: fase di 10 Riconoscimento di immagini apprendimento • adattarsi al soggetto che parla LIBRO • filtrare i rumori esterni • separare eventuali altre voci 11 12 2 L’approccio neuronale Come funziona il cervello? L’estrema difficoltà di trattare questi problemi con il calcolatore ha fatto nascere l'esigenza di studiare nuove metodologie di calcolo, ispirate alle reti neuronali. • Quando riconosciamo un volto o afferriamo un oggetto non risolviamo equazioni. Medici → studi sul cervello Ingegneri → risoluzioni di problemi • Il cervello lavora in modo associativo: ogni stato sensoriale evoca uno stato cerebrale (un’attività elettro-chimica) che viene memorizzata a seconda delle necessità. 13 Colpire una palla da tennis 14 Fase di apprendimento • In una fase di apprendimento si provano le azioni e si memorizzano quelle buone: • La traiettoria dipende da diversi fattori: − forza di lancio, angolazione iniziale, effetto, velocità del vento; • La previsione della traiettoria richiede: − la misurazione precisa delle variabili; − la soluzione simultanea di equazioni complesse, da ricalcolare ad ogni acquisizione dei dati. − se la palla è passata in questa zona del campo visivo, fai un passo indietro; − se la palla … Come fa un giocatore a fare tutto ciò? 15 16 Fase operativa Il calcolo associativo • Una volta allenati, il cervello esegue le azioni senza pensare, sulla base delle associazioni apprese. • Un insieme di equazioni complesse vengono risolte mediante una look-up table. • Essa è costruita in base all’esperienza e viene affinata con l’allenamento. stato sensoriale azione memorizzata . . . Un meccanismo simile è usato da chi suona o da chi guida 17 18 3 Il neurone biologico sinapsi nucleo Alcune proprietà del cervello impulso • Velocità dei neuroni: alcuni ms • Numero di neuroni: 1011 ÷ 1012 • Connessioni: 103 ÷ 10 4 per neurone tolleranza al rumore • Controllo distribuito: manca una CPU basso consumo • Tolleranza ai guasti: graceful degradation assone dendriti • Attivazione/inibizione: • Apprendimento dovuto alle sinapsi (Hebb 1949) 19 • Evoluzione della ricerca • • • 20 1943, McCulloch e Pitts: nasce il primo modello neurale: il neurone binario a soglia. • 1949, Hebb: dagli studi sul cervello, emerge che l’apprendimento non è una proprietà dei neuroni, ma è dovuto a una modifica delle sinapsi. • 1962, Rosenblatt: propone un nuovo modello di neurone capace di apprendere mediante esempi: il perceptron. • 1969, Minsky e Papert: dimostrano i limiti del perceptron: crolla l’entusiasmo sulle reti neurali. 1982, Hopfield: propone un modello di rete per realizzare memorie associative. 1982, Kohonen: propone un tipo di rete autoorganizzante (mappe recettive). 1985, Rumelhart, Hinton e Williams: formalizzano l’apprendimento di reti neurali con supervisione (Back-Propagation). 21 22 Modello generale di neurone Modello di un neurone x1 Occorre definire x2 • il numero dei canali d’ingresso: • il tipo dei segnali d’ingresso: N xi • i pesi delle connessioni: wi • la funzione di attivazione: F • la funzione di uscita: f • • • F a y f xn a(t) = F(x1, x2, … , xn) y(t) = f(a) 23 24 4 Il neurone binario a soglia Funzione di Heaviside x1 y(t) x2 1 • • • Σ y a θ xn Σi wi xi a = 0 se a = Σ i wi xi Σi w i x i < θ y (t) = y = HS(a − θ) 1 altrimenti 25 Altre funzioni di uscita f Reti di neuroni f Per costruire una rete neurale occorre definire: θ a f • Il modello dei neuroni a • L’architettura della rete • La modalità di attivazione dei neuroni f θ a 26 • Il paradigma di apprendimento θ • La legge di apprendimento a 27 28 Rappresentazione delle connessioni Architetture di rete i Completamente connessa wji j Peso sul neurone j della connessione proveniente dal neurone i stratificata 29 30 5 Reti completamente connesse I pesi della rete possono essere specificati attraverso una matrice di connessione pesi neurone 1 W = Reti stratificate I pesi di una rete a n strati possono essere specificati attraverso n− −1 matrici di connessione: strato 3 (uscita) W32 pesi neurone 2 strato 2 (nascosto) • • • W21 strato 1 (ingresso) pesi neurone n 31 32 Apprendimento Modalità di attivazione Capacità della rete di modificare il comportamento in una direzione desiderata al variare delle connessioni sinaptiche (pesi). • Sincrona (parallela) I neuroni cambiano stato tutti insieme, sincronizzati da un clock. I paradigmi di apprendimento possono essere suddivisi in tre classi fondamentali: • Asincrona (sequenziale) • supervisionato • competitivo • con rinforzo I neuroni cambiano stato uno per volta. Occorre definire un criterio di scelta. 33 Apprendimento supervisionato 34 Fase di addestramento La rete impara a riconoscere un insieme di configurazioni di ingresso desiderate. Xk RETE NEURALE esempio La rete opera in due fasi distinte: • Fase di addrestramento ∆w Teacher si memorizzano le informazioni desiderate Ydk • Fase di evoluzione Yk uscita Learning Rule uscita desiderata si recuperano le informazioni memorizzate 35 36 6 Apprendimento competitivo Apprendimento con rinforzo • I neuroni competono per specializzarsi a riconoscere un particolare stimolo. • Alla fine, ogni stimolo attiva un particolare neurone (isomorfismo tra stimoli e nueuroni di uscita). RETE NEURALE Xk stimolo Yk RETE NEURALE Xk Zk Sistema da controllare R Yk uscita Critico ∆w 37 Rete completamente connessa • Neuroni binari a soglia • Attivazione parallela 38 Equazione di evoluzione In forma matriciale: X(t+1) = HS [W X(t)] Transizione di stato xi(t+1) = HS [ Σ i wi x i(t)] xi(t+1) = • X(t) è lo stato della rete al tempo t • W è la matrice dei pesi 1 se Σ iwix i(t) ≥ 0 0 altrimenti 39 40 Transizione di stato Esempio X2 Matrice simmetrica x2 1 1 x1 −1 −1 −1 −1 x3 0 1 −1 W = 1 0 −1 −1 −1 0 Stato iniziale: X(t) = 00 11 00 X1 X3 Stato successivo: X(t+1) = HS[W X(t)] = = HS 00 11 −1 −1 11 00 −1 −1 −1 −1 −1 −1 00 00 11 00 X2 = 1 1 0 X1 41 X3 42 7 Diagramma delle transizioni 011 101 000 100 010 111 110 Esempio Matrice antisimmetrica x2 1 x1 001 −1 −1 −1 1 1 x3 0 −1 1 W = 1 0 −1 1 0 −1 43 44 Definizioni Diagramma delle transizioni • Trasformazione 000 010 001 100 111 011 101 110 Funzione T:S→S, che trasforma uno stato X(t) nel successivo X(t+1). • Traiettoria Sequenza degli stati assunti dalla rete, a partire da uno stato iniziale X0: X(0) = X0 X(t+1) = T[X(t)] 45 Definizioni 46 Definizioni • Stato raggiungibile • Ciclo limite di ordine k Uno stato XF si dice raggiungibile da XI se esiste una traiettoria che parte da XI e arriva in X F . Traiettoria che parte da uno stato iniziale XI e arriva nello stesso stato dopo k passi. • Stabilità globale • Stato stabile Una rete si dice globalmente stabile se per ogni stato iniziale X, la traiettoria che parte da X raggiunge uno stato stabile. Stato che genera una traiettoria costante: X(t+1) = X(t) = X s 47 48 8 Modello di Hopfield Proprietà di stabilità (Hopfield ‘82) y(net) 1 Una rete neurale completamente connessa è globalmente stabile se: θ • la matrice dei pesi è simmetrica • l’attivazione è asincrona net = Σ i wi x i n y = sgn ∑ wi xi − θ i =1 49 50 Dimostrazione La funzione Energia • Ogni stato è caratterizzato da una energia: 1 E(X) = − XT WX 2 • Se la matrice dei pesi è simmetrica e l’attivazione è asincrona, allora E(X) è monotona non crescente con l’evolvere dello stato E( X ) = − 1 n n ∑∑ wij xi x j 2 i =1 j =1 Derivando rispetto a x k (varia un solo neurone): n ∂E 1 n = − ∑ wkj x j + ∑ wik xi ∂xk 2 j =1 i =1 Supponendo W simmetrica si ha: n ∂E = − ∑ wkj x j ∂xk j =1 E[X(t+1)] ≤ E[X(t)] 51 Nel discreto si ha: La rete evolve verso uno stato stabile n ∆ E = −∆ xi ∑ wij x j i =1 ∆ xi > 0 ( xi: -1 → 1) ⇒ Σjw ijx j ≥ 0 ∆ xi < 0 ( xi: 1 → -1) ⇒ Σjw ijx j < 0 quindi: 52 E(X) X ∆E < 0 Xini 53 Xfin X2 X3 54 9 Rete con 3 stati stabili Bacino di attrazione: insieme degli stati tali che tutte le traiettorie partenti da essi finiscono nello stesso stato stabile. E 9 bacino di attrazione per XS1 0000 0100 bacino di XS2 1001 bacino di XS3 1111 1011 1110 0011 1010 E(X) 7 X 0001 1101 5 0101 1100 2 0111 1000 0110 XS1 XS2 XS3 X0 0010 55 56 Memorizzazione di immagini Memorie Associative Sono memorie i cui i contenuti possono essere recuperati sulla base di una informazione parziale o distorta del contenuto stesso. Immagine: n ×× m pixel Neuroni: N = n ×× m Connessioni: C = N 2 Stati: S = 2N Immagine: 8 ×× 8 pixel Neuroni: N = 64 Connessioni: C = 4096 S ≅ 2 ·1019 Stati: 57 58 Recupero delle memorie input E(X) input Xj Xi State space Memo 1 59 Memo 2 Memo 3 60 10 x2 Regola di memorizzazione M1: (+ + −) (Hopfield ‘82) x1 +1 −1 W1 = 0 1 −1 1 0 −1 −1 −1 0 W2 = 0 1 −1 1 0 −1 −1 −1 0 x3 −1 x2 M2: (− − +) x2 W = ∑Wk = k =1 0 1 −3 1 0 −1 −3 −1 0 x1 x3 62 M = {(+ + −), (− − + ), (− + +)} M3 +−− −3 ++− M1 −1 −1 0 −1 −1 0 1 −1 1 0 W3 = −1 1 (Attivazione Sincrona) x2 1 −1 Diagramma delle transizioni Rete complessiva m x3 −1 M3: (− + +) 61 −1 1 x1 x1 −1 1 x3 −++ −−− +−+ −−+ +++ −+− M2 63 Diagramma delle transizioni 64 Osservazioni Quando si sovrappongono troppe memorie: • Non sempre una memoria risulta stabile (Attivazione Asincrona) M = {(+ + −), (− − + ), (− + +)} La creazione di un minimo locale può avere l’effetto di cancellarne un altro. E=3 −+− +−− E = −1 E = −5 +++ M1 ++− −−− M3 M2 +−+ • Possono nascere memorie spurie −++ La superficie energetica può assumere forme complesse. Spesso il complementare di una memoria è anche una memoria poiché W(x) = W(~x). −−+ 65 66 11 Capacità di memoria Ottimizzazione • Regola empirica (Hopfield) Una rete di Hopfield minimizza la funzione energia: Una rete di N neuroni può ospitare al più un numero M = N/7 memorie (M ≅ 0.15 N). E( X ) = − • Analisi statistica Detta β la probabilità di stabilità delle memorie, M= N 2 ln(N / a) dove: xi wji dove a = −lnβ 1 n n ∑∑ wij xi x j 2 i =1 j =1 sono le incognite del problema rappresentano i vincoli del problema Ad esempio, se N = 1000 e β = 0.9 si ha M = 54. 67 68 Macchina di Boltzman Ottimizzazione (Hinton & Sejnowski, 1983) E(X) Per sfuggire dai minimi locali si consentono transizioni di stato probabilistiche: P( y = 1) = X Sol. sub-ottima 1 Sol. ottima 1 1+ e − a / T T Come si fa a trovare il minimo assoluto? 69 a = Σ i wi xi 70 Simulated Annealing E(X) X Sol. ottima Regola di raffreddamento T (k ) = T0 log(1 + k ) 71 12