Le reti neurali modelli algoritmi e applicazioni
This presentation is the property of its rightful owner.
Sponsored Links
1 / 70

LE RETI NEURALI: MODELLI, ALGORITMI E APPLICAZIONI PowerPoint PPT Presentation


  • 89 Views
  • Uploaded on
  • Presentation posted in: General

LE RETI NEURALI: MODELLI, ALGORITMI E APPLICAZIONI. Giancarlo Mauri Università di Milano - Bicocca. 1.1. Perché le reti neurali. LA POTENZA DEL CALCOLO ELETTRONICO… calcoli numerici complessi (anni per un uomo) in frazioni di secondo memorizzazione grandi quantità di dati.

Download Presentation

LE RETI NEURALI: MODELLI, ALGORITMI E APPLICAZIONI

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Le reti neurali modelli algoritmi e applicazioni

LE RETI NEURALI:MODELLI, ALGORITMIE APPLICAZIONI

Giancarlo Mauri

Università di Milano - Bicocca


1 1 perch le reti neurali

1.1. Perché le reti neurali

  • LA POTENZA DEL CALCOLO ELETTRONICO…

  • calcoli numerici complessi (anni per un uomo) in frazioni di secondo

  • memorizzazione grandi quantità di dati

  • … E I SUOI LIMITI

  • riconoscimento di persone, oggetti, suoni (anche in presenza di rumore)

  • riconoscimento del parlato e comprensione del linguaggio naturale

  • apprendimento, classificazione, generalizzazione

  • visione e controllo del movimento

  • adattamento a nuove situazioni

  • soluzione di problemi complessi in modo esaustivo (ottimizzazione combinatoria)


1 1 perch le reti neurali1

1.1. Perché le reti neurali

  • Perché il cervello risulta superiore al computer per certe categorie di problemi?

  • I meccanismi operanti nel cervello possono essere imitati per produrre macchine più efficienti ?


1 1 perch le reti neurali2

1.1. Perché le reti neurali

La differenza non sta nelle componenti:

Cellule nervose: tempo risposta ordine msec

Circuiti logici elettronici: tempo risposta ordine nsec

ma nella "architettura"


1 1 perch le reti neurali3

1.1. Perché le reti neurali

IL CERVELLO COME CALCOLATORE

  • L'elaborazione è frutto di un processo altamente parallelo

  • La potenza di calcolo deriva dalla cooperazione di molti processori semplici e fortemente interconnessi:

    1010 - 1011 neuroni

    105 connessioni/neurone

  • Le connessioni si modificano con l'apprendimento

  • L'informazione non é localizzata, ma distribuita globalmente nella rete di processori

  • L'intelligenza deriva dalla interazione tra i neuroni, non é prerogativa di un singolo neurone

  • Ha una notevole tolleranza ai guasti


1 2 un po di storia

1.2. Un po' di storia

INTERESSE PER IL NEURAL COMPUTING


1 2 un po di storia1

1.2. Un po' di storia

