1 / 35

Reti Neurali

Reti Neurali. Alessandro Mazzetti. Definizioni. Reti Neurali, Neuronali, Neuroniche, Neuroinformatica, Paradigma Sub-simbolico, Connessionismo, Parallel Distributed Processing Inizialmente: riprodurre le strutture nervose dei tessuti cerebrali su strumenti di calcolo

zenia-morse
Download Presentation

Reti Neurali

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Reti Neurali Alessandro Mazzetti

  2. Definizioni • Reti Neurali, Neuronali, Neuroniche, Neuroinformatica, Paradigma Sub-simbolico, Connessionismo, Parallel Distributed Processing • Inizialmente: riprodurre le strutture nervose dei tessuti cerebrali su strumenti di calcolo • Oggi: tecnologia alternativa di elaborazione dell'informazione.

  3. Rete di neuroni biologici

  4. La cellula neuronale

  5. Cervello biologico • Il cervello umano ha circa 10 bilioni di cellule nervose. • Il numero di interconnessioni è stimato dell'ordine di un milione di miliardi • Nell'uomo non sono presenti tipi diversi di neurone da quelli di altre specie animali

  6. La Sinapsi

  7. L’intelligenza biologica • Il contenuto informativo del cervello è l'insieme dei valori di attivazione di tutti i neuroni. • L'elaborazione dell'informazione è il flusso di segnali fra i vari neuroni che si eccitano e inibiscono a vicenda. • La memoria è l'insieme delle sinapsi che formano addensamenti e rarefazioni nella rete neurale

  8. L’elaborazione biologica • La frequenza massima di trasmissione degli impulsi fra neuroni è bassa (100/sec) • In un computer i segnali elettronici viaggiano a velocità migliaia di volte superiori. • Cervello = meccanismo diffuso e parallelo di trasmissione dell'informazione • L'elaborazione risiede in intere regioni del cervello piuttosto che in singole unità.

  9. Differenze cervello - computer • Computer : • elaborazione sequenziale nella CPU • memoria concentrata in unità separate (RAM). • anche il software separa i dati dall'algoritmo • Cervello: • informazione distribuita su una moltitudine di unità elementari di per sé semplici • ogni unità opera in parallelo con le altre • non vi è netta distinzione fra memoria e calcolo

  10. Storia... • 1943 - McCulloch e Pitts: • individuazione delle funzioni computabili • equivalenza con la Macchina di Turing • 1949 - Donald Hebb: • apprendimento biologico = fenomeno sinaptico • 1957 - Rosenblatt costruì il perceptrone • impara a riconoscere immagini • teorema che garantisce la capacita' di apprendere • robustezza e flessibilita' tipica dei sistemi biologici

  11. ...storia • 1969 - Minsky e Papert: • evidenziano i limiti e l'incapacita' di risolvere alcuni problemi banali • anni 70 - sfiducia • anni 80 - Rumelhart supera le limitazioni Kohonen formalizza rigorosamente Grossberg realizza applicazioni Hopfield definisce proprietà fisiche

  12. Il neurone formale

  13. Il meccanismo • Il neurone viene “eccitato” da altri neuroni A[i] = j( W[i,j] * O[j] ) • l’eccitazione viene “trattenuta” all'interno dell'unità fino ad un certo livello di soglia, oltre il quale l'unità si “scarica” O[i] = T( A[i] ) • e a sua volta va ad eccitare altri neuroni

  14. Funzione di trasferimento

  15. Rete Neurale Artificiale

  16. Modelli di Rete Neurale

  17. Teorema di Hecht-Nielsen Una qualsiasi funzione Y=F(X) può essere computata con elevata accuratezza da una rete neurale non ricorrente a soli tre livelli avente un opportuno numero di unità (anche molto elevato) nel livello intermedio (purtroppo non dice come definire i pesi)

  18. Multi-Level-Feed-Forward

  19. Due principali caratteristiche • Resistenza al rumore • input incerto, incompleto o leggermente errato • output distorto proporzionalmente • Resistenza al degrado • guasti o parti difettose (reti hardware) • output distorto proporzionalmente Una rete neurale non ha “colli di bottiglia” l’informazione è elaborata “a pezzettini”

  20. Come si programmauna rete neurale? • Una rete neurale NON si programma • La si addestra • Impara da sola da esempi Imparare il concetto di somma: 5+3=8; 24+1329=1353; 1+17=18;… Dopo aver "osservato" un numero sufficiente di somme, la rete avrà imparato, quindi sarà in grado di eseguire anche somme di numeri mai visti prima, come ad esempio 37+9

  21. Due modalità d’uso • Apprendimento: • dato input & output • trovare i pesi • Esecuzione: • dato input e pesi • trovare l’output

  22. Formule di apprendimento • Hebbiano W[i,j] =  * O[i] * O[j] • Error propagation W[i,j] =  * ( D[i] - O[i] ) * O[j]

  23. Tipologie di apprendimento • Supervisionato • il maestro dà sia input che output • Non-supervisionato • il maestro dà solo l’input In entrambi i casi la rete generalizza (riesce a trattare casi non imparati)

  24. Punti forti delle reti neurali • capacità di associazione • (fare analogie, trovare similarità) • autoapprendimento • capacità di generalizzazione • resistenza al rumore e al degrado • familiarità con gli eventi più frequenti • velocità (parallelismo)

  25. Punti deboli delle reti neurali • scarse capacità di calcolo • scarse capacità logiche • scarsa precisione • incapacità di spiegare i risultati forniti

  26. Esempio Imparare a lanciare un sasso per centrare un bersaglio

  27. Topologia di rete

  28. Conoscenza della rete

  29. ApprendimentoBACK-PROPAGATION • Per ogni esempio • prova ad eseguirlo • calcola l’errore commesso • aggiusta i pesi del livello di output • propaga l’errore al livello inferiore • aggiusta i pesi del livello inferiore • ripeti il tutto finché non commetti più errori

  30. Esercizio • Lanciare il programma SASSO.COM • definire una topologia • addestrare la rete • provarla

  31. Riassumendo... • Le reti neurali sono una tecnologia "orizzontale” • Trovano applicazioni nell'industria, finanza, medicina, difesa, telecomunicazioni, assicurazioni...

  32. Dove usarle? • Non ha senso impiegare reti neurali dove i computer sono eccellenti (calcoli, basi di dati, word-processing,...) • E’ opportuno adottarle dove i computer falliscono: • dove ci sono informazioni incomplete, vaghe, contradditorie, distorte, imprecise • dove manca un algoritmo adeguato (apprendimento) • dove la velocità richiede parallelismo

  33. Campi d’applicazione • riconoscimento/classificazione di immagini, testi, voce, segnali, patterns; • filtri di rumore su segnali; • sintesi di parlato; • pianificazione/ottimizzazione; • controllo di processo e di qualita'; • supporto alle decisioni; • analisi finanziaria; • diagnostica medica e industriale; • previsioni metereologiche; • compressione/trasmissione di dati

  34. Applicazioni • Riconoscitore di caratteri manoscritti, in grado di riconoscere il 95% di un testo, a seconda della qualita' della calligrafia. • Autenticatore di firme, i cui casi di falso allarme ammontano finora al 4% • Rivelatore di carte di credito rubate (Chase Manhattan Bank). • Rivelatore di esplosivi in servizio dal 1988 presso l'aereoporto di New York, Los Angeles e S. Francisco (tecnica back propagation, controlla 10 valige al minuto, realizzato solo con prodotti commerciali).

  35. Guida autonoma di veicoli

More Related