...

Cenni di intelligenza artificiale - Dipartimento di Ingegneria dell

by user

on
Category: Documents
22

views

Report

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
Fly UP