Introduzione alle Reti Neurali

Documenti analoghi
Introduzione agli Algoritmi Genetici ed alle Reti Neurali

Intelligenza Artificiale. Soft Computing: Reti Neurali Generalità

Il dilemma dell I.A.

Reti Neurali in Generale

Reti Neurali. Corso di AA, anno 2016/17, Padova. Fabio Aiolli. 2 Novembre Fabio Aiolli Reti Neurali 2 Novembre / 14. unipd_logo.

Lezione introduttiva su reti neurali e SVM Veronica Piccialli. Corso di Ottimizzazione a.a (seconda parte)

Otacon22 HgComo. Reti neurali artificiali

INTRODUZIONE AI SISTEMI DI CLASSIFICAZIONE

Tecniche di riconoscimento statistico

Apprendimento automatico e Reti Neurali. Francesco Sambo tel

Sistemi Neurali Artificiali applicati alla Robotica e alla BioRobotica

Introduzione: informatica. 18/2/2013 Informatica applicata alla comunicazione multimediale Cristina Bosco

L intelligenza artificiale

nuove prestazioni ottenibili: tempo reale in problemi complessi, autoapprendimento, resistenza a guasti ed errori, degradazione graduale

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

Teoria e Tecniche del Riconoscimento Reti neurali

Intelligenza Artificiale. Introduzione alle Reti Neurali

Esempi di applicazioni di reti neurali

Boltzmann Machine e Deep NN

Conoscenza e simulazione mentale

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

Modelli generativi per sequenze: Recurrent Temporal Restricted Boltzmann Machines

Progetto di Contatori sincroni. Mariagiovanna Sami Corso di reti Logiche 8 Anno

PALLAVOLO SPORT DI SITUAZIONE. Sport di situazione: richiede capacità di adattamento a situazioni che si modificano rapidamente e continuamente.

Riconoscimento e recupero dell informazione per bioinformatica

i Giorgio Buttazzo Scuola Superiore Sant Anna - Pisa

Introduzione al Calcolo Scientifico

Le aree dell informatica

RISOLUZIONE DI SISTEMI LINEARI

Reti Neurali Artificiali

Intelligenza Artificiale. Clustering. Francesco Uliana. 14 gennaio 2011

Feedback. Come si collega il cervello con le percezioni e con l esecuzione motoria?

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Storia delle reti neurali artificiali

Intelligenza collettiva Swarm intelligence

APPUNTI PER IL CORSO DI ALFABETIZZAZIONE INFORMATICA

Sistemi e modelli. Sistemi

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Atkinson e Shiffrin cercarono di unificare le nuove conoscenze sulla memoria in un unico modello multimodale.

Intelligenza Artificiale. Reti Neurali

Cosa è l Informatica?

Apprendimento Automatico (Feature Selection e Kernel Learning)

RETI DI CALCOLATORI II

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

Struttura hw del computer

Elaborazione SENSORIALE

Laboratorio software. A.A C. Brandolese

Le aree dell informatica

Informatica. 80 ore divise in 4 UFC. Docente: Michela Bacchin. Contatti: Tramite Ermes Studenti

Corso di Linguaggi di Programmazione + Laboratorio

LEZIONE 2 Il processore e la memoria centrale

Reti Neurali in Generale

I dispositivi di input/output

Intelligenza Artificiale. Lezione 6bis. Sommario. Problemi di soddisfacimento di vincoli: CSP. Vincoli CSP RN 3.8, 4.3, 4.5.

Analizzatore lessicale o scanner. Lo scanner rappresenta un'interfaccia fra il programma sorgente e l'analizzatore sintattico o parser.

Apprendimento Automatico (Lezione 1)

Apprendimento e sviluppo

Architettura hardware

Corso di Informatica

Reti neurali artificiali e analisi dei dati per la ricerca sociale: un nuovo paradigma?

Prerequisiti didattici

Introduzione all Automatica. Automatica ROMA TRE Stefano Panzieri- 1

