Cenni di intelligenza artificiale - Dipartimento di Ingegneria dell
by user
Comments
Transcript
Cenni di intelligenza artificiale - Dipartimento di Ingegneria dell
Definizione L’ intelligenza artificiale è una disciplina che si occupa del comportamento intelligente in sistemi artificiali Cenni di intelligenza artificiale – ragionamento – apprendimento – comunicazione – azione in ambienti complessi Intelligenza Artificiale Il ragionamento e in generale ogni tipo di attività della mente è un calcolo affermazione forte: un computer correttamente programmato può essere veramente dotato di una intelligenza pura, non distinguibile in nessun senso dall’intelligenza umana affermazione debole: un computer non sarà mai in grado di essere equivalente a una mente umana ma potrà solo arrivare a simulare alcuni processi cognitivi senza riuscire a riprodurli nella loro totale complessità Cenni di intelligenza artificiale 2 Fondamenti teorici della A.I. Affermazioni sull’AI Intelligenza Artificiale Cenni di intelligenza artificiale 3 Il calcolo è inteso come manipolazione di simboli in base a regole prestabilite Il simbolo, o rappresentazione, è un oggetto che sta per o raffigura un altro oggetto Può esistere un manipolatore automatico di simboli Intelligenza Artificiale Può pensare una macchina? Cenni di intelligenza artificiale 4 Test di Touring “Può Può” Può Quando? Ora o in un futuro imprecisato? In principio o in pratica? “Macchina Macchina” Macchina In senso astratto? Ci riferiamo ad un processo automatizzato (meccanico, elettronico, biologico, chimico, simbolico)? “Pensare” “Pensare Alan Turing (1912-1954), uno dei padri della moderna informatica e colui il quale ha definito formalmente il concetto di macchina calcolatrice e di computazione, ha dato inizio ad una serie di studi volti a rispondere a tale domanda Intelligenza Artificiale Cenni di intelligenza artificiale 5 Intelligenza Artificiale Cenni di intelligenza artificiale 6 1 ...alcune domande... ELIZA 1. Sei un computer? Persona: Mia moglie mi dice che sono sempre depresso 2. Che ore sono? ELIZA: Mi spiace sentire dire che tu sia depresso 3. Quando fu assassinato in presidente Kennedy 4. Quanto fa 2276448 × 7896 5. Può il bianco vincere una mossa partendo da questa posizione degli scacchi ..? 6. Descrivimi i tuoi genitori Persona: Bene, forse parlando con te troverò il perchè odio mio fratello 7. Come ti fa sentire la lettura di questa poesia? ELIZA: Dimmi qualcosa della tua famiglia 8. Cosa pensi di Charles Dickens? 9. Quale è la tua opinione nei confronti degli armamenti militari, alla luce del fatto che milioni di persone muoiono di fame? Intelligenza Artificiale Cenni di intelligenza artificiale Persona: La verità è che sono un po’ infelice 7 …versione estesa… ELIZA: Pensi che venire qui ti faccia senire un po’ meno infelice? Intelligenza Artificiale Cenni di intelligenza artificiale 8 Il gioco è forma di intelligenza? Versione estesa: Interazione attraverso telecamere (visione artificiale) Possibilità di scambiare oggetti (arti robotici) Il gioco degli undici: Situazione iniziale: 11 stecchini su un tavolo Capacità richieste per superare il test: elaborazione linguaggio naturale rappresentazione della conoscenza ragionamento automatico apprendimento automatico visione artificiale e robotica Intelligenza Artificiale Cenni di intelligenza artificiale Obiettivo: non prendere l’ultimo stecchino Regole: due giocatori si alternano nel prendere un numero x di stecchini t.c. 1 ≤ x ≤3 9 ...strategia... Intelligenza Artificiale Cenni di intelligenza artificiale Il gioco è forma di intelligenza? Macchina: leva 2 stecchini Il gioco della Torre di Hanoi: Mario: leva x stecchini, 1 ≤ x ≤3 Situazione iniziale: 20 dischi di ampiezza decrescente impilati in ordine crescente dall’alto verso il basso nel primo dei tre paletti disponibili (diciamo X) Macchina: leva 4-x stecchini Mario: leva x stecchini, 1 ≤ x ≤3 Obiettivo: trasportare tutti i dischi rispettando l’impilamento nell’ultimo paletto (diciamo Y) Macchina: leva 4-x stecchini Mario: leva ultimo stecchino Regole: il giocatore può spostare solo un disco alla volta e potendo mettere un disco solo su un altro disco più grande e mai su uno più piccolo Strategia ampliabile: 4*i+3 se inizia Macchina 4*i+1 se inizia Mario Intelligenza Artificiale 10 Cenni di intelligenza artificiale 11 Intelligenza Artificiale Cenni di intelligenza artificiale 12 2 ...strategia... Il gioco è forma di intelligenza? Muovi (n,X,Y,Z) Se n = 1 spostare il disco da X a Y altrimenti Il gioco del Tic-Tac-Toe: Muovi(n-1,X,Z,Y) Situazione iniziale: una matrice 3 ×3 sposta il disco da X a Y Obiettivo: porre tre oggetti uguali su una stessa riga o colonna o diagonale Muovi(n-1,Z,Y,X) Regole: due giocatori si alternano nel prendere piazzare il proprio simbolo in una delle posizioni libere nella matrice Intelligenza Artificiale Cenni di intelligenza artificiale 13 Intelligenza Artificiale 1. Nodo di partenza 2. Operatori che trasformano la descrizione di uno stato dell’ambiente in quella dello stato risultante dopo un’azione 3. Condizione obiettivo Non esiste una strategia vincente Cenni di intelligenza artificiale 14 Grafi dello spazio degli stati ...strategia... Intelligenza Artificiale Cenni di intelligenza artificiale 15 Intelligenza Artificiale Esempio Cenni di intelligenza artificiale 16 Ricerca in ampiezza Definizione: procedura che genera un grafo dello spazio degli stati esplicito applicando tutti gli operatori possibili al nodo di partenza, applicando quindi tutti gli operatori possibili a tutti I diretti successori del nodo di partenzam poi ai loro successori, etc. Intelligenza Artificiale Cenni di intelligenza artificiale 17 Intelligenza Artificiale Cenni di intelligenza artificiale 18 3 Esempio Ricerca in profondità Definizione: procedura che genera un grafo dello spazio degli stati generando I successori di un nodo uno alla volta applicando operatori individuali in un ordine prestabilito. In corrispondenza di ogni nodo sono indicati gli ulteriori operatori che possono essere successivamente applicati, se necessario. Generato un successore, viene generato uno dei suoi successori e così via fino al raggiungimento di un limite di profondità. Intelligenza Artificiale Cenni di intelligenza artificiale 19 Intelligenza Artificiale Esempio Intelligenza Artificiale Cenni di intelligenza artificiale 20 Esempio Cenni di intelligenza artificiale 21 Intelligenza Artificiale Ricerca euristica Cenni di intelligenza artificiale 22 Esempio Definizione: procedura di ricerca che procede attraverso i nodi che risultano essere i migliori per il raggiungimento del nodo obiettivo in base all’informazione data da una data funzione di valutazione 1. Data f, basata su informazioni specifiche per il dominio del pb., ipotizziamo che valori piccoli indichino nodi migliori 2. Si espanda al passo successivo quel nodo n valore più piccolo 3. Si termina quando il successivo da espandere è un nodo Cenni di intelligenza artificiale obiettivo Intelligenza Artificiale t.c. f(n) ha il 23 Intelligenza Artificiale Cenni di intelligenza artificiale 24 4 Esempio Esercizi Dato il gioco del Tic-Tac-Toe: Intelligenza Artificiale Cenni di intelligenza artificiale 25 generare il grafo degli stati secondo la ricerca in ampiezza generare il grafo degli stati secondo la ricerca in profondità generare il grafo degli stati secondo la ricerca euristica Intelligenza Artificiale Algoritmo Minimax 1. Generare l’intero albero 2. Valutare ciascuno stato terminale 3. Fare risalire I valori dai nodi foglia verso la radice uno strato alla volta prendendo il minimo o il massimo in base al turno del giocatore Intelligenza Artificiale Cenni di intelligenza artificiale Cenni di intelligenza artificiale 26 Esempio 27 Intelligenza Artificiale Esempio Intelligenza Artificiale Cenni di intelligenza artificiale Cenni di intelligenza artificiale 28 Esempio 29 Intelligenza Artificiale Cenni di intelligenza artificiale 30 5 Esempio Intelligenza Artificiale Cenni di intelligenza artificiale Potatura 31 Approcci all’AI – – 32 Inicare se un blocco si trova sopra un altro operazioni logiche applicate a basi di conoscenza dichiarative :- A1_di_Sopra(A,C) Su (A,B) Sub simbolici Cenni di intelligenza artificiale Approccio simbolico: esempio Simbolici Intelligenza Artificiale Su (B,C) ispirati a modelli di evoluzione biologica A1_di_Sopra(x,y):- Su(x,y) A1_di_Sopra(x,y):- Su(x,z), A1_di_Sopra(z,y) Intelligenza Artificiale Cenni di intelligenza artificiale 33 ...continua... Intelligenza Artificiale Cenni di intelligenza artificiale 34 Approccio simbolico: esempio Torre di Hanoi Hanoi (0,X,Y,Z,[]) Hanoi (n,X,Y,Z,Moves):- Hanoi (n-1,X,Z,Y,M1) Hanoi (n-1,Z,Y,X,M2) append(M1,[move(X,Y)|M2],Moves) Intelligenza Artificiale Cenni di intelligenza artificiale 35 Intelligenza Artificiale Cenni di intelligenza artificiale 36 6 Modello di un neurone Approccio sub simbolico: esempio Elementi caratterizzanti un neurone: Il numero di canali in ingresso: Il tipo di segnali in ingresso: I pesi di ciascuna connessione: La funzione di attivazione: La funzione di uscita: Le uscite di F e f Le reti neurali basate sull’idea del neurone biologico L’apprendimento avviene grazie alle sinapsi che cambiano la forza delle connessioni nel tempo (Hebb, 1949) x1 x2 Il nostro cervello contiene 1011-1012 neuroni ciascuno dei quali ha dalle 1000 alle 10.000 connessioni con i neuroni vicini w1 w2 a F … Le sinapsi sono di due tipi: eccitatorie ed inibitorie che innalzano o abbassano il potenziale del neurone amplificando o inibendo il segnale che arriva attraverso lungo l’assone n xi wi F f a,Y Y f wn xn Intelligenza Artificiale Cenni di intelligenza artificiale 37 Intelligenza Artificiale Neurone binario a soglia 38 Altre funzioni di uscita Elementi caratterizzanti il neurone binario a soglia: Y Y Y F è la somma pesata degli input a = Σi Cenni di intelligenza artificiale f è una funzione di HeavySide (HS): 1 a wi xi θ θ a a Y = HS ( a - θ ) … x1 x2 F a f Y 1 Y Y 1 a θ θ a xn Intelligenza Artificiale Cenni di intelligenza artificiale 39 Intelligenza Artificiale Cenni di intelligenza artificiale Il Perceptron 40 Il Perceptron La soglia θ della funzione HS viene detta anche bias e spesso viene settata a 0 Caratteristiche: anche tramite l’introduzione di un ulteriore ingresso con valore costante -1 e peso θ - gli ingressi (x1,x2,…,xn) possono essere numeri interi o binari ( binario = appartenente all’insieme {0,1} ) - le uscite sono esclusivamente binarie a =Σi wi xi - la funzione a di attivazione del neurone è data dalla somma pesata degli ingressi - l’uscita è la funzione di HeavySide y = HS (a - θ ) -1 θ x1 x2 w1 w2 … - particolare modello di singolo neurone Σ a HS y wn xn Intelligenza Artificiale Cenni di intelligenza artificiale 41 Intelligenza Artificiale Cenni di intelligenza artificiale 42 7 Classi riconosciute da un perceptron …continua… In un perceptron a due ingressi abbiamo a = w1 x1 + w2 x2 x2 per cui gli elementi (patterns) riconosciuti (con uscita 1) sono quelli tali che w1 x1 + w2 x2 > θ classe riconosciuta θ /w2 x1 w1 Σ HS y Visualizzando l’insieme w1 x1 + w2 x2 - θ > 0 in un piano cartesiano con x1 sulle ascisse e x2 sulle ordinate otteniamo il semipiano w2 x2 Intelligenza Artificiale Cenni di intelligenza artificiale 43 Intelligenza Artificiale Cenni di intelligenza artificiale Esempio: AND x2 y=1 1 Σ a HS 44 …continua… θ =1.5 x1 x1 θ /w1 a (0,1) (1,1) (0,0) (1,0) y 1 y=0 x2 Intelligenza Artificiale Cenni di intelligenza artificiale 45 Intelligenza Artificiale Cenni di intelligenza artificiale Esempio: OR x2 y=1 1 Σ a HS 46 …continua… θ =0.5 x1 x1 (0,1) (1,1) (0,0) (1,0) y 1 y=0 x2 Intelligenza Artificiale Cenni di intelligenza artificiale 47 Intelligenza Artificiale Cenni di intelligenza artificiale x1 48 8 Esempio: NOT …continua… θ =-0.5 x1 -1 a Σ HS y y=1 y=0 0 Intelligenza Artificiale Cenni di intelligenza artificiale 49 x1 1 Intelligenza Artificiale Cenni di intelligenza artificiale Limiti del perceptron 50 Esempio: XOR x2 Per apprendere una classificazione, il problema deve essere tale che: - i pattern appartenenti alla classe da riconoscere devono essere contenuti in un semipiano dello spazio di ingresso (0,1) (1,1) y=1 - con n ingressi, lo spazio diventa n-dimensionale ed i pattern vengono separati da un iperpiano y=0 (0,0) Intelligenza Artificiale Cenni di intelligenza artificiale 51 (1,0) Intelligenza Artificiale Esercizi 1. y=0 Cenni di intelligenza artificiale x1 52 Soluzione 1 Dato il seguente perceptron indicare la funzione linearmente separabile implementata. Si consideri che gli ingressi possano assumere valori 0, 1. θ =1.5 x1 x2 y = x1 x2 x3 1 -1 Σ a HS y 1 x3 Intelligenza Artificiale Cenni di intelligenza artificiale 53 Intelligenza Artificiale Cenni di intelligenza artificiale 54 9 Esercizi 2. Soluzione 2 Dato un perceptron a tre ingressi con funzione di soglia avente θ = 2 indicare il peso da associare a ciascuno di essi per separare i seguenti insiemi A = {(1,2,0), (-1,3,0),(-2,-3,0)} B = {(0,1,2),(9,0,1),(-3,-3,3)} Ciò che si sta cercando è una peculiarità dei punti di A, non presente in quelli di B, che possa essere utilizzata come fattore discriminante da un perceptron. Tale peculiarità deve interessare esclusivamente i valori delle singole coordinate dei punti nei due insiemi, essendo solo queste la possibile discriminante. Soffermandoci quindi sulle coordinate dei punti di A e poi su quelle dei punti di B notiamo, ad esempio, che la terza componente dei primi è sempre nulla, mentre nei secondi non lo è mai, anzi è addirittura sempre positiva. Questo fatto suggerisce un insieme di pesi che agisca come segue: - annulli le prime due coordinate (pesi w1= 0 e w2 = 0 ) - esalti la terza coordinata tramite un peso diverso da zero e che superi per ciascuno dei i tre punti, la soglia θ = 2 (ad esempio peso w3 = 2 ) In tal modo il perceptron sui punti dell’insieme A dà come output sempre il valore 0, mentre sui punti dell’insieme B i valori 4,2,6 (tutti >= θ ) come desiderato. Intelligenza Artificiale Cenni di intelligenza artificiale 55 Intelligenza Artificiale Esercizi 3. Con un perceptron a due ingressi con pesi w1= 2 e w2 = 1 e funzione di soglia con θ = 1, riusciamo a separare i punti dell’insieme: Se e come varia tale insieme al variare del valore θ nella funzione di soglia? Cenni di intelligenza artificiale 57 Intelligenza Artificiale Esercizi classe A x1 θ /w1=½ Cenni di intelligenza artificiale 58 Nei due insiemi di punti indicati il perceptron dà come uscita i valori: insieme A : 2, 2, -4 B = {(0,1,3),(-1,0,6),(3,0,0)} Cenni di intelligenza artificiale insieme B : 3, 4, 6 Pertanto è possibile separare i due insiemi utilizzando una funzione di soglia con scalino pari al minimo del valore di uscita degli elementi dell’insieme B, cioè Intelligenza Artificiale θ /w2=1 Soluzione 4 Dato un perceptron a tre ingressi con pesi w1= 2 , w2 = 0 e w3 = 1 indicare un possibile valore di θ nella funzione di soglia affinché siano separati i due insiemi A = {(1,2,0), (1,3,0),(-2,3,0)} x2 classe B Al variare di θ l’inclinazione della retta non varierà, ma la sua posizione sì, ottenendo quindi classi separate diverse. 4. 56 Soluzione 3 Dato un perceptron a due ingressi con pesi w1= 2 e w2 = 0 e funzione di soglia con θ = 1, indicare sul piano cartesiano l’insieme di punti da lui riconosciuto. Intelligenza Artificiale Cenni di intelligenza artificiale 59 θ =3 Intelligenza Artificiale Cenni di intelligenza artificiale 60 10 Esercizi 5. Soluzione 5 Indicare un perceptron (pesi e funzione di soglia) che separa i seguenti insiemi di punti nel piano cartesiano: Una possibile retta che separi i due insiemi di punti rossi e verdi passa dai punti di coordinate (-1/2,0) e (0,1/2) cioè θ /w2= 1/2 e θ /w1= - 1/2 Da questo seguono, ad esempio, i seguenti valori θ=1 1 w2 = 2 w1 = -2 1 Intelligenza Artificiale Cenni di intelligenza artificiale 61 Intelligenza Artificiale Cenni di intelligenza artificiale Esercizi 6. Soluzione 6 x2 Dato il seguente perceptron indicare il piano di separazione da esso individuato 1 θ = -1.5 x1 x2 62 -1 -1 Σ a HS 1 y 1 -1 x1 x3 x3 x1 + x2 + x3 = 1.5 Intelligenza Artificiale Cenni di intelligenza artificiale 63 Intelligenza Artificiale Apprendimento Cenni di intelligenza artificiale 64 Cosa si apprende Definizione: un sistema apprende se è in grado di migliorare nel tempo le proprie prestazioni nella soluzione di un pb. senza essere riprogrammato. La principale classe di pb. che possono venire appresi sono quelli di classificazione → determinare le regole che permettono di discriminare un insieme di oggetti come appartenenti ad un’altra categoria Risultati da ottenere: • migliorare l’accuratezza delle soluzioni proposte • coprire uno spettro progressivamente più ampio di pb. • ridurre l’utilizzazione di risorse (ex: trovare un insieme di regole più compatto e più comprensibile) Intelligenza Artificiale Cenni di intelligenza artificiale 65 Ex: diagnosticare una malattia in base ai sintomi Intelligenza Artificiale Cenni di intelligenza artificiale 66 11 Il processo di apprendimento Il processo di apprendimento La rete opera in due fasi distinte: Fase di addestramento (training): in cui si memorizzano le informazioni desiderate 1. Apprendimento supervisionato Fase di evoluzione (testing): in cui si recuperano le informazioni memorizzate 2. Apprendimento non supervisionato 3. Apprendimento competitivo Per addestramento intendiamo la capacità della rete di modificare il comportamento in una direzione desiderata variando i pesi delle connessioni sinaptiche Intelligenza Artificiale Cenni di intelligenza artificiale 4. Apprendimento con rinforzo Intelligenza Artificiale 67 Apprendimento supervisionato Caratteristiche: 1. La rete impara a riconoscere un insieme di configurazioni di ingresso desiderate 2. È presente un supervisore che presenta gli esempi di corretti pattern ingresso-uscita 3. La rete viene addestrata con l’obiettivo di imparare gli esempi e di generalizzare da essi Rete neurale esempio 68 Apprendimento non supervisionato Caratteristiche: 1. La rete impara a riconoscere un insieme di configurazioni di ingresso desiderate (x1 , x2 , … ,xn ) Cenni di intelligenza artificiale 2. La rete crea opportuni cluster rappresentativi dei dati stessi utilizzando metodi topologici o probabilistici 3. La rete viene addestrata con l’obiettivo di imparare gli esempi e di generalizzare da essi y output della rete ∆w modifica pesi yd Learning rule output desiderato Intelligenza Artificiale Cenni di intelligenza artificiale 69 Apprendimento competitivo Alla fine ogni stimolo attiva un particolare neurone attuando un isomorfismo tra stimoli e neuroni di uscita (x1 , x2 , … ,xn ) Rete neurale esempio Cenni di intelligenza artificiale 70 Apprendimento con rinforzo Caratteristiche: 1. I neuroni competono per specializzarsi a riconoscere un determinato stimolo 2. Intelligenza Artificiale Caratteristiche: 1. Tipico di sistemi che compiono azioni composte da sotto-azioni 2. Spesso applicato nei casi in cui non è possibile specificare patterns di ingresso-uscita come per i sistemi supervisionati 3. Al sistema viene fornito solo un rinforzo che questo interpreta come segnale positivo/negativo sul suo comportamento e aggiusta i parametri di conseguenza (x1 , x2 , … ,xn ) y Rete neurale esempio output della rete y output della rete Rinforzo ∆w Critico modifica pesi Intelligenza Artificiale Cenni di intelligenza artificiale 71 Intelligenza Artificiale Cenni di intelligenza artificiale 72 12 Algoritmo di apprendimento Apprendimento supervisionato per perceptron Idea: minimizzare є = 1. Si fissa un training set di M esempi (il grassetto indica un vettore di elementi) Σ x in TS (yk - yd,k )2 TS = {( xk , yd,k): k = 1…M } Teorema di convergenza [Rosenblatt]: L’algoritmo di apprendimento per percettroni converge sempre a n insiede di pesi che rappresentano correttamente gli esempi, se questi provengono da una funzione linearmente separabili 2. Si inizializzano i pesi wk con valori casuali 3. Si presenta una coppia ( xk , yd,k) al perceptron 4. Si calcola la risposta yk del perceptron 5. Si aggiornano i pesi con una regola detta delta rule ∆w = ηδ x 6. Si ritorna al passo 3 finché tutte le risposte non sono corrette, cioè yk = yd,k , K=1…M Intelligenza Artificiale Cenni di intelligenza artificiale Intelligenza Artificiale 73 Cenni di intelligenza artificiale …continua… -1 x1 x2 74 Struttura delle reti θ w1 Rete alimentata in avanti: collegamenti unidirezionali senza cicli w2 … Σ Rete stratificata: tutti i neuroni di uno strato sono connessi con tutti i neuroni dello strato successivo non esistono connessioni tra neuroni dello stesso strato a y wn xn … delta rule Rete ricorrente: configurazione arbitraria dei collegamenti - δ = yd - y + wi (t+1) = wi (t) + ηδ xi Intelligenza Artificiale yd Rete completamente connessa η = coefficiente di apprendimento (learning rate) Cenni di intelligenza artificiale Intelligenza Artificiale 75 Cenni di intelligenza artificiale Reti a 3 strati 76 XOR Riconoscimento di singole regioni convesse: x2 output θ = 0.5 1 separazione dei semipiani θ = 0.5 1 -1 θ = 0.5 -1 1 1 input x1 e x2 Intelligenza Artificiale x1 classe riconosciuta Cenni di intelligenza artificiale 77 x2 x1 Intelligenza Artificiale x1 x2 Cenni di intelligenza artificiale 78 13 Esercizi 1. Soluzione 1 Data la seguente rete multistrato individuare la funzione implementata. θ =1.5 1 -1 1 x2 y = x1 x2 + x1 x2 1 x1 1 y θ = 0.5 -1 θ =-0.5 Intelligenza Artificiale Cenni di intelligenza artificiale 79 Intelligenza Artificiale Cenni di intelligenza artificiale Esercizi 2. Data la funzione 80 Soluzione 2 y = x1 x2 x3+ x1 x2 x3 + x1 x2 x3 individuare la θ =1.5 x1 -1 rete multistrato che la implementa. 1 1 1 1 θ =1.5 x2 -1 θ =1 y 1 1 1 θ =1.5 1 x3 Intelligenza Artificiale Cenni di intelligenza artificiale 81 Intelligenza Artificiale Esercizi 3. 1 -1 Cenni di intelligenza artificiale 82 Soluzione 3 Data la seguente rete multistrato individuare l’insieme dei punti del piano riconosciuti. x2 θ =1.5 x1 1 1 -1 x2 1 1 y θ = 0.5 x1 -1 θ =-0.5 Intelligenza Artificiale Cenni di intelligenza artificiale 83 Intelligenza Artificiale Cenni di intelligenza artificiale 84 14 Reti a 4 strati Apprendimento Le reti a 4 strati possono separare insiemi di regioni qualsiasi output Gli algoritmi di apprendimento per le reti multistrato non sono efficienti e non danno garanzia di convergere verso un ottimo globale x2 zona blu L’algoritmo di apprendimento utilizzato è noto con il nome di Back Propagation: zona rossa x1 Problemi modifica dei pesi nello strato finale modifica dei pesi negli strati intermedi input x1 e x2 L’aggiunta di strati non migliora laintelligenza capacità di riconoscimento Cenni di artificiale Intelligenza Artificiale 85 Intelligenza Artificiale Osserviamo Cenni di intelligenza artificiale 86 Generalizzazione Utilizzando le funzioni di uscita lineari qualsiasi rete a più strati sarebbe riconducibile ad una rete a 4 strati (composizione di trasformazioni lineari) Se alcuni esempi del training set (insieme sul quale la rete apprende) sono inconsistenti, il processo di apprendimento non è detto che converga, cioè non è detto che i pesi delle singole connessioni si assestino su un valore Per effettuare classificazioni complesse, i neuroni devono essere non lineari e organizzati in più strati Nei casi reali tale inconsistenza può essere tradotta in rumore sui dati di ingresso Per GENERALIZZAZIONE di una rete intendiamo la capacità della rete di riconoscere stimoli che sono diversi da quelli forniti nel training set. Per valutare tale fondamentale capacità di una rete si definisce un altro insieme di esempi, detto validation set, sul quale la funzione di uscita della rete è nota, e si verifica su questo la capacità della rete. Intelligenza Artificiale Cenni di intelligenza artificiale 87 Intelligenza Artificiale Sovra-adattamento Cenni di intelligenza artificiale 88 Classificazione Errori commessi sul validation set potrebbero essere dovuti ad uno scarso numero di neuroni nascosti presenti nella rete. In altre parole l’insieme da separare/riconoscere potrebbe essere più complesso di quanto immaginato inizialmente. Un perceptron può essere addestrato a riconoscere se un pattern d’ingresso appartiene o meno ad una determinata classe: 1 = concavo 1 = cubo 0 = convesso 0 = non cubo Quindi pochi neuroni nascosti potrebbero non essere sufficienti a ridurre l’errore globale nel riconoscimento Al contrario troppi neuroni nascosti potrebbero fossilizzare eccessivamente la rete sugli esempi specifici del training set. In tal caso la rete riconoscerebbe bene gli elementi del training set, ma sarebbe pessima su esempi nuovi (situazione di OVERTRAINING) Intelligenza Artificiale Cenni di intelligenza artificiale 89 Intelligenza Artificiale Cenni di intelligenza artificiale 90 15 Applicazioni delle reti neurali 1. Pronuncia di testi 2. Riconoscimento vocale 3. Riconoscimento di caratteri scritti a mano Intelligenza Artificiale Cenni di intelligenza artificiale Alberi di decisione Definizione: albero t.c. ogni nodo interno rappresenta una variabile, un arco verso un nodo figlio rappresenta un possibile valore per quella proprietà e una foglia il valore predetto per la variabile obiettivo a partire da i valori delle altre proprietà, che nell'albero è rappresentato del cammino (path) dalla nodo radice (root) al nodo foglia. 91 Intelligenza Artificiale Esempio Intelligenza Artificiale Cenni di intelligenza artificiale Cenni di intelligenza artificiale 92 Apprendimento 93 Intelligenza Artificiale Esempio Intelligenza Artificiale Cenni di intelligenza artificiale Cenni di intelligenza artificiale 94 Errore 95 Intelligenza Artificiale Cenni di intelligenza artificiale 96 16 Algoritmi genetici Algoritmo di apprendimento 1. 2. 3. 4. 5. Si raccoglie un grande insieme di esempi Lo si divide in due insiemi disgiunti: addestramento e test Si usa l’algoritmo di apprendimento con gli esempi di addestramento per generare un’ipotesi H Si misura la percentuale di esempi nell’insieme di test che viene classificata correttamente da H Si ripete da 1 a 4 con insiemi di addestramento di dimensioni diverse con insiemi selezionati casualmente Intelligenza Artificiale Cenni di intelligenza artificiale 97 Definizione: algoritmi che partendo da un insieme di uno o più individue applica una li seleziona e utilizza operatori di riproduzione in modo da fare evolvere un individuo bene adattato Intelligenza Artificiale …continua… Cenni di intelligenza artificiale 98 Esempio Cosa è la funzione di adeguatezza? f: IR Come è rappresentato un individuo? stringa su un alfabeto finito Come vengono selezionati gli individui? selezione stocastica con probabilità di selezione proporzionale all’adeguatezza Come si riproducono gli individui? incrocio e mutazione Intelligenza Artificiale Cenni di intelligenza artificiale 99 Intelligenza Artificiale Cenni di intelligenza artificiale 100 17