I PIONIERI (Anni '40)

1943 : McCulloch e Pitts

"A Logical calculus of Ideas Immanent in Nervous Activity"

Primo modello formale di funzionamento di una rete nervosa, descritta come un circuito i cui componenti sono porte logiche costruite a partire dalle funzioni booleane elementari: OR, AND, NOT.

  • 1949 : Wiener

    • introduce la visione del sistema nervoso come un sistema per l'elaborazione delle informazioni

  • 1949 : D.O. Hebb

    • "The organization of behavior"

    • ipotizza che alla base del meccanismo di apprendimento vi sia una modifica dell'efficacia sinaptica tra coppie di neuroni, atraverso il rafforzamento di connessioni spesso attive.

    • La regola di apprendimento di Hebb è ancora alla base di molti modelli


1 2 un po di storia2

1.2. Un po' di storia

LA PRIMA ETA’ DELL’ORO ('50–'60)

1960: B. Widrow, M. Hoff

"Adaptive switching circuits"

Uno dei primi neurocomputer, con regola di apprendimento di Widrow–Hoff, capace di riconoscere semplici pattern.

La differenza tra l'uscita del circuito e l'uscita desiderata modifica per controreazione le resistenze nel circuito per ottenere uscite più corrette.

  • Fine anni '40: von Neumann sviluppa la teoria degli automi

    • "ramo seriale" che darà origine alle architetture "alla von Neumann"

    • "ramo parallelo" che produrrà gli automi cellulari e le reti neuronali

  • 1962: F. Rosenblatt

    • "The principles of neurodynamics"

    • Primo modello di neurone formale in grado di apprendere da esempi (percettrone).

    • Esperimenti su computer.


1 2 un po di storia3

1.2. Un po' di storia

GLI ANNI DELLA CRISI ('70)

Sviluppo di

calcolatori basati sulla architettura sequenziale di von Neuman

Intelligenza artificiale

  • 1969: M. Minsky, S. Papert

    • "Perceptrons: an introduction to computational geometry"

    • Analisi approfondita dei percettroni.

    • Dimostrazione della inadeguatezza a risolvere molti problemi.

Il campo delle reti neurali fu abbandonato

(anche per l'indisponibilità di tecnologie adeguate)

salvo poche eccezioni

(Stephen Grossberg, Teuvo Kohonen, James Anderson, Gail Carpenter)


1 2 un po di storia4

1.2. Un po' di storia

GLI ANNI DELLA RIPRESA ('80–'90)

  • Riesame della critica di Minsky e Papert, che risulta valida solo per reti molto semplici

  • Introduzione dell'algoritmo diback propagation

  • John Hopfield

    • Analogie stimolanti con altri sistemi fisici

  • D. Rumelhart, J. McClelland, G. Hinton, T. Sejnowski

    • Descrizione dell'apprendimento delle reti in termini di meccanica statistica:Macchina di Boltzmann

  • Sviluppo di algoritmi ed architetture ad alto parallelismo

  • Sviluppo di nuove tecnologie: VLSI, Circuiti ottici


1 3 campi applicativi

1.3. Campi applicativi

  • Elaborazione di segnali

  • Controllo

  • Riconoscimento di schemi grafici

  • Elaborazione di immagini

  • Medicina

  • Riconoscimento e produzione del parlato

  • Finanza


1 4 connessionismo e intelligenza artificiale

1.4. Connessionismo e intelligenza artificiale

Connessionismo

Intelligenza

artificiale

  • Mente ≠ cervello

  • Deduzione

  • Simbolico

  • Sequenziale

  • Programmazione

  • Istruzioni imperative

  • Indirizzi espliciti

  • No generalizzazione

  • Mente  cervello

  • Induzione

  • Analogico / subsimbolico

  • Parallelo

  • Apprendimento

  • Adattività

  • Memoria associativa

  • Generalizzazione


2 1 il neurone biologico

2.1. Il neurone biologico

Stati possibili:

eccitazione

invia segnali ai neuroni connessi attraverso le sinapsi

inibizione

non invia segnali

Transizione di stato:

dipende dall'entità complessiva dei segnali eccitatori e inibitori ricevuti


2 2 neuroni formali

2.2. Neuroni formali

GLI ELEMENTI ESSENZIALI:

  • Stato

  • Funzione di transizione

  • Funzione di uscita

  • Modalità di transizione

    UN ESEMPIO:ilneurone binario a soglia(McCulloch, Pitts 1943)

  • <n, C, W, >

  • nome canali vettore soglia

  • input pesi


2 2 neuroni formali1

c1

w1

c2

w2

wn

cn

2.2. Neuroni formali

  • Stati:{0,1} o {-1,1}

  • Funzione di transizione:s(t+1) = 1ssewisi(t) ≥ 

  • Funzione di uscita:coincide con lo stato

  • Modalità di transizione:deterministica


2 2 neuroni formali2

Output

Input

Output

Input

2.2. Neuroni formali

Funzioni di trasferimento

A gradino

Lineare


2 2 neuroni formali3

Output

Input

Output

Input

2.2. Neuroni formali

Mista

Sigmoide


2 3 reti neurali artificiali

2.3. Reti neurali artificiali

2

1

3

5

4


2 3 reti neurali artificiali1

2.3. Reti neurali artificiali

  • CARATTERISTICHE STRUTTURALI:

    • Grande numero di unità

    • Operazioni elementari

    • Alto livello di interconnessione

  • CARATTERISTICHE DINAMICHE :

    • Cambiamento di stato in funzione dello stato dei neuroni collegati (input)

    • Funzione di uscita per ogni unità

    • Modifica delle schema di connessione per apprendimento

  • FORMALMENTE:

matrice dei pesi

vettore delle soglie

input netto a i in t

funzione di trasferimento


2 3 reti neurali artificiali2

2.3. Reti neurali artificiali

ELEMENTI CARATTERIZZANTI:

  • tipo di unità

  • topologia (direzione delle connessioni, numero di strati …)

  • modalità di attivazione:

    • seriale ciclica

    • seriale probabilistica

    • parallela

    • mista

  • modalità di addestramento


2 3 reti neurali artificiali3

2.3. Reti neurali artificiali

CLASSI PRINCIPALI:

  • Percettrone (Rosenblatt)

  • Adaline(Widrow e Hoff)

  • Mappe di caratteristiche autoorganizzanti (Kohonen)

  • Reti di Hopfield

  • Reti basate sulla teoria della risonanza adattiva (Carpenter)

  • Percettrone a più strati (Rumelhart e Williams)

  • Macchina di Boltzmann (Hinton)

  • Memoria associativa bidirezionale (Kosko)

  • Rete a contropropagazione (Hecht–Nielsen)


3 1 il percettrone

3.1. Il percettrone

Compito: riconoscimento di forme

I percettroni sono reti semplificate, progettate per permettere lo studio di relazioni tra

l'organizzazione di una rete nervosa, l'organizzazione del suo ambiente e le prestazioni "psicologiche"

di cui è capace.

I percettroni potrebbero realmente corrispondere a parti di reti e sistemi biologici più estesi;

in questo caso, i risultati ottenuti sarebbero direttamente applicabili. Più verosimilmente, essi

rappresentano una semplificazione estrema del sistema nervoso centrale, in cui alcune proprietà

sono esagerate ed altre soppresse. In questo caso, perturbazioni e raffinamenti successivi del sistema

possono dare una approssimazione migliore.

Rosenblatt, 1962


3 1 il percettrone1

t

SOGLIA

S

NODO DI OUTPUT

w

w

w

PESI

k

n

1

• • • •

• • • •

NODI DI INPUT

x

x

x

1

k

n

3.1. Il percettrone

  • Struttura:

  • Regola di transizione:

    se

allora S = 1

altrimenti S = 0


3 2 apprendimento nel percettrone

3.2. Apprendimento nel percettrone

  • I pesi vengono fissati a caso e poi modificati

  • L'apprendimento è guidato da un insegnante

  • La procedura

    • Obiettivo è classificare vettori di input in due classi, A e B.

    • Si sottomette una sequenza infinita {xk} di vettori tale che ve ne siano un numero infinito sia di A che di B

    • Per ogni xk la rete calcola la risposta

    • Se la risposta è errata, si modificano i pesi, incrementando i pesi delle unità di input attive se si è risposto 0 anzichè 1, decrementandole nel caso duale:

      w' = w ± x


3 2 apprendimento nel percettrone1

3.2. Apprendimento nel percettrone

  • Teorema di convergenza:

    • Comunque si scelgano i pesi iniziali, se le classi A e B sono discriminabili, la procedura di apprendimento termina dopo un numero finito di passi.

  • Teorema di Minsky e Papert:

    • La classe delle forme discriminabili da un percettrone semplice è limitata alle forme linearmente separabili.


3 3 il teorema di convergenza del percettrone

3.3. Il teorema di convergenza del percettrone

Teorema

Se l'insieme degli input estesi è partito in due classi linearmente separabili A, B allora é possibile trovare un vettore di pesi w tale che:

wy ≥ 0 se yA

wy < 0 se yB

Input x = (x1, …, xd)

Input esteso x = (x1, …,xd, 1)

Pesi w = (w1, …,wd, -)


3 3 il teorema di convergenza del percettrone1

3.3. Il teorema di convergenza del percettrone

Costruzione

1. Si parte con w arbitrario

2. Si classifica un input y:

risposta corretta: w' := w

risposta errata: w' := w+y se yA

w' := w–y se yB

3. Si prova un nuovo input


3 3 il teorema di convergenza del percettrone2

3.3. Il teorema di convergenza del percettrone

  • Correttezza

    • Sia yA e wy < 0

    • Poiché yy ≥ 0 vale w'y = (w+y)y = wy + yy > wy

    • Quindi w' classifica y in modo "più corretto" rispetto a w.

    • Ma altri input possono essere classificati "meno correttamente".


3 3 il teorema di convergenza del percettrone3

3.3. Il teorema di convergenza del percettrone

Convergenza

Si consideri

Cerchiamovtale chev  y ≥ 0 yA'

  • {yi}iNsequenza di addestramento

    • yiA’

    • yB' occorre infinite volte

  • {wi}iNsequenza dei pesi

    • w0 = 0 scelta arbitraria

    • wk+1= wksewk yk ≥ 0

      wk + ykaltrimenti


3 3 il teorema di convergenza del percettrone4

3.3. Il teorema di convergenza del percettrone

  • {vi}iNsequenza dei pesi modificati

    {ti}iNsottosequenza di training corrispondente

    w0 ≠w1 = w2 = w3 ≠w4 = w5 = w6 ≠ w7 ≠ w8 ……..

v0 v1 v2 v3

t0 t1 t2 t3

  • vjtj< 0j

    vj+1= vj+tj= vj-1+ tj-1+tj= …… =

  • TESI: la sequenza{vi} è finita


Il teorema di convergenza del percettrone

Il teorema di convergenza del percettrone

  • DIMOSTRAZIONE

    • Sia w una qualsiasi soluzione(esiste per ipotesi)!

      y • w ≥ 0  y  A'

    • Si ponga = min (y • w | y  A')( )

    • vj+1• w = • w ≥ j • () + ( )

    • (vj+1• w)2≤ | vj+1|2• |w|2 (Cauchy-Schwarz)

    • | vj+1|2 ≥ (  )


Il teorema di convergenza del percettrone1

Il teorema di convergenza del percettrone

  • Si pongaM = max {|y|2 | y  A'}

  • |vj+1|2 = |vj+tj|2 = | vj|2 + 2 vj•tj + |tj|2≤ | vj|2 + |tj|2(vj•tj < 0)

  • |vj+1|2 ≤ | tj|2 ≤ j • M ()

≤ | vj+1|2 ≤ j M = g(j) (  ) +()

f(j) =

lineare in j

quadratico in j


Il teorema di convergenza del percettrone2

Il teorema di convergenza del percettrone

f

g

j

Dopo al massimo b modificazioni di peso, il percettrone classifica correttamente ogni input.


Il teorema di convergenza del percettrone3

Il teorema di convergenza del percettrone

  • Ma:

    • bdipende dalla soluzioneW

    • bnon è il reale numero di stadi

LIMITAZIONI DEL PRECETTRONE

Minsky – Papert theory


Un esempio

Un esempio

OR ESCLUSIVO (addizione binaria):

I punti a valore 1 non sono linearmente separabili da quelli a valore 0

tale che xy = 1 se e solo se x + y ≥.

Essendo  simmetrica, vale anche xy = 1 sse y + x ≥.

Sommando e dividendo per 2 si ottiene:

xy = 1 sse tx + ty = t(x+y)≥

ove t = (+ )/2. Posto ora x+y = s, abbiamo:

xy = 1 sse ts –≥ 0.

Dallo studio del polinomio di primo grado in s y = ts – si ottiene:

Per s = 0, ts – < 0 (00 = 0)

Per s = 1, ts – ≥ 0 (01 = 1 = 10)

Per s = 2, ts – < 0 (11 =0)

Questa é una contraddizione, poiché una retta non può salire e poi scendere

Ipotesi: Esiste un neurone binario a soglia


Il percettrone generalizzato

Il percettrone generalizzato

  • Strati intermedi tra input e output

  • Connessioni da strati di livello basso a strati di livello alto; nessuna connessione all'interno di uno stesso strato

  • Stato di un neurone: x

  • Funzione di attivazione: con P(x) funzione sigmoidale.

  • Per ogni configurazione x del primo strato (ingresso), la rete calcola una configurazione y dell'ultimo strato (uscita)


Il percettrone generalizzato1

Il percettrone generalizzato

  • Obiettivo è che, fissata una mappa f tra configurazioni di ingresso e di uscita, sulla base di una sequenza di stimoli(xk), la rete cambi i pesi delle connessioni in modo che, dopo un numero finito s di passi di apprendimento, l'uscita(yk)coincida conf(xk)per ogni k>s, almeno approssimativamente.

  • Criterio di modifica: minimizzare un "criterio di discrepanza" tra risposta della rete e risposta desiderata

  • Teorema (Irie-Miyake, 1988): Un solo strato nascosto è sufficiente per permettere di calcolare qualsiasi funzione da un insieme finito a {0,1}


Reti multistrato

Reti multistrato


Reti multistrato1

Reti multistrato

REGOLA DELTA E CALO GRADIENTE

● Strategie di apprendimento:

ridurre una funzione appropriata della differenza tra il reale output y sull'input x e l'output desiderato t

● Tecnica di riduzione:

calo gradiente (versus pesi di connessione)

E

w


Un esempio1

.5

+1

+1

–2

1.5

+1

+1

Un esempio

Una rete per l'or esclusivo con una unità nascosta


Retropropagazione dell errore

Retropropagazione dell'errore

L'algoritmo (senza unità nascoste)

La convergenza a un minimo globale é garantita per funzioni di attivazione lineari senza unità nascoste e per dati consistenti

x

w

y

I pesi sono modificati proporzionalmente a questa derivata (regola delta):


Retropropagazione dell errore1

Retropropagazione dell'errore

Assunzioni

  • Neuroni u1, u2, …, un:

    • unità di input

    • unità nascoste

    • unità di output

  • Pesi reali wij

  • Stati di attivazione sj

  • Input netto

  • Funzione di attivazione semilineare differenziabile non decrescente:

    sj(t+1) = fj(nj(t))

Es. : Funzione logistica


Retropropagazione dell errore2

Retropropagazione dell'errore

  • Sia x input, y output atteso, t output effettivo.

  • Consideriamo la norma quadratica

  • Cerchiamo una regola di modifica dei pesi tale che:

con tasso di apprendimento. Poiché:

dobbiamo determinare


Retropropagazione dell errore3

Retropropagazione dell'errore

  • Passo 1 – Input

    Il neurone di input j é posto nello stato xj

  • Passo 2 – Propagazione

  • Per ogni neurone interno o di output j si calcola lo stato

  • Passo 3 – Confronto

    • Per ogni neurone di output j, noto l'output atteso, si calcola:

  • Passo 4 – Retropropagazione dell'errore

    • Per ogni neurone nascosto j, si calcola:

  • Passo 5 – Aggiornamento dei pesi


Retropropagazione dell errore4

Retropropagazione dell'errore

Limiti

  • Tasso di apprendimento adattivo: = g(gradiente di E)

  • Termine di momento

  • Range degli stati da –1 a 1

  • Deviazioni dalla discesa più ripida

  • Variazioni nell'architettura (numero di strati nascosti)

  • Inserimento di connessioni all'indietro

  • mancanza di teoremi generali di convergenza

  • può portare in minimi locali di E

  • difficoltà per la scelta dei parametri

  • scarsa capacità di generalizzazione, anche nel caso di buona minimizzazione di E

Possibili modifiche migliorative


Retropropagazione dell errore5

Retropropagazione dell'errore

Il tasso di apprendimento

  • Rete grande apprende facilmente, ma generalizza male

    • A partire da una rete grande tolgo neuroni nascosti, se valuto che può continuare ad apprendere anche con meno neuroni

  • Rete piccola apprende con difficoltà, ma generalizza bene

    • A partire da una rete piccola aggiungo neuroni nascosti, se la discesa della funzione E é troppo lenta o bloccata

  • A partire da una ipotesi iniziale di rete, aumento o diminuisco i nodi nascosti, secondo criteri misti

  • grande, rischio di comportamento oscillatorio

  • piccolo, apprendimento lento

Strategie di identificazione della architettura ottimale


Retropropagazione dell errore6

Retropropagazione dell'errore

Inserimento di connessioni all'indietro

  • in presenza di connessioni con ritardo q l'input netto é:

  • la funzione E é calcolata pesando l'errore nel tempo:

  • nel calcolo delle derivate occorre aggiungere variabili ausiliarie

Il ruolo dell'integrazione

  • la rete può integrarsi con moduli tradizionali, sfruttando tutte le informazioni simboliche e le sinergie che vi possono essere


Come lavorare con la retropropagazione

Come lavorare con la retropropagazione

B.P. al lavoro

Come evitare i minimi locali?

Quanto è lungo il tempo di apprendimento?

Come scegliere ?

Nessuna risposta teoretica, solo risultati di simulazione


Come lavorare con la retropropagazione1

Come lavorare con la retropropagazione

Esempio: Funzione Logistica

unità output

unità nascosta

Il ruolo dell'integrazione

  • Troppo grande: oscillazione

  • Troppo piccolo: apprendimento lento


Il problema xor

Il problema XOR

Soluzione 1

y

6.3

-4.2

-4.2

-9.4

x3

2.2

-6.4

-6.4

x1

x2


Il problema xor1

Il problema XOR

Logistic function

 = 0.5

558 cicli

Output ≤ 0.1 per 0 ≥ 0.9 per 1

~ 0

~ 0

~ 1

~ 0

~ 0

~ 1


Il problema xor2

Il problema XOR

Soluzione 2

-.8

5.3

-4.5

2.0

-.1

-2.0

8.8

4.3

9.2

Minimo locale!!!!

Output 0.5 per input 11 e 01

6.587 presentazioni, =0.25


Il problema xor3

Il problema XOR

APPRENDIMENTO NEL PRECETTRONE GEN.

INPUT OUTPUT INIZ. OUTPUT DOPO 250 CICLI

(1 CICLO)( = .1)


Il problema xor4

Il problema XOR

-.4

-.9

-6.9

-3.3

-1.8

-2.0

-1.6

-1.4

-.8

-1.4

-2.3

0

-1.5

-2.2

-.4

-1.7

-2.9

-1.4

-.8

-.7

-.1

-2.4

-1.2

-1.1

Difficoltà di classificazione


Il problema xor5

Il problema XOR

N.B.Non c'è una soluzione corretta a cui convergere, perché la soluzione cambia al variare dell'ambiente! Necessità di feedback dall'ambiente, per un adattamento continuo.


Le reti di hopfield

Le reti di Hopfield

  • n neuroni binari a soglia ui

  • connessione completa con pesi simmetrici Tij

  • evoluzione della rete verso uno stato stabile, a partireda uno stato iniziale assegnato

  • aggiornamento sequenziale casuale con equidistribuzione di probabilità

Dimostrazione:

E decresce o resta invariata ad ogni aggiornamento. Se si aggiorna ui a u'i si ha la variazione di energia:

Se

Se

Teorema: La rete converge a uno stato stabile, che é minimo globale o locale della funzione energia:


Le reti di hopfield1

Le reti di Hopfield

In altre parole, si cambia stato solo se ciò comporta una diminuzione di energia.

Stati stabili sono gli stati di minima energia, in cui E non é abbassata da modifiche di nessuna delle variabili ui

COMPUTAZIONE:

  • Si bloccano i valori di alcune unità (input)

  • Si lascia evolvere la rete fino all'equilibrio

  • Si leggono e interpretano i valori di alcune unità (output)

    Il meccanismo probabilistico e l'esistenza di più minimi locali possono portare a risultati diversi in diverse esecuzioni.


Macchina di boltzmann

Macchina di Boltzmann

  • Rete di neuroni binari che usa la tecnica dell'annealing simulato per modificare le connessioni interne

  • Funzione obiettivo (bilineare):

  • Matrice di connessione simmetrica

  • No auto connessioni

  • Aggiornamento neuroni casuale

    Funzione di attivazione sigmoidale casuale governata dalla seguente probabilità di transizione da s a s'

ove s é contiguo a s' sse la loro distanza di Hamming é 1


Macchina di boltzmann1

Macchina di Boltzmann

  • processostocastico che, all'equilibrio, concentra la probabilità nella regione critica M per V, in base alla legge di distribuzione

    ove é una costante di normalizzazione

    Procedure: MACCHINA DI BOLTZMANN

    External function: stopping_rule

    BEGIN

    prendi una configurazione iniziale s  {0,1}

    REPEAT

    calcola V = V(s)

    prendi uniformemente un i in {1,2,...,n} (scelta di un vettore prossimo)

    calcola V' = V(s)

    IF exp(–b(V–V')) > random [0,1) THEN flip si

    UNTIL stopping_rule é verificata

    END


Apprendimento nelle b m

Apprendimento nelle B.M.

1.Fase positiva

 Blocco unità di input e di output

 Evoluzione verso l'equilibrio termico

 Incremento del peso tra unità contemporaneamente attive (Hebb)

2.Fase negativa

 Blocco unità di input

 Evoluzione verso l'equilibrio termico

 Decremento del peso tra unità contemporaneamente attive

Elimina il rischio di saturazione dei pesi sinaptici

Si impara una buona approssimazione della distribuzione di probabilità condizionale sull'insieme di coppie (input, output)


Reti neurali e apprendimento

Reti neurali e apprendimento

Il "programma" di una rete neurale è rappresentato dai pesi sinaptici

 E' impossibile "programmare" direttamente reti complesse per svolgere un certo compito

D.O. Hebb, 1949:

Apprendimento = modifica pesi sinaptici

Se due neuroni connessi sono per più volte di seguito contemporaneamente attivi, il peso della sinapsi aumenta

La regola di Hebb è una regola non formalizzata. Inoltre i pesi vengono solo aumentati

Una possibile formalizzazione (Sutton, 1981)


Reti neurali e apprendimento1

Reti neurali e apprendimento

Apprendimento:

capacità della rete ad autoorganizzarsi in una topologia che esibisce le caratteristiche desiderate

(cambiamento nel comportamento che deriva dall'attività, dall'addestramento o dall'osservazione)

Principali metodi di apprendimento:

  • 1. Apprendimento con supervisione

    • noti ingresso e uscita corrispondente

    • i pesi sono modificati per produrre l'uscita migliore

  • 2. Apprendimento rinforzato

    • non è data l'uscita corretta

    • viene detto se l'uscita prodotta é buona o cattiva

  • 3. Apprendimento senza supervisione

    • La rete sviluppa le proprie regole di classificazione mediante l'estrazione di informazioni dagli esempi ricevuti


Apprendimento da esempi

Apprendimento da esempi

Input: una sequenza di coppie (argomento, valore) da una funzione f

Output: un programma (o una rete neurale) che computa la funzione

Approcci

 Apprendimento induttivo (Solomonov, Goodman, Blum) [Risultati asintotici]

 Apprendimento computazionale (Valiant, Blumer, Natarajan) [ Risultati probabilistici]

 Apprendimento con reti neurali (Hinton, Kohonen, Seinowskj)


Apprendere come

Apprendere come ?

Il compito

  • Data una funzione (ignota) f: X Y

  • Estrarre un campione e sottoporlo a una rete neurale

  • Cercare la rete neurale che simula f

La strategia di apprendimento

Minimizzare una opportuna funzione della differenza E tra il comportamento effettivo della rete e quello che si accorderebbe col campione

Le tecniche di minimizzazione

Discesa lungo il gradiente (rispetto ai pesi)

La valutazione dell'apprendimento

Per generalizzazione della funzione appresa a nuovi esempi mai visti dalla rete


Apprendere come1

generatore dei

parametri iniziali

della rete

W

+

W

W'

modulo di

calcolo del

gradiente

RETE

NEURALE

generatore di

esempi

x

y

z

modulo di

confronto

Apprendere come ?


Alcune applicazioni

Alcune applicazioni

Filtri adattivi per telecomunicazioni

1959 B. Widrow ADALINE

Valutazione rischi per mutui e prestiti

Nestor Mortgage Risk Evaluator

Training su qualche migliaio di casi

Individua pattern di dati associati a forte rischio

Può essere configurato come prudente o ottimista

Confronto con esperto umano promettente

Individuazione di esplosivi

SAIC SNOOPE

Riconosce il pattern di emissioni gamma di esplosivi

Reagisce a poco più di un kg di esplosivo

Installato al JFK di NY – Costo: 1.1 M$

Prevista l'installazione in altri grandi aeroporti


Alcune applicazioni1

Alcune applicazioni

Monitoraggio di processo

GTE Produzione lampadine

Confronta dati da sensori con gli standard

(variaz. di temperatura, pressione, sostanze chimiche)

Determina condizioni di produzione ottimali

Vantaggi su tecniche statistiche (regressione lineare):

raccolta dati incrementale, meno memoria

Riconoscimento parlato

Intel

Accuratezza 99% su un centinaio di parole da un solo speaker

Usato per registrare relazioni di ispettori

Individuazione prodotti difettosi

Siemens

Impianti condizionamento per auto rumorosi

Accuratezza 90%


Prototipi e ricerca

Prototipi e ricerca

Classificazione segnali sonar

Bendix Aerospace

Distingue mine da rocce o altri oggetti sul fondo marino

Accuratezza 99.8% su dati training, 90% su nuovi dati

Riconoscimento sequenze DNA

Riconoscimento scrittura manuale (indirizzi)

Ottimizzazione prenotazioni e tariffe aeree

Lettura assegni

Analisi dati clinici (ECG, EEG)


Prototipi e ricerca1

Prototipi e ricerca

Movimento di un braccio flessibile


Prototipi e ricerca2

Prototipi e ricerca

Controllo degli angoli di un satellite geostazionario


  • Login