Come sviluppare accurati modelli di previsione della domanda

Lo sviluppo neurale e la plasticità

Reti Neurali. F. Sciarrone Dicembre2005. Seminari di Sistemi Informatici

Componenti e connessioni. Capitolo 3

Algoritmo di Branch & Bound

Classe III specializzazione elettronica. Sistemi automatici

IL PROCESSO di PROGETTAZIONE

Teoria dell Informazione

Un Software per il potenziamento delle abilità di lettura e scrittura

Valutazioni preliminari all acquisto di un computer

Principali differenze tra sinapsi neuromuscolare e sinapsi centrali

Esperienze di Apprendimento Automatico per il corso di Intelligenza Artificiale

Serie storiche Mario Guarracino Laboratorio di Sistemi Informativi Aziendali a.a. 2006/2007

Informatica Generale 06 - Introduzione ai Sistemi Operativi

Sistemi di regolazione, monitoraggio e controllo degli impianti di climatizzazione in edifici complessi e/o distretti energetici

Programmazione modulare

Corso di Matematica per la Chimica

Massimo Brescia Machine Learning Parte I

Esame di INFORMATICA Lezione 4

Intelligenza artificiale

Modelli matematici e Data Mining

Il controllo posturale: il problema della stabilità

Una breve introduzione alla simulazione numerica nei circuiti con PSpice + qualche esempio...

Lezioni di Ricerca Operativa

Analisi e specifica dei requisiti

Intelligenza Artificiale A (lezione introduttiva parte di teoria)

I.I.S. N. PELLATI Nizza Monferrato - Canelli

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

INGEGNERIA E TECNOLOGIE DEI SISTEMI DI CONTROLLO Calcolo di funzioni non lineari

UD1. L informatica nell era di Matrix

SCUOLA SECONDARIA DI I GRADO ALIGHIERI - TANZI MOLA DI BARI ANNO SCOLASTICO 2011/1012

Introduzione all Intelligenza Artificiale

Monitorare gli apprendimenti in matematica PROVE PER LA SCUOLA PRIMARIA. Beatrice Caponi. CTI Valmont Montebelluna, 3 settembre 2015

Flip-flop e loro applicazioni

Università Politecnica delle Marche - Facoltà di Ingegneria Ing. Informatica e Automatica - Ing. Logistica e Produzione

Benvenuti al CodeWeek 2015!

Dimensioni delle sensazioni

Marketing - Corso progredito Consumer Behavior

Transcript:

Introduzione alle Reti Neurali Maurizio Palesi Introduzione alle Reti Neurali 1

Applicazioni dell I.A. n Giochi di strategia è Scacchi, dama, otello n Comprensione del parlato è Analisi sintattica e semantica n Risoluzione di teoremi è Dimostrazioni automatiche n Sistemi esperti è Diagnosi mediche, previsioni Introduzione alle Reti Neurali 2

Ricerca della Soluzione n Si basa su l esplorazione di vaste strutture dati organizzate ad albero n Dopo 10 passi ci sono circa 60.000 nodi da esplorare n Dopo 20 passi ce ne sono circa 3 miliardi e mezzo Introduzione alle Reti Neurali 3

Gli Scacchi n Ogni posizione ammette in media 20 mosse legali n Lo spazio di ricerca è immenso (10 120 ) n Potenza attuale dei computer è 10 8-10 9 posizioni/sec n Ricerca esaustiva è 10 111 s (U 10 17 s) è 10 94 U Introduzione alle Reti Neurali 4

Deep Blue vs. Kasparov n Tuttavia i calcolatori sono più efficienti dell uomo nelle ricerche su grosse strutture dati Deep Blue: 2 10 8 posiz /sec Kasparov: 3 posiz /sec 11 Maggio 1997 ore 19:00 GMT Deep Blue batte Kasparov 3.5 a 2.5 Introduzione alle Reti Neurali 5

