Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

20

Transcript of Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Page 1: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)
Page 2: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Cervello

+ Algoritmo+ Mente

Processore

Hardware

Software

+

=

Applicazione(task)

Page 3: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Cervelloumano

Elaboratoreelettronico

1 evento / ms per neurone 1 milione eventi / ms

100 miliardi di neuroni ognuno dei quali comunica con altri diecimila neuroni

Rapido nell’eseguire operazioni logico matematiche,inefficiente nei problemi della vita quotidiana (es: pattern recognition, decisioni)

elaborazione serialeelaborazione parallela distribuita

programmato per svolgere un compito precisoimpara dagli sbagli

Rapido nelle logica sfumata, processi decisionali, riconoscimento forme

le informazioni vengono memorizzate e/o rappresentate nelle connessioni (pattern e forza)

le informazioni vengono memorizzate e/o rappresentate cambiando lo stato binario di precise locazioni

uno o pochi processori per elaboratore

Page 4: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Uomo Computer

elaborazioni o procedure automatiche

memorizzazione

recupero informazioni

ragionamento simbolico

percezione

modellazione ed estrazione della conoscenza

autoapprendimento

Page 5: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Per un computer è difficile riconoscere gli oggetti presenti in un’immagine perchèa partire dai contorni dovuti alle variazioni di luminosità, non riesce a raggrupparli per definire gli oggettiQuesto processo, detto di segmentazione, è molto difficile da realizzare per un sistema puramente automatico perchè necessita della conoscenza a priori riguardo agli oggetti.

Page 6: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Per riprodurre le nostre capacità dovremmo formulare e formalizzare le regole per prendere decisioni…che ci portano per esempio a riconoscere le immagini.

Pur conoscendo le regole, queste potrebbero non essere facilmente formalizzabili quindi è difficile costruire un classificatore.

L'ideale sarebbe poter costruire un classificatore che deduca le regole in un processo di apprendimentoEcco perché non esistono sistemi di guida automatica

Page 7: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Riconoscimento vocale

Page 8: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Le reti neurali artificiali: un modo di implementare l’intelligenza artificiale

L'obiettivo dell'intelligenza artificiale è quello di emulare processi che, quando fatti da umani, richiedono cognizione.Ma come fare?

Ci si è accorti che unendo tra loro più unità di elaborazione, ovveroimitano la struttura e la topologia del cervello umano, si poteva imitarneil funzionamento, ovvero nascevano delle proprietà emergenti.

Una proprietà o un comportamento esibiti da un sistema complesso si dicono emergenti quando sono inspiegabili sulla base delle leggi che spiegano il comportamento dei singoli elementi che costituiscono il sistema.Esse scaturiscono da interazioni non-lineari tra le componenti stesse. La proprietà stessa non è predicibile e non ha precedenti, rappresenta un nuovo livello di evoluzione del sistema.

Queste sono riscontrabili in sistemi di organismi viventi, di individui sociali, nei sistemi economici, nella fisica delle particelle...

La coscienza, l’autoorganizzazione, il comportamento di una colonia di formiche, Internet… sono esempi di proprietà emergenti. Dallo studio delle proprietà emergenti si possono ottenere utili informazioni per il controllo delle epidemie, delle metastasi tumorali, per predire gli andamenti del mercato azionario, del comportamento dei gruppi di individui…

Il processo di formazione di schemi complessi a partire da regole più semplici può anche essere simulato. Game Of Life, di Horton Conway, è un automa cellulare in cui stabilendo poche semplici regole per pochi individui di base, possono emergere evoluzioni complesse.

Page 9: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Sistemi dotati di proprietà cognitive vengono studiati nell’ambito dell’intelligenza artificiale. Per questi studi vengono usati algoritmi la cui classe principale è costituita dalle reti neurali artificiali.

Le reti neurali artificiali imitano la struttura e la topologia del cervello umano per imitarne il funzionamento. Una rete neurale è strutturalmente un insieme di elementi, detti neuroni artificiali, interconnessi tra loro

Page 10: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Il neurone artificiale

w1

w2

w3

wn

x1

x2

x3

xn

b

biasweightsinputs

f