Il Dilemma dell I.A. n I computer sono eccellenti nel calcolo, ma falliscono quando si cerca di riprodurre attività tipicamente umane è Percezione sensoriale è Coordinamento senso-motorio è Riconoscimento di immagini è Capacità di adattamento Introduzione alle Reti Neurali 6

Bambino batte Computer 3 a 0 n 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 Introduzione alle Reti Neurali 7

Problema n Le azioni complesse dipendono da molti fattori, che non possono essere previsti esattamente in un programma n Tali fattori devono essere acquisiti con l esperienza, in una fase di apprendimento Introduzione alle Reti Neurali 8

Esempi n Afferraggio di un oggetto è determinato da numerosi fattori è La posizione dell'oggetto è La nostra postura è La dimensione e la forma dell'oggetto è Il peso previsto è Gli eventuali ostacoli interposti Introduzione alle Reti Neurali 9

Riconoscimento del Parlato n Richiede una fase di apprendimento necessaria per è Adattarsi al soggetto che parla è Filtrare i rumori esterni è Separare eventuali altre voci Introduzione alle Reti Neurali 10

Riconoscimento delle Immagini Introduzione alle Reti Neurali 11

L Approccio Neuronale n 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 è Medici ü Studi sul cervello è Ingegneri ü Risoluzioni di problemi Introduzione alle Reti Neurali 12

Come Funziona il Cervello? n Quando riconosciamo un volto o afferriamo un oggetto non risolviamo equazioni n Il cervello lavora in modo associativo è Ogni stato sensoriale evoca uno stato cerebrale che viene memorizzato a seconda delle necessità Introduzione alle Reti Neurali 13

Colpire una Palla da Tennis n La traiettoria dipende da diversi fattori è Forza di lancio, angolazione iniziale, effetto, velocità del vento n La previsione della traiettoria richiede è La misurazione precisa delle variabili è La soluzione simultanea di equazioni complesse, da ricalcolare ad ogni acquisizione dei dati Come fa un giocatore a fare tutto questo? Introduzione alle Reti Neurali 14

Fase di Apprendimento n In una fase di apprendimento si provano le azioni e si memorizzano quelle buone è Se la palla è passata in questa zona del campo visivo, fai un passo indietro; è Se la palla Introduzione alle Reti Neurali 15

Fase Operativa n Una volta allenati, il cervello esegue le azioni senza pensare, sulla base delle associazioni apprese è Un meccanismo simile è usato da chi suona o da chi guida Introduzione alle Reti Neurali 16

Il Calcolo Associativo n Un insieme di equazioni complesse vengono risolte mediante una look-up table n Essa è costruita in base all esperienza e viene affinata con l allenamento Stato sensoriale Azione memorizzata Introduzione alle Reti Neurali 17

Evoluzione della Ricerca n 1943, McCulloch e Pitts: nasce il primo modello neurale: il neurone binario a soglia n 1949, Hebb: dagli studi sul cervello, emerge che l apprendimento non è una proprietà dei neuroni, ma è dovuto a una modifica delle sinapsi n 1962, Rosenblatt: propone un nuovo modello di neurone capace di apprendere mediante esempi: il perceptron n 1969, Minsky e Papert: dimostrano i limiti del perceptron: crolla l entusiasmo sulle reti neurali Introduzione alle Reti Neurali 18

Evoluzione della Ricerca n 1982, Hopfield: propone un modello di rete per realizzare memorie associative n 1982, Kohonen: propone un tipo di rete autoorganizzante (mappe recettive) n 1985, Rumelhart, Hinton e Williams: formalizzano l apprendimento di reti neurali con supervisione (Back-Propagation) Introduzione alle Reti Neurali 19

Introduzione alle Reti Neurali n Il cervello è un calcolatore e come tale può essere riprodotto in una macchina n E un calcolatore che opera in parallelo, diversamente dai calcolatori tradizionali che operano in modo seriale Introduzione alle Reti Neurali 20

Neurone n Stazione elementare di elaborazione dell informazione n Trasmissione di un segnale elettrico, originato da squilibri chimici controllati tra interno ed esterno n Dendriti: molti input (da altri neuroni o recettori) n Assone: singolo, si diparte dal colle dell assone output (verso altri neuroni o effettori) Introduzione alle Reti Neurali 21

Le Reti Neurali n Se il neurone biologico consente l intelligenza, perché non dovrebbe consentire l intelligenza artificiale un neurone sintetico?... a neural network is 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. Neural network architectures are inspired by the architecture of biological nervous systems, which use many simple processing elements operating in parallel to obtain high computation rates. (DARPA, 1988) Introduzione alle Reti Neurali 22

A Cosa Servono? n Le reti neurali offrono i seguenti specifici vantaggi nell elaborazione dell informazione è Apprendimento basato su esempi (non è richiesta l elaborazione di un modello aderente alla realtà) è Autoorganizzazione dell informazione nella rete è Robustezza ai guasti (codifica ridondante dell informazione) è Funzionamento in tempo reale (realizzazione HW) Introduzione alle Reti Neurali 23

Cosa sono le Reti Neurali Artificiali? n Le reti neurali sono algoritmi non lineari per l approssimazione di soluzioni di problemi dei quali non esiste un modello preciso, mediante l utilizzo di esempi oppure per classificazioni n Sono un capitolo importante negli argomenti di intelligenza artificiale n Da un altro punto di vista possono essere utilizzate per lo studio delle reti neurali naturali, ovvero dei processi cognitivi Introduzione alle Reti Neurali 24

Computer Seriale (1/2) n Processore molto veloce (10 6 operazioni al secondo) n Tre tipi di memoria è Memoria che contiene le istruzioni è Memoria temporanea per i dati è Memoria permanente n Programma: istruzioni organizzate in modo gerarchico e tabelle di consultazione n L informazione viene elaborata sequenzialmente utilizzando regole e conoscenze predefinite Introduzione alle Reti Neurali 25

Computer Seriale (2/2) n Molto rapido ed efficiente in particolare in compiti difficili per gli esseri umani è Calcoli complessi, rotazioni di immagini tridimensionali, memorizzazione di grandi quantità di dati è che possiedono una soluzione analitica n Inefficienti in compiti facili da risolvere per gli esseri umani è Ttrasformazioni sensorimotorie, riconoscimento visivo Introduzione alle Reti Neurali 26

Cervello n 10 11 neuroni che comunicano in media con 10 4 altri neuroni n Ciascun neurone è un elemento di elaborazione che emette una risposta in funzione del segnale globale in ingresso e della propria soglia di attivazione n Non esiste una distinzione tra elementi di elaborazione e sistemi di immagazzinamento dell informazione n Le conoscenze sono incorporate nelle connessioni (sinapsi) Introduzione alle Reti Neurali 27

Cervello: Il Problema della Codifica n I neuroni sono cellule molto ramificate che ricevono ed inviano segnali elettro-chimici n La frequenza di scarica costituisce il codice fondamentale utilizzato nel cervello per rappresentare l informazione n Esempio è La frequenza di scarica di un neurone sensoriale primario codifica l intensità dello stimolo ed è proporzionale alla interpretazione percettiva dello stimolo Introduzione alle Reti Neurali 28

Concetto di Connessione n Il cervello è formato da tantissimi processori, le cui connessioni possono modificarsi nel tempo n Le connessioni sono è Hardware: entità fisiche è Software: si modificano Introduzione alle Reti Neurali 29

Differenze Cruciali n Cervello è Elaborazione in parallelo è Elaborazione distribuita: molti neuroni sono coinvolti nella stessa operazione è Accesso alle conoscenze per contenuto è Apprendimento: modifica delle connessioni sinaptiche è Codifica sub-simbolica n Calcolatore tradizionale è Elaborazione seriale è Accesso alle conoscenze per indirizzamento è Richiedono programmi che contengano tutte le istruzioni necessarie a risolvere un compito è Codifica simbolica è Manipolazione di simboli Introduzione alle Reti Neurali 30