non linearfunction

)(1

bfyn

iii xw

assoni sinapsi

dendritiassone

corpo

u

P

UNITÀ LINEARE

u

1

Soglia P

UNITÀ A SOGLIA

Questa struttura è già in grado di simulare un processo decisionale

Page 11: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

strato di neuroni di ingresso

strato di neuroni nascosto o intermedio

strato di neuroni di uscita

uscite

Similitudine tra una rete neurale biologica e una artificiale

Struttura di una rete neurale

nodi

Page 12: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Apprendimento

Implementare una rete neurale significa stabilire la sua struttura: numero degli strati, numero dei neuroni per ciascun strato, topologia delle connessioni, condizioni iniziali, tipo di funzioni matematiche implementate dai neuroni di ciascun strato, metodo di apprendimento e verifica

La rete appena implementata non sa fare nulla

Prima di essere operativa deve apprendere, questo avviene mediante la somministrazione di esempi di correlazioni ingresso-uscita

L’apprendimento consiste nella modifica dei pesi associati ad ogni connessione e nella modifica del bias di ciascun neurone, quest’ultimo stabilisce il punto di lavoro del neurone nella propria funzione non lineare

La verifica dell’apprendimento avviene mediante la somministrazione di ingressi (stimoli) che la rete non aveva mai visto in fase di apprendimento e di cui noi ci aspettiamo uscite (risposte o reazioni) precise.

Page 13: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Problemi di apprendimento

Può accadere che dopo l’apprendimento le prestazioni non siano soddisfacenti, perché?

Troppi pochi esempi in fase di addestramento

Esempi polarizzati (distribuzione non uniforme dei casi)

Esempi contraddittori

Topologia e complessità della rete non adeguati al problema

Ripetere l’apprendimento con diverse condizioni iniziali

Non sono state raggiunte le prestazioni migliori a causa della funzione di addestramento non adeguata

Page 14: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Vantaggi dell’utilizzo delle reti neurali:

Capacità di riprodurre (o modellare) qualsiasi comportamento non lineare di un sistema

Capacità di apprendere e costruire una conoscenza da esempi o dati di esperimenti

ingresso Sistema da studiare

uscita

Capacità di classificare dati apparentemente non raggruppabili

usci

ta

ingresso

.... . .

..

.....

..usci

ta

ingresso

... . .

.

.....

.

var 1

var

2Interpolare e predire

stimolo

reaz

ione

stimolo 1 stim

olo

2reaz

ione

Page 15: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Altre caratteristiche

Risoluzione di problemi complessi e non lineari

Problemi per cui non si conoscono le relazioni ingresso-uscita ma si hanno a disposizione solo dei casi

Capacità di memorizzare

Risposta continua ad esclusione di un numero finito di discontinuità ad input simili la rete risponde con output simili

Tolleranza agli errori scostamenti non significativi dei valori di input vengono assorbiti dalla rete, diminuendo così il rumore statistico e risultando tolleranti agli errori o al decadimento del segnale

Tolleranza ai guasti La presenza di molte unità di processamento parallele fa si che l'eventuale perdita di un unità ha, nel caso di architetture con molti neuroni, conseguenze non irreparabili

Page 16: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Ai fini dell’apprendimento dobbiamo fornire alla rete neurale tanti più esempi quanto più fortemente non lineare è il sistema da modellare.

Non sappiamo a priori quale sia la miglior topologia (numero di nodi, di strati, collegamenti fra nodi e tipo di funzioni che devono implementare i nodi di ciascun strato) da assegnare alla rete neurale affinché modellizzi al meglio il nostro sistema.

Svantaggi dell’utilizzo delle reti neurali:

ingresso uscita

?

Una volta che la rete funziona, non sappiamo nulla del suo modello interno, in altre parole non fornisce spiegazioni sul funzionamento del sistema che stiamo studiando. La rete è per noi una scatola nera. I problemi non vengono capiti ma risolti.

Page 17: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Applicazioni

Compressione dei dati (non secondo una codifica o una corrispondenza esatta)Eliminazione del rumore dai dati o dai segnaliRiconoscimento segnali sonarMacchina da scrivere fonetica (dettatura dei testi al computer)Riconoscimento di caratteri (attribuire un significato ad una forma)Sistemi di guida automatica (sistemi missilistici, robot microspia)Classificazione di immagini (gli stessi oggetti cambiano colore, luminosità, tessitura a

causa delle ombre, dell’illuminazione, della verniciatura…)Analisi finanziarie (previsioni)Medicina (migliorare le diagnosi)

Page 18: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)
Page 19: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Il presente: la ricerca in questo campo è particolarmente attiva

IEEE Transaction on RoboticsIEEE Transaction on Fuzzy SystemsIEEE Transaction on Neural NetworksIEEE Transaction on Image processingIEEE Transaction on NanoBioscienceIEEE Transaction on NanoTechnologyIEEE Transaction on Robotics and AutomationIEEE Transaction on Evolutionary ComputationIEEE Transaction on Systems, Man and CyberneticsIEEE Transaction on Parallel and Distribuited SystemsIEEE Transaction on Pattern Analysis and Machine IntelligenceIEEE Transaction on Neural Systems and Rehabilitation Engineering

Page 20: Cervello + Algoritmo + Mente Processore Hardware Software + = Applicazione (task)

Il futuro ?

Speriamo che acquistino autocoscienza il più tardi possibile.