Modelli Connessionistici n Non esiste una definizione formale, generale dei modelli connessionistici n Generalmente definiti come modelli computazionali accumunati dall ispirazione neurale, ad elaborazione distribuita in parallelo è Noti come reti neurali artificiali o, più semplicemente, reti neurali Introduzione alle Reti Neurali 31

Le Reti Neurali n Che cosa sono le Reti Neurali? è Sono sistemi di elaborazione composti da unità di calcolo (nodi, processori) operanti in parallelo, collegati da connessioni (pesi) attraverso cui viene trasferita l informazione è Ogni unità può ricevere e inviare informazione ad una o più unità contemporaneamente, l informazione quindi è distribuita nel sistema Introduzione alle Reti Neurali 32

Il Neurone Artificiale input 1 Modello di McCulloch-Pitts w 1 input 2 w 2 output w n µ input n Introduzione alle Reti Neurali 33

Critiche al Modello di McCulloch-Pitts n I neuroni reali non possono essere ridotti ad un dipositivo a soglia n Lo spike ha la sua forma continua che ha una durata di qualche millisecondo n Il tempo di propagazione lungo i dendriti non viene considerato n Gli input non sono sincroni n Le interazioni tra input non sono lineari n I pesi sono supposti costanti Introduzione alle Reti Neurali 34

Il Perceptrone (Rosemblatt, 1962) input 1 w 1 input 2 w 2 A(x) output w n µ input n 1.0 0.5 0.0 µ Introduzione alle Reti Neurali 35

Le Reti di Perceptroni i 1 A 1 o 1 i 2 i 3 A 2 o 2 n L apprendimento è la modifica dei parametri in funzione dei parametri di input/ output Introduzione alle Reti Neurali 36

Le Reti di Perceptroni Ingressi Pattern di allenamento Uscita attesa i 1 A 1 o 1 i 2 i 3 A 2 o 2 Correzione dei pesi e dei parametri delle funzioni di attivazione Introduzione alle Reti Neurali 37

Addestramento Introduzione alle Reti Neurali 38

I Vari Tipi di Apprendimento n Supervisionato (learning with a teacher) è Viene specificato per ogni pattern di input, il pattern desiderato in input n Non-supervisionato (learning without a teacher) è I neuroni verranno associati a pattern di ingresso contigui è Clustering è Mappe neurali Introduzione alle Reti Neurali 39

Apprendimento Supervisionato n Obiettivo: se esiste una soluzione, trovare ΔW in modo iterativo tale che l insieme dei pesi ΔW nuovo ottenuto come W nuovo = W vecchio + ΔW nuovo dia luogo a un errore sulle uscite minore di W vecchio n E un problema di ottimizzazione Introduzione alle Reti Neurali 40

Problemi nell Apprendimento Supervisionato n W iniziale è generalmente casuale e può condizionare la convergenza degli algoritmi iterativi n I problemi di convergenza sono legati all esistenza di minimi locali della funzione di errore Introduzione alle Reti Neurali 41

Classificazione n Un perceptron può essere addestrato a riconoscere se un pattern d'ingresso X appartenga o no ad una classe C Introduzione alle Reti Neurali 42

Riconoscitore di Caratteri Introduzione alle Reti Neurali 43

Limiti del Perceptrone n Per apprendere una classificazione, il problema deve essere linearmente separabile è I pattern appartenenti alla classe C devono essere contenuti in un semipiano dello spazio d ingresso n Con n ingressi, lo spazio d ingresso diventa n-dimensionale e i pattern vengono separati da un iperpiano Introduzione alle Reti Neurali 44

Funzioni Linearmente Separabili n Le reti di perceptroni sono efficaci soltanto se gli insiemi da classificare sono linearmente separabili in 2 in 2 in 1 Linearmente separabile in 1 Non linearmente separabile (non è possibile determinare una retta che separi i due insiemi) Introduzione alle Reti Neurali 45

Reti Multistrato n Tutti i neuroni di uno strato sono connessi con tutti i neuroni dello strato successivo n Non esistono connessioni tra neuroni dello stesso strato Strato di uscita Strato nascosto Strato di ingresso Introduzione alle Reti Neurali 46

Reti a 3 Strati n Sono in grado di separare regioni convesse numero di lati numero neuroni nascosti Introduzione alle Reti Neurali 47

Reti a 3 Strati n Sono in grado di separare regioni convesse numero di lati numero neuroni nascosti Introduzione alle Reti Neurali 48

Reti a 3 Strati n Sono in grado di separare regioni convesse numero di lati numero neuroni nascosti Introduzione alle Reti Neurali 49

Reti a 4 Strati n Sono in gradi di separare regioni qualsiasi Introduzione alle Reti Neurali 50

Reti a 4 Strati n L aggiunta di altri strati non migliora la capacità di classificazione Introduzione alle Reti Neurali 51

Implicazioni n Per effettuare classificazioni complesse, i neuroni devono essere non lineari ed essere organizzati su più strati n Problemi è Come si addestra una rete multistrato? è Qual è l uscita desiderata dei neuroni nascosti? Introduzione alle Reti Neurali 52

Back Propagation n Rumelhart-Hinton-Williams, 85 n Apprendimento è Insegnare alla rete un insieme di associazioni desiderate (training set) n Convergenza è Ridurre l errore globale E al variare dei pesi, in modo che E < ε n Generalizzazione è Far si che la rete si comporti bene su esempi mai visti Introduzione alle Reti Neurali 53

Convergenza n Per ridurre l errore al variare dei pesi, si adotta la seguente strategia Introduzione alle Reti Neurali 54

Aggiornamento dei Pesi n Dunque i pesi sono variati in base alla seguente legge Δw ij = η E w ij Regola del gradiente η: coefficiente di apprendimento (learning rate) Introduzione alle Reti Neurali 55

Reti Neurali MLP 14.0 12.0 10.0 Error Surface Local Minima 8.0 Error 6.0 4.0 2.0 w 0 w * Global Minima Weight Space 0.0-3.000 W2-2.000-1.000 0.000 1.000 2.000 3.000 4.000 5.000 6.000 6.000 5.000 4.000 3.000 2.000 1.000 0.000-1.000-2.000-3.000 W1 Introduzione alle Reti Neurali 56

Generalizzazione n E la capacità della rete di riconoscere stimoli leggermente diversi da quelli con cui è stata addestrata n Per valutare la capacità della rete di generalizzare gli esempi del TS, si definisce un altro insieme di esempi, detto Validation Set (VS) n Terminato l apprendimento sul TS (E TS < ε), si valuta l errore sul VS (E VS ) Introduzione alle Reti Neurali 57

Evaluation Overfitting n Quando il modello è valido? è Rischio di Overfitting: ü Sovrastima sui dati di training: il modello si comporta molto bene sui dati di training solo perchè è diventato troppo specifico Error Test Training Cycle Tipicamente procedendo nel training Errore su dati training continua a diminuire. Error su dati di test prima diminuisce e poi cresce Soluzione: fermarsi nel training quando l errore nell insieme di test inizia a crescere Introduzione alle Reti Neurali 58

Generalizzazione n Il numero di parametri da regolare dipende dal numero di neuroni nascosti della rete n Pochi neuroni nascosti potrebbero non essere sufficienti a ridurre l errore globale Introduzione alle Reti Neurali 59

Generalizzazione n Troppi neuroni nascosti potrebbero fossilizzare eccessivamente la rete sugli esempi specifici del TS n La rete risponderebbe bene sul TS, ma l errore sarebbe elevato su altri esempi (overtraining) Introduzione alle Reti Neurali 60

Generalizzazione n Per migliorare la capacità di generalizzazione si può addestrare la rete sul TS, monitorare l errore sul VS (E VS ) e fermare l apprendimento quando E VS < ε VS Introduzione alle Reti Neurali 61

Generalizzazione Introduzione alle Reti Neurali 62