Documente Academic
Documente Profesional
Documente Cultură
=
=
k
i
i
split
i GINI
n
n
GINI
1
) (
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Ctigul informaional
Calitatea unei partiionri este determinat de
creterea omogenitii submulimilor rezultate
Trebuie maximizat ctigul informaional:
= I(printe)
i
(n
i
/ n * I(fiu
i
))
Deoarece I(printe) este acelai pentru toi fiii, se
prefer valoarea minim pentru
i
(n
i
/ n * I(fiu
i
))
Funcia I() poate fi entropia, indexul Gini sau alt
msur de impuritate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Exemplu: construirea unui AD
Se calculeaz ctigul informaional pentru
fiecare atribut (Refund, Status, Income)
Refund
Refund = Yes 3 instane
Cheat = Yes 0
Cheat = No 3
Gini = 0
Refund = No 7 instane
Cheat = Yes 3
Cheat = No 4
Gini = 1 (3/7)
2
(4/7)
2
= 0.49
Gini
Refund
= (3/10) * 0 + (7/10) * 0.49 = 0.343
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Exemplu: construirea unui AD
Status
Status = Divorced 2 instane
Cheat = Yes 1
Cheat = No 1
Gini = 1 (1/2)
2
(1/2)
2
= 0.5
Status = Married 4 instane
Cheat = Yes 0
Cheat = No 4
Gini = 1 (0/4)
2
(4/4)
2
= 0
Status = Single 4 instane
Cheat = Yes 2
Cheat = No 2
Gini = 1 (2/4)
2
(2/4)
2
= 0.5
Gini
Status
= (2/10) * 0.5 + (4/10) * 0 + (4/10) * 0.5
= 0.3
Aceeai valoare dac am considera 2 clase:
{Married} i {Divorced, Single} problem de
optimizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Construirea unui AD:
atribute continue
Pentru eficientizarea calculelor, pentru fiecare atribut:
Se sorteaz valorile
Se parcurg liniar valorile, actualizndu-se numrarea
instanelor i calculndu-se indexul Gini
Se alege poziia de partiionare cu indexul Gini minim
Cheat No No No Yes Yes Yes No No No No
Taxable Income
60 70 75 85 90 95 100 120 125 220
55 65 72 80 87 92 97 110 122 172 230
<= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= >
Yes 0 3 0 3 0 3 0 3 1 2 2 1 3 0 3 0 3 0 3 0 3 0
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
Poziii de part.
Valori sortate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Construirea unui AD:
atribute continue
Optimizare: se calculeaz indexul Gini doar
pentru poziiile unde se schimb valoarea
clasei
2 partiionri candidat n loc de 11
Cheat No No No Yes Yes Yes No No No No
Taxable Income
60 70 75 85 90 95 100 120 125 220
55 65 72 80 87 92 97 110 122 172 230
<= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= >
Yes 0 3 0 3 0 3 0 3 1 2 2 1 3 0 3 0 3 0 3 0 3 0
No 0 7 1 6 2 5 3 4 3 4 3 4 3 4 4 3 5 2 6 1 7 0
Gini 0.420 0.400 0.375 0.343 0.417 0.400 0.300 0.343 0.375 0.400 0.420
Poziii de part.
Valori sortate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Prima partiionare
Gini
Refund
= 0.343
Gini
Status
= 0.3
Gini
Income
= 0.3
Partiionrile dup Status i Income
sunt egal posibile
Dar rezultatele pot fi foarte diferite...
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Procedura recursiv
S considerm Status pentru prima partiionare
MarSt
Divorced Married Single
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Al doilea nivel
Atribute rmase
Refund, Income
Status = Divorced
Refund = No Cheat = Yes
Refund = Yes Cheat = No
Gini = 0, partiionare dup Refund
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Al doilea nivel
Status = Married Cheat = No
Nu mai sunt necesare alte
partiionri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Al doilea nivel
Status = Single
Refund = Yes 1 instan
Cheat = Yes 0
Cheat = No 1
Gini = 0
Refund = No 3 instane
Cheat = Yes 2
Cheat = No 1
Gini = 1 (2/3)
2
(1/3)
2
= 0.444
Gini
Refund
= 0 + (3/4) * 0.444 = 0.333
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Al doilea nivel
Status = Single
Valoarea clasei neschimbat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Al doilea nivel
Gini
Refund
= 0.333
Gini
Income
= 0.333
Partiionrile dup Refund i Income
sunt egal posibile
S considerm Refund
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Arborele final
MarSt
Divorced Married Single
Refund
Yes
NO
No
YES
NO Refund
Yes
NO
No
Income
<80
NO
>80
YES
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Decizia alternativ
Income
>97
NO
<97
MarSt
Divorced Married Single
YES NO YES
Arborele de decizie are 1 eroare chiar pe mulimea de antrenare!
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Clasificarea cu arbori de decizie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Aplicarea modelului
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10
Instana de test
Se ncepe din rdcin
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10
Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10
Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10
Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10
Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Refund
MarSt
TaxInc
YES NO
NO
NO
Yes No
Married
Single, Divorced
< 80K > 80K
Refund Marital
Status
Taxable
Income
Cheat
No Married 80K ?
10
Se clasific instana:
Cheat = No
Aplicarea modelului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Algoritmi de inducie
ID3, Iterative Dichotomiser 3 (Quinlan, 1983)
Opereaz numai pe atribute discrete
C4.5 (Quinlan, 1993)
Extensie a algoritmului ID3
Permite i atribute continue
Permite partiionarea de mai multe ori dup acelai atribut
Permite retezarea (simplificarea, engl. pruning) arborelui generat pentru
a crete capacitatea de generalizare
ID3 i C4.5 folosesc entropia pentru a descoperi arbori de dimensiuni
ct mai reduse
Arbori aleatorii (Random Tree, Random Forest)
Stabilete atributele pentru partiionare n mod aleatoriu
Nu genereaz arbori de dimensiuni mici
Eroarea pe mulimea de antrenare este foarte mic
Toi aceti algoritmi sunt euristici
Nu se garanteaz dimensiunea minim a arborelui i nici performanele
Exist mai muli arbori posibili pentru o problem dat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Clasificarea cu arbori de decizie
De obicei uor de construit
Necesit totui o serie de calcule
La implementare, dificultatea principal este partiionarea
recursiv
Rapizi la clasificarea instanelor necunoscute
Uor de interpretat
Mai ales pentru arbori mici ca dimensiune
Un arbore de decizie poate fi interpretat ca o mulime
de reguli
De exemplu Dac Marital Status este Divorced i Refund
este Yes atunci Cheat este No
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Clasificatorul bayesian
Se consider fiecare atribut i clasa ca
variabile aleatorii
Se d o instan cu atributele (A
1
, A
2
, , A
n
)
Trebuie determinat clasa C
Echivalent, trebuie gsit valoarea lui C care
maximizeaz P ( C | A
1
, A
2
, , A
n
)
Trebuie estimat P ( C | A
1
, A
2
, , A
n
) direct
din date
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Clasificatorul bayesian
Conform teoremei lui Bayes:
Se alege valoarea lui C care maximizeaz
P ( C | A
1
, A
2
, , A
n
)
Echivalent cu alegerea valorii lui C care maximizeaz
P ( A
1
, A
2
, , A
n
| C ) * P(C)
Problema se reduce la estimarea P(A
1
, A
2
, , A
n
| C)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Clasificatorul bayesian naiv
engl. Nave Bayes
Se presupune c atributele A
i
sunt
independente dat fiind clasa C
j
:
P(A
1
, A
2
, , A
n
| C
j
) = P(A
1
| C
j
) P(A
2
| C
j
) P(A
n
| C
j
)
Putem estima P(A
i
| C
j
) pentru toate A
i
i C
j
Trebuie gsit valoarea C
j
astfel nct
P(C
j
) H
i
P(A
i
| C
j
) s fie maxim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Exemplu de clasificare
x
q
= (No, Married, 80K)
Trebuie s gsim:
argmax P(C
j
) H
i
P(A
i
| C
j
)
Calculm probabilitile pentru
(Cheat = Yes) i (Cheat = No)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
C
j
= (Cheat = Yes)
P(Cheat = Yes) = 3 / 10
P(Refund = No | Cheat = Yes) = 3 / 3
P(Status = Married | Cheat = Yes) = 0 / 3
Income, Cheat = Yes
(Income|Cheat = Yes)
= 90
(Income|Cheat = Yes)
= 4.33
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Considerente practice
Dac una din probabilitile condiionate este 0, tot produsul
devine 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Considerente practice
Soluie: corecia Laplace sau estimarea-m (engl. m-estimate)
Se estimeaz probabilitile anterioare ale fiecrei valori
Iniial:
Estimarea-m:
Fie c numrul de clase, putem considera m = c i p = 1 / c
Corecia Laplace:
Foarte util mai ales la clasificarea textelor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Considerente practice
Precizia calculelor poate fi afectat de
nmulirea probabilitilor (valori mici)
Soluie: folosirea logaritmilor
Produsul de probabiliti este nlocuit cu suma
logaritmilor de probabiliti
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Atribute continue
Abordarea 1. Discretizarea
Cte un atribut ordinal pe submulime
Violeaz presupunerea de independen
Abordarea 2. Partiionarea binar:
(A s v) sau (A > v)
Se alege doar unul din teste
Valori: Da / Nu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Atribute continue
Abordarea 3. Estimarea distribuiei de
probabilitate (folosit mai rar)
Se presupune c valorile atributului respect o
distribuie (de exemplu) normal
Parametrii distribuiei se estimeaz din date
(media i deviaia standard )
Odat cunoscut distribuia de probabilitate,
poate fi utilizat pentru a calcula probabilitile
condiionate P(A
i
|C
j
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Atribute continue
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
C
j
= (Cheat = Yes)
P(Cheat = Yes) = 3 / 10
P(Refund = No | Cheat = Yes) = 3 / 3
P(Status = Married | Cheat = Yes) = 0 / 3
Income, Cheat = Yes
(Income|Cheat = Yes)
= 90
(Income|Cheat = Yes)
= 4.082
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Exemplu de clasificare
x
q
= (No, Married, 80K)
Income, Cheat = Yes
(Income|Cheat = Yes)
= 90
(Income|Cheat = Yes)
= 4.082
P(Income = 80 | Cheat = Yes) =
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
C
j
= (Cheat = Yes)
P(Cheat = Yes) = 3 / 10
P(Refund = No | Cheat = Yes) = 3 / 3
P(Status = Married | Cheat = Yes) = 0 / 3
P(Income = 80 | Cheat = Yes) = 4.862e-3
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
Analog pentru C
j
= (Cheat = No)
P(Cheat = No) = 7 / 10
P(Refund = No | Cheat = No) = 4 / 7
P(Status = Married | Cheat = No) = 4 / 7
P(Income = 80 | Cheat = No) = 6.622e-3
(Income|Cheat = No)
= 110
(Income|Cheat = No)
= 50.498 !
valorile atributului nu au de fapt o distribuie normal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Exemplu de clasificare
x
q
= (No, Married, 80K)
argmax P(C
j
) H
i
P(A
i
| C
j
)
Analog pentru C
j
= (Cheat = No)
P(Cheat = No) = 7 / 10
P(Refund = No | Cheat = No) = 4 / 7
P(Status = Married | Cheat = No) = 4 / 7
P(Income = 80 | Cheat = No) = 6.622e-3
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Exemplu de clasificare
x
q
= (No, Married, 80K)
P(x
q
|C
yes
) = 0.233 * 10
-3
P(x
q
|C
no
) = 1.43 * 10
-3
argmax
j
P(x
q
|C
j
) = No
n general, discretizarea (chiar cu intervale egale) d rezultate mai bune
dect metoda estimrii distribuiei de probabilitate.
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Clasificarea Bayes naiv
Avantaje
Calcule simple
Robustee la zgomot i atribute irelevante
Aplicabilitate
Mulimi de antrenare medii sau mari
Atribute independente condiional
Presupunerea este deseori infirmat n realitate
Dar metoda funcioneaz totui surprinztor de bine!
Extensie: reele bayesiene
Aplicaii de succes
Diagnoz
Clasificarea documentelor text
Detecia spam-ului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Clasificarea bazat pe instane
Instanele memorate
Instan nou
Se memoreaz instanele
de antrenare
Se folosesc pentru a
prezice clasa instanelor
noi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Cei mai apropiai k vecini
engl. k-Nearest Neighbor (k-NN)
Se folosesc cele mai apropiate k instane pentru a
realiza clasificarea
Dac merge ca o ra i mcne ca o ra, atunci
probabil e o ra
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Clasificarea k-NN
Necesit:
Mulimea instanelor de antrenare
O metric de distan pentru a calcula distana
dintre instane
Valoarea lui k, numrul de vecini apropiai (k 1)
Pentru a clasifica o instan nou:
Se calculeaz distana fa de instanele de
antrenare
Se identific cei k vecini cei mai apropiai
Se folosesc clasele vecinilor pentru a determina
clasa noii instane (de exemplu prin vot majoritar)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
Reprezentarea instanelor
Pentru n atribute, instanele pot fi vzute ca puncte ntr-un
spaiu n-dimensional
De exemplu clasificarea riscului unor pacieni
Atribute:
Indicele Masei Corporale IMC (= G/I
2
)
Vrsta V
Instane:
IMC = 18.5, V = 20
IMC = 27, V = 32
IMC = 39, V = 27
IMC = 20, V = 25
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
Cei mai apropiai vecini
Cei mai apropiai k vecini ai unei instane x
sunt punctele cu cele mai mici distane fa
de x
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
1-NN
Diagrama Voronoi
n interiorul unei celule, clasificarea tuturor noilor instane
este determinat de instana de antrenare corespunztoare
Instanele noi din afara unei celule sunt mai apropiate de
alte instane de antrenare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Diagramele Voronoi i
grdina zen Ryoanji
Cercettorii au descoperit c spaiul gol al grdinii
evoc o imagine ascuns a unui arbore care este
perceput incontient
Partea de sus este similar cu diagrama Voronoi
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Metrici de distan
Se folosesc n general particularizri ale
distanei Minkowski
Cele mai folosite metrici sunt:
Distana euclidian: p = 2
Distana Manhattan: p = 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Numrul de vecini
Cnd k este prea mic, clasificarea poate fi afectat de
zgomot
Cnd k este prea mare, vecintatea poate include
puncte din alte clase
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
93
Scalarea
Se recomand scalarea atributelor pentru a
preveni dominarea msurii de distan de ctre
un anumit atribut
De exemplu:
nlimea unei persoane e [1.5, 2.1] m
Greutatea unei persoane e [50, 120] kg
Venitul unei persoane e [10000, 1000000] EUR/an
Valorile atributelor sunt normalizate:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
94
Numrul de dimensiuni
Blestemul dimensionalitii
engl. curse of dimensionality
Datele devin mai rare n spaiile
multidimensionale
Dac numrul de atribute este mare, este
nevoie de mai multe instane de antrenare
pentru a forma un model corect
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
95
Ponderarea instanelor
Vecinii mai apropiai au o influen mai
mare la stabilirea clasei
Fiecare dintre vecini poate fi ponderat
pe baza distanei:
w
i
= 1 / d(x
q
, x
i
)
2
Dac d(x
q
, x
i
) = 0, atunci f(x
q
) = f(x
i
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
96
Exemplu: calcularea distanelor
Noua instan: x
q
= (No, Married, 80K)
De exemplu: d(x
q
, x
4
) = ...
d
Refund
= 1 (No = Yes)
d
Status
= 0 (Married = Married)
d
Income
= ...
I
q
= 80, normalizat ntre 60 i 220 0.125
I
4
= 120, normalizat 0.375
d
Income
= 0.25
d(x
q
, x
4
) = sqrt(1
2
+ 0
2
+ 0.25
2
)= 1.031
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
97
Exemplu: calcularea distanelor
Noua instan: x
q
= (No, Married, 80K)
d(x
q
, x
1
) = 1.442
d(x
q
, x
2
) = 0.125
d(x
q
, x
3
) = 1.002
d(x
q
, x
4
) = 1.031
d(x
q
, x
5
) = 1.004
d(x
q
, x
6
) = 0.125
d(x
q
, x
7
) = 1.663
d(x
q
, x
8
) = 1.000
d(x
q
, x
9
) = 0.031
d(x
q
, x
10
) = 1.002
k = 3
Cele mai apropiate 3 instane sunt:
x
9
(Cheat=No), x
2
(No) i x
6
(No)
Deci: f(x
q
) = No
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
98
Exemplu: ponderarea
Noua instan:
x
q
= (No, Married, 80K)
w(x
1
) = 1 / 1.442
2
=
0.481 (No)
w(x
2
) = 1 / 0.125
2
=
64 (No)
w(x
3
) = 0.996 (No)
w(x
4
) = 0.941 (No)
w(x
5
) = 0.992 (Yes)
w(x
6
) = 64 (No)
w(x
7
) = 0.362 (No)
w(x
8
) = 1.000 (Yes)
w(x
9
) = 1040.583 (No)
w(x
10
) = 0.996 (Yes)
k = 10
Se pot lua n calcul toate
instanele de antrenare
Se transform dintr-o
metod local ntr-una
global
Decizia: suma
Voturi pt. No: 1171.363
Voturi pt. Yes: 2.988
Deci: f(x
q
) = No
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
99
Ponderarea atributelor
Ideea de baz: lungirea sau scurtarea axelor
n spaiul euclidian
Lungirea axelor atributelor mai relevante
Scurtarea axelor atributelor mai puin relevante
Metode:
Ponderarea pe baza ctigului informaional
Necesit calcule mai complexe
Ponderarea cu un algoritm local, precum Relief
(Kira & Rendell, 1992)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
100
Selecia atributelor
ntr-o mulime de antrenare pot exista
atribute irelevante, care complic inutil
modelul i pot afecta rezultatele clasificrii
Avantajele seleciei atributelor:
Calcule mai simple
Clasificatorul rezultat este mai rapid
Erorile la predicie pot scdea
Identificarea atributelor relevante poate ajuta la
nelegerea naturii problemei de clasificare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
101
Clasificarea bazat pe
cei mai apropiai vecini
Clasificatorii k-NN sunt lazy learners
Modelul nu este construit explicit
Efortul de calcul se face la clasificarea instanelor noi
Arborii de decizie sunt eager learners
Timpul de clasificare poate fi redus prin utilizarea
arborilor kd (engl. kd-trees, k-dimensional trees)
Rata de eroare este de obicei mic
Dac mulimea de antrenare nu este afectat de zgomot,
rata de eroare este de obicei 0%
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Weka
Colecie open-source de algoritmi de nvare automat
102
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
103
nvarea supervizat.
Tehnici de clasificare
1. nvarea automat i clasificarea
2. Arbori de decizie
3. Metoda Bayes naiv
4. nvarea bazat pe instane
5. Algoritmul NNGEP
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
104
Integrarea
Pot fi integrate astfel de metode aparent
diferite ntr-o singur metod?
NNGEP, Non-Nested Generalized Exemplars
with Prototypes (Leon, 2005) combin:
Reguli
Instane
Prototipuri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
105
Clasificarea NNGEP
Instanele similare
sunt agregate n
exemplare
generalizate
(hiper-paralelipipede)
Exemplarele
generalizate nu se
suprapun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
106
Clasificarea NNGEP
Noile instane sunt incluse n cel mai apropiat
exemplar generalizat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
107
Clasificarea NNGEP
Dac o generalizare intr ulterior n conflict
cu un exemplu negativ, generalizarea este
modificat pentru meninerea consistenei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
108
Prototipuri
ntruct un exemplar
generalizat conine mai
multe instane, media
statistic a acestora nu
coincide neaprat cu
centrul geometric al
hiper-paralelipipedului
corespunztor
Prototipul poate fi diferit
de centrul geometric
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Actualizarea prototipurilor
Cnd se adaug o nou instan unui
exemplar generalizat, prototipul acestuia
se modific dup formulele:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
110
Rezultate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
111
Interpretare
Hiper-paralelipipedele pot fi interpretate ca reguli
Dac a < x < b atunci x e C
H
Hiper-paralelipipedele sunt exemplare generalizate
(instane)
n interior, o nou instan este clasificat direct n clasa C
H
n exterior, o nou instan este clasificat pe baza celui mai
apropiat exemplar generalizat
Prototipurile sunt calculate folosind distribuia
normal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
112
Concluzii
Clasificarea este o parte foarte important a
nvrii inductive
Euristicile de clasificare pot avea performane
diferite pentru aceeai problem, depinznd
de structura problemei
Dei diferite conceptual, metodele bazate pe
reguli, instane i prototipuri pot fi integrate
ntr-un model cognitiv unitar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
11. Reele neuronale (I)
Florin Leon
Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare
http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Modelul biologic
Modul n care lucreaz creierul fiinelor vii este
complet diferit de cel al calculatoarelor numerice
convenionale
O reea neuronal artificial este un model simplificat
al creierului biologic
Creierul uman dispune de 100 de miliarde de neuroni
i 100-500 de trilioane de sinapse
Calculele sunt prelucrri paralele, complexe i
neliniare
Fiecare neuron are o structur simpl (aparent...),
dar interconectarea lor asigur puterea de calcul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Interconectarea neuronilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Caracteristicile reelei
neuronale biologice
Informaiile sunt stocate i prelucrate n toat
reeaua
Sunt globale, nu locale
O caracteristic esenial este plasticitatea,
capacitatea de a se adapta de a nva
Uurina nvrii a condus la ideea emulrii
reelelor neuronale cu ajutorul calculatorului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Reele neuronale artificiale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Analogii
RN biologic
Soma (corpul celulei)
Dendrite
Axon
Sinaps
RN artificial
Neuron
Intrri
Ieire
Pondere (weight)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Neuronul artificial
Warren McCulloch i Walter Pitts (1943) au
propus un model de neuron, care rmne pn
n prezent fundamentul structural pentru
majoritatea reelelor neuronale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Perceptronul
Frank Rosenblatt (1958) a introdus un
algoritm de antrenare pentru neuronul
numit perceptron
Perceptronul are ponderi sinaptice ajustabile
i funcia de activare semn sau prag
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
nvarea
Scopul perceptronului este s clasifice
intrrile x
1
, x
2
, . . ., x
n
cu dou clase
A
1
i A
2
Spaiul intrrilor, n-dimensional, este
mprit n dou de un hiperplan definit
de ecuaia:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Exemple: 2, respectiv 3 intrri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
nvarea
nvarea are loc prin ajustarea succesiv a ponderilor pentru a
reduce diferena dintre ieirile reale i ieirile dorite, pentru
toate datele de antrenare
Dac la iteraia p ieirea real este Y(p) iar ieirea dorit este
Y
d
(p), atunci eroarea este: e(p) = Y
d
(p) - Y(p)
Iteraia p se refer la instana/vectorul de antrenare cu numrul p
Dac eroarea este pozitiv, trebuie s cretem ieirea
perceptronului Y(p)
Dac eroarea este negativ, trebuie s micorm ieirea Y(p)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
nvarea
Dac Y = 0 iar Y
d
= 1, e = 1
Atunci: w = x = x e
x w = 0
x w
d
= 1
Dac x > 0,
w trebuie s creasc
Dac x < 0,
w trebuie s scad
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
nvarea
Dac Y = 1 iar Y
d
= 0, e = -1
Atunci: w = (-x) = x e
x w = 1
x w
d
= 0
Dac x > 0,
w trebuie s scad
Dac x < 0,
w trebuie s creasc
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Regula delta
Se bazeaz pe minimizarea erorii n raport cu
ponderile, cu ajutorul gradientului descendent
n cazul general:
Actualizarea ponderilor:
Demonstraie: http://en.wikipedia.org/wiki/Delta_rule
ieirea dorit
funcia de activare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Regula de nvare
pentru funcia de
activare liniar
(difereniabil)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Algoritmul de antrenare al
perceptronului
1. Iniializarea
Ponderile w
1
, w
2
,, w
n
i pragul sunt iniializate
cu valori aleatorii din intervalul [-0.5, 0.5]
2. Activarea
Se aplic intrrile x
1
(p), x
2
(p),, x
n
(p) i se
calculeaz ieirea real Y(p):
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Algoritmul de antrenare al
perceptronului
3. Actualizarea ponderilor
4. Se incrementeaz p i se repet procesul
de la pasul 2 pn cnd algoritmul converge
Eroarea pentru toate datele de antrenare este 0
Convergena nu este garantat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Exemplu de antrenare: funcia I
Inputs
x
1
x
2
0
0
1
1
0
1
0
1
0
0
0
Epoch
Desired
output
Y
d
1
Initial
weights
w
1
w
2
1
0.3
0.3
0.3
0.2
0.1
0.1
0.1
0.1
0
0
1
0
Actual
output
Y
Error
e
0
0
1
1
Final
weights
w
1
w
2
0.3
0.3
0.2
0.3
0.1
0.1
0.1
0.0
0
0
1
1
0
1
0
1
0
0
0
2
1
0.3
0.3
0.3
0.2
0
0
1
1
0
0
1
0
0.3
0.3
0.2
0.2
0.0
0.0
0.0
0.0
0
0
1
1
0
1
0
1
0
0
0
3
1
0.2
0.2
0.2
0.1
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0.0
0
0
1
0
0
0
1
1
0.2
0.2
0.1
0.2
0.0
0.0
0.0
0.1
0
0
1
1
0
1
0
1
0
0
0
4
1
0.2
0.2
0.2
0.1
0.1
0.1
0.1
0.1
0
0
1
1
0
0
1
0
0.2
0.2
0.1
0.1
0.1
0.1
0.1
0.1
0
0
1
1
0
1
0
1
0
0
0
5
1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0
0
0
1
0
0
0
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0
Threshold: u = 0.2; learning rate: o = 0.1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Reprezentarea grafic
Perceptronul poate reprezenta doar funcii liniar separabile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Discuie
Perceptronul poate reprezenta funcii liniar
separabile mai complexe, de exemplu funcia
majoritate
Un arbore de decizie ar avea nevoie de 2
n
noduri
Poate nva tot ce poate reprezenta, dar nu
poate reprezenta multe funcii
Neseparabile liniar, de exemplu XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Perceptronul multistrat cu
2 straturi ascunse
26
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Perceptronul multistrat
Perceptronul multistrat este o reea neuronal cu
propagare nainte (feed-forward) cu unul sau mai
multe straturi ascunse
Un strat de intrare
Unul sau mai multe straturi ascunse / intermediare
Un strat de ieire
Calculele se realizeaz numai n neuronii din straturile
ascunse i din stratul de ieire
Semnalele de intrare sunt propagate nainte succesiv
prin straturile reelei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Straturile ascunse
Un strat ascuns i ascunde ieirea dorit. Cunoscnd
corespondena intrare-ieire a reelei (cutie neagr),
nu este evident care trebuie s fie ieirea dorit a unui
neuron dintr-un strat ascuns
Reelele neuronale clasice au 1 sau 2 straturi ascunse.
Fiecare strat poate conine 10-1000 neuroni
Arhitecturi Deep Learning multe straturi ascunse
(de exemplu 10), de obicei cu o faz de pre-antrenare
nesupervizat i tehnici posibil diferite de antrenare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
1 strat ascuns
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
2 straturi ascunse
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Funcii de activare (I)
n prezent, funciile cele mai des utilizate sunt
sigmoida unipolar (sau logistic):
32
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Funcii de activare (II)
i mai ales sigmoida bipolar (tangenta hiperbolic):
33
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Discuie
Un perceptron cu un singur strat are aceleai
limitri chiar dac folosete o funcie de
activare neliniar
Un perceptron multistrat cu funcii de activare
liniare este echivalent cu un perceptron cu un
singur strat
O combinaie liniar de funcii liniare este tot o
funcie liniar
f(x) = 2x + 2; g(y) = 3y 3
g(f(x)) = 3(2x + 2) 3 = 6x + 3
34
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
nvarea
O reea multistrat nva ntr-un mod
asemntor cu perceptronul
Reeaua primete vectorii de intrare i
calculeaz vectorii de ieire
Dac exist o eroare (o diferen ntre ieirea
real i ieirea dorit), ponderile sunt ajustate
pentru a reduce eroarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Algoritmul de retro-propagare
engl. backpropagation
Bryson & Ho, 1969
Rumelhart, Hinton & Williams, 1986
Algoritmul are dou faze:
Reeaua primete vectorul de intrare i propag
semnalul nainte, strat cu strat, pn se genereaz
ieirea
Semnalul de eroare este propagat napoi,
de la stratul de ieire ctre stratul de intrare,
ajustndu-se ponderile reelei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Fazele algoritmului
backpropagation
37
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Pasul 1. Iniializarea
Ponderile i pragurile se iniializeaz cu valori
aleatorii mici, dar diferite de 0
O euristic recomand valori din intervalul
(2.4 / F
i
, 2.4 / F
i
), unde F
i
este numrul
total de intrri ale neuronului i (fan-in)
n general, pot fi valori ntre [-0.1, 0.1]
Iniializarea ponderilor se face n mod
independent pentru fiecare neuron
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Pasul 2. Activarea
Se activeaz reeaua prin aplicarea vectorului de
intrare x
1
(p), x
2
(p),, x
n
(p) cu ieirile dorite
y
d
1
(p), y
d
2
(p),, y
d
n
(p)
Se calculeaz ieirile reale ale neuronilor din stratul
ascuns:
unde n este numrul de intrri ale neuronului j din
stratul ascuns i se utilizeaz o funcie de activare
sigmoid
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Pasul 2. Activarea
Se calculeaz ieirile reale ale neuronilor din stratul
de ieire:
unde m este numrul de intrri ale neuronului k din
stratul de ieire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Pasul 3. Ajustarea ponderilor
Se calculeaz gradienii de eroare ai neuronilor din
stratul de ieire, n mod similar cu regula delta pentru
perceptron
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Derivata funciei de activare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Pasul 3. Ajustarea ponderilor
Se calculeaz gradienii de eroare ai neuronilor din
stratul ascuns:
Se calculeaz coreciile ponderilor:
Se actualizeaz ponderile neuronilor din stratul
ascuns:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Pasul 4. Iteraia
Se incrementeaz p
Prezentarea tuturor vectorilor (instanelor)
de antrenare constituie o epoc
Antrenarea reelei continu pn cnd
eroarea medie ptratic ajunge sub un prag
acceptabil sau pn cnd se atinge un numr
maxim prestabilit de epoci de antrenare
V este numrul de vectori de antrenare
O este numrul de ieiri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu: Reea cu 1 strat ascuns pentru
aproximarea funciei binare XOR
45
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Iniializarea
Pragul aplicat unui neuron dintr-un strat
ascuns sau de ieire este echivalent cu o alt
conexiune cu ponderea egal cu , conectat
la o intrare fix egal cu 1
Ponderile i pragurile sunt iniializate
aleatoriu:
w
13
= 0.5, w
14
= 0.9, w
23
= 0.4, w
24
= 1.0
w
35
= 1.2, w
45
= 1.1
3
= 0.8,
4
= 0.1,
5
= 0.3
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
S considerm instana de antrenare unde intrrile
x
1
i x
2
sunt egale cu 1 iar ieirea dorit y
d
5
este 0
Ieirile reale ale neuronilor 3 i 4 din stratul ascuns
sunt calculate precum urmeaz:
| | 5250 . 0 1 / 1 ) (
) 8 . 0 1 4 . 0 1 5 . 0 1 (
3 23 2 13 1 3
= + = u + =
+
e w x w x sigmoid y
| | 8808 . 0 1 / 1 ) (
) 1 . 0 1 0 . 1 1 9 . 0 1 (
4 24 2 14 1 4
= + = u + =
+ +
e w x w x sigmoid y
Se determin ieirea real a neuronului 5 din stratul
de ieire:
Se obine urmtoarea eroare:
| | 5097 . 0 1 / 1 ) (
) 3 . 0 1 1 . 1 8808 . 0 2 . 1 5250 . 0 (
5 45 4 35 3 5
= + = u + =
+
e w y w y sigmoid y
5097 . 0 5097 . 0 0
5 5 ,
= = = y y e
d
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Se propag eroarea e din stratul de ieire ctre
stratul de intrare
Mai nti se calculeaz gradientul erorii pentru
neuronul 5 din stratul de ieire:
1274 . 0 5097) . 0 ( 0.5097) (1 0.5097 ) 1 (
5 5 5
= = = e y y o
Apoi se calculeaz coreciile ponderilor i pragului
Presupunem c rata de nvare o este 0.1
0112 . 0 ) 1274 . 0 ( 8808 . 0 1 . 0
5 4 45
= = = A o o y w
0067 . 0 ) 1274 . 0 ( 5250 . 0 1 . 0
5 3 35
= = = A o o y w
0127 . 0 ) 1274 . 0 ( ) 1 ( 1 . 0 ) 1 (
5 5
= = = u A o o
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Apoi se calculeaz gradienii de eroare pentru
neuronii 3 i 4 din stratul ascuns:
Apoi se determin coreciile ponderilor i pragurilor:
0381 . 0 ) 2 . 1 ( 0.1274) ( 0.5250) (1 0.5250 ) 1 (
35 5 3 3 3
= = = w y y o o
0.0147 .1 1 4) 0.127 ( 0.8808) (1 0.8808 ) 1 (
45 5 4 4 4
= = = w y y o o
0038 . 0 0381 . 0 1 1 . 0
3 1 13
= = = A o o x w
0038 . 0 0381 . 0 1 1 . 0
3 2 23
= = = A o o x w
0038 . 0 0381 . 0 ) 1 ( 1 . 0 ) 1 (
3 3
= = = u A o o
0015 . 0 ) 0147 . 0 ( 1 1 . 0
4 1 14
= = = A o o x w
0015 . 0 ) 0147 . 0 ( 1 1 . 0
4 2 24
= = = A o o x w
0015 . 0 ) 0147 . 0 ( ) 1 ( 1 . 0 ) 1 (
4 4
= = = u A o o
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
n final, se actualizeaz ponderile i pragurile:
5038 . 0 0038 . 0 5 . 0
13 13 13
= + = A + =
w w w
8985 . 0 0015 . 0 9 . 0
14 14 14
= = A + =
w w w
4038 . 0 0038 . 0 4 . 0
23 23 23
= + = A + =
w w w
9985 . 0 0015 . 0 0 . 1
24 24 24
= = A + =
w w w
2067 . 1 0067 . 0 2 . 1
35 35 35
= = A + =
w w w
0888 . 1 0112 . 0 1 . 1
45 45 45
= = A + =
w w w
7962 . 0 0038 . 0 8 . 0
3 3 3
= = u A + u = u
0985 . 0 0015 . 0 1 . 0
4 4 4
= + = u A + u = u
3127 . 0 0127 . 0 3 . 0
5 5 5
= + = u A + u = u
Procesul de antrenare se repet pn cnd suma erorilor
ptratice devine mai mic dect o valoare acceptabil,
de exemplu aici 0.001
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Rezultate finale
Inputs
x
1
x
2
1
0
1
0
1
1
0
0
0
1
1
Desired
output
y
d
0
0.0155
Actual
output
y
5
Y
Error
e
Sum of
squared
errors
e
0.9849
0.9849
0.0175
0.0155
0.0151
0.0151
0.0175
0.0010
V este numrul de vectori de
antrenare (aici 4)
O este numrul de ieiri (aici 1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Evoluia erorii pentru
problema XOR
52
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Parametrii finali ai reelei
53
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
(a) Regiunea de decizie generat de neuronul ascuns 3
(b) Regiunea de decizie generat de neuronul ascuns 4
(c) Regiunea de decizie generat de reeaua complet:
combinarea regiunilor de ctre neuronul 5
x
1
x
2
1
(a)
1
x
2
1
1
(b)
0 0
x
1
+ x
2
1.5 = 0 x
1
+ x
2
0.5 = 0
x
1
x
1
x
2
1
1
(c)
0
Regiuni de decizie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Tipuri de antrenare
nvarea incremental (online learning)
Ponderile se actualizeaz dup prelucrarea fiecrui vector de
antrenare
Ca n exemplul anterior
nvarea pe lot (batch learning)
Dup prelucrarea unui vector de antrenare se acumuleaz
gradienii de eroare n coreciile ponderilor w
Ponderile se actualizeaz o singur dat la sfritul unei
epoci (dup prezentarea tuturor vectorilor de antrenare):
w w + w
Avantaj: rezultatele antrenrii nu mai depind de ordinea n
care sunt prezentai vectorii de antrenare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Metode de accelerare a
nvrii
Reelele nva de obicei mai repede cnd se
folosete funcia sigmoid bipolar (tangenta
hiperbolic) n locul sigmoidei unipolare
O euristic ce poate fi folosit pentru alegerea
parametrilor sigmoidei:
a = 1.716
b = 0.667
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Metoda momentului
Regula delta generalizat:
Termenul este un numr pozitiv
(0 s < 1) numit constant de moment
sau inerie (engl. momentum)
De obicei, este n jur de 0.95
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
nvarea cu moment pentru problema XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Rata de nvare adaptiv
Pentru accelerarea convergenei i evitarea
instabilitii, se pot aplica dou euristici:
Dac variaia sumei erorilor ptratice E are
acelai semn algebric pentru mai multe epoci
consecutive, atunci rata de nvare trebuie s
creasc
Dac semnul lui E alterneaz timp de cteva
epoci consecutive, atunci rata de nvare
trebuie s scad
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Rata de nvare adaptiv
Fie E
p
suma erorilor ptratice n epoca
prezent
Dac E
p
> r E
p-1
, atunci d
Dac E
p
< E
p-1
, atunci u
Apoi se calculeaz noile ponderi i praguri
Valori tipice: r = 1.04, d = 0.7, u = 1.05
ratio down up
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
nvarea cu rat adaptiv
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
nvarea cu moment i rat adaptiv
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Metoda Newton
Metod iterativ pentru determinarea
rdcinilor unei funcii pe baza derivatei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Aplicarea metodei Newton
pentru antrenarea unei reele
Pentru o reea neuronal,
scopul este determinarea
punctelor unde difereniala
erorii este 0
Se pot folosi difereniale de
ordin 2
Matricea hessian: calcule
complexe i sensibilitate la
erorile date de precizia
reprezentrii numerelor n
calculator
Metoda momentului poate
fi considerat o
aproximare euristic a
acestei abordri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Antrenarea cu AE
Gsirea ponderilor pentru minimizarea erorii este o
problem de optimizare
Se pot folosi algoritmi evolutivi pentru antrenare
Cromozomii vor fi vectori (foarte) lungi care
reprezint ponderile i pragurile
Abordarea AE crete flexibilitatea
Funciile de activare nu mai trebuie s fie difereniabile
Fiecare neuron poate avea un alt tip de funcie de activare
Neuronii nu mai trebuie s fie complet conectai
Topologia reelei nu mai trebuie s fie stabilit apriori
AE poate determina att topologia ct i parametrii reelei
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Determinarea topologiei i
antrenarea reelei cu AE
Avantaj: simplitatea abordrii
Algoritmul genetic realizeaz i gsirea topologiei optime i
antrenarea reelei neuronale
Dezavantaj: timp lung de antrenare
Numr mare de gene din cromozoni, fiind codificate att
informaii privind topologia, ct i ponderile conexiunilor i
valorile prag ale neuronilor
Alternativ: gramatici generative
NH/1
NH/2
H
1
W
I-H1
W
H1-O
H1
0
H
1
H
2
W
I-H1
W
H1-H2
W
H2-O
H1
H2
0
NH/1
NH/2
H
1
W
I-H1
W
H1-O
H1
0
H
1
H
2
W
I-H1
W
H1-H2
W
H2-O
H1
H2
0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Considerente practice
Pentru a nu satura funciile sigmoide, ceea ce ar conduce
la scderea vitezei de convergen, intrrile i ieirile sunt
scalate de obicei n intervalul [0.1, 0.9], sau [-0.9, 0.9], n
funcie de tipul de sigmoid folosit
Dac reeaua este utilizat pentru aproximare funcional
i nu pentru clasificare, funcia de activare a neuronilor de
ieire poate fi liniar sau semiliniar (limitat la -1/0 i 1)
n loc de sigmoid
Stabilirea numrului de straturi i mai ales a numrului
de neuroni din fiecare strat este relativ dificil i poate
necesita numeroase ncercri pentru a atinge
performanele dorite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Euristici
Fie:
N numrul de intrri
O numrul de ieiri
H numrul de neuroni din stratul ascuns
(pentru un singur strat ascuns)
H
1
numrul de neuroni din primul strat ascuns i
H
2
numrul de neuroni din al doilea strat ascuns
(pentru 2 straturi ascunse)
Relaia lui Kudrycki: H = 3 O sau H
1
= 3 H
2
Relaia Hecht-Nielsen: H = 2 N +1
Relaia lui Lippmann: H = O (N + 1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Suprafee de decizie
Perceptron Reea cu funcii de baz radial
(engl. Radial Basis Functions, RBF)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Reele RBF
Perceptronii multistrat au o structur greu de
optimizat iar timpul de antrenare este mare
Reelele RBF sunt tot tipuri
de nvare supervizat,
proiectate ca metode de
aproximare funcional
(curve fitting)
Funcia care trebuie
aproximat este considerat
o superpoziie de funcii radiale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Topologie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Prelucrri
Ieirea unui neuron din stratul de ieire este
o combinaie liniar de intrri
Ieirea unui neuron RBF (centru) din stratul
intermediar este funcie de distana dintre
centru i vectorul de intrare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Exemple de funcii radiale
Orice funcie care ndeplinete criteriul:
, unde norma este de obicei
distana euclidian
Funcia gaussian: , >0
Funcia multicuadric: , >0
Funcia spline poliarmonic:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Funcia gaussian
0.5 o =
1.0 o =
1.5 o =
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Funcia multicuadric invers
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
-10 -5 0 5 10
c=1
c=2
c=3
c=4
c=5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
RBF: aproximator universal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Ieirea reelei
De obicei se folosete funcia gaussian
pentru ieirea neuronilor din stratul
intermediar
Deci ieirea reelei, pentru un vector de
intrare x i N centre, este:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Interpretare
Neuronii din stratul intermediar sunt centrele
selectate n spaiul de intrare
Ieirea unui neuron intermediar reprezint
apropierea instanei de intrare de centrul
corespunztor
Dac instana de intrare este n centru, neuronul
genereaz 1
Dac instana este deprtat, ieirea este
apropiat de 0 (dar niciodat 0)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Antrenarea. Cazul 1
Pentru N instane de antrenare (puncte n
spaiul intrrilor), considerm N centre, cu
raze egale date
Trebuie calculate ponderile w
j
Ponderile sunt soluiile unui sistem de N
ecuaii cu N necunoscute
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Selecia deviaiei standard
Euristic: = d
max
/ N
d
max
= distana maxim ntre oricare
2 centre
N = numrul de centre
_
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Antrenarea. Cazul 2
Dac exist N centre, pentru un numr mare de
instane, calculele sunt foarte complexe
Se pot selecta M centre reprezentative, astfel nct
M << N
Rezult un sistem de N ecuaii cu M necunoscute
NxM
W
Mx1
= Y
Mx1
Nu se poate inversa pentru c nu este matrice ptratic
Metoda pseudo-inversei:
T
W =
T
Y
W = (
T
)
-1
T
Y
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Selecia centrelor
Selecie aleatorie
Selecie nesupervizat: clusterizare
Selecie supervizat pe baza gradientului
descendent
urmeaz detalii suplimentare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Antrenarea iterativ
Toate ratele de
nvare pot fi de
exemplu 0.1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Exemplu: XOR, metoda 1
centre n toate instanele
d
max
/ N
_
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Exemplu: XOR, metoda 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
Exemplu: XOR, metoda 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
Exemplu: XOR, metoda 2
alese aleatoriu
aleas arbitrar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
Exemplu: XOR, metoda 2
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Exemplu: XOR, metoda 2
centrele selectate sunt
insuficiente pentru a
nva funcia XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Asocieri
n creierele biologice, memoria lucreaz prin asociere
Putem recunoate o fa cunoscut ntr-un mediu
necunoscut n 100-200 ms
Putem rememora o ntreag experien senzorial, vizual i
auditiv, cnd auzim primele msuri ale unei melodii
Perceptronul multistrat nu lucreaz prin asociere
Pentru emularea acestei capaciti este nevoie de un
alt tip de reea neuronal: o reea recurent
O reea recurent are bucle de reacie de la ieiri
ctre intrri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
93
Stabilitatea
Datorit reaciei (engl. feedback),
stabilitatea reelei devine o problem
Aceasta a fost rezolvat abia n 1982, cnd
John Hopfield a formulat principiul fizic de
stocare a informaiilor ntr-o reea stabil din
punct de vedere dinamic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
94
Reea Hopfield cu un singur strat
i n neuroni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
95
Funcia de activare
Reeaua Hopfield folosete neuroni
McCulloch-Pitts cu funcie de activare semn:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
96
Vectorul de stare
Starea curent a reelei este determinat de
ieirile tuturor neuronilor: y
1
, y
2
, . . ., y
n
Starea unei reele cu un singur strat i n
neuroni este un vector de stare:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
97
Ponderile
Ponderile se reprezint de obicei n form
matriceal:
unde M este numrul de stri care trebuie
memorate, Y
m
este un vector binar
n-dimensional i I este matricea identitate
de dimensiune n x n
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
98
Stri posibile pentru o reea cu 3 neuroni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
99
Exemplu
S presupunem c vrem s memorm
2 stri: (1, 1, 1) i (-1,-1,-1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
100
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
101
Testarea reelei
Actualizarea
neuronilor trebuie
fcut asincron
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
102
Stri stabile i instabile
Aceste 2 stri sunt stabile
Celelalte 6 stri rmase sunt instabile. Strile stabile (numite
amintiri fundamentale) sunt capabile s atrag strile apropiate
Amintirea fundamental (1, 1, 1) atrage strile instabile
(1, 1, 1), (1, 1, 1) i (1, 1, 1)
Fiecare din aceste stri are o singur eroare, n comparaie cu
amintirea fundamental (1, 1, 1)
Amintirea fundamental (1, 1, 1) atrage strile instabile
(1, 1, 1), (1, 1, 1) i (1, 1, 1)
Deci o reea Hopfield are capacitatea de a corecta erorile din
strile prezentate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Amintiri false
103
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
104
Capacitatea de stocare
Capacitatea de stocare este cel mai mare
numr de amintiri fundamentale care pot fi
stocate i regsite corect
Numrul maxim de amintiri fundamentale
M
max
care poate fi stocat ntr-o reea de
n neuroni este limitat de: M
max
= 0.15 n
Pentru a garanta c toate amintirile
fundamentale vor fi regsite perfect,
M
max
= n / (4 ln n)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
105
Reele neuronale (I)
1. Introducere
2. Perceptronul. Regula delta
3. Perceptronul multistrat. Algoritmul
backpropagation. Optimizri
4. Reele cu funcii de baz radial
5. Reeaua Hopfield
6. Memorii asociative bidirecionale
7. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
106
Memorii asociative bidirecionale
Reeaua Hopfield este un tip de memorie
auto-asociativ
Poate regsi o amintire corupt sau incomplet,
dar nu poate asocia o amintire cu o alta
Memoria uman este n mod esenial
asociativ
Un lucru ne amintete de altul .a.m.d.
Putem folosi o succesiune de asociaii mentale
pentru a recupera o amintire pierdut
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
107
Memorii asociative bidirecionale
Pentru a asocia o amintire cu alta, avem nevoie de o reea
recurent capabil s primeasc un vector de intrare ntr-o
mulime de neuroni i s produc un vector de ieire nrudit,
dar diferit, n alt mulime de neuroni
Memoria asociativ bidirecional (engl. Bidirectional
Associative Memory, BAM), propus de Bart Kosko n 1988,
este o reea hetero-asociativ
Poate asocia vectori dintr-o mulime A cu vectori dintr-o mulime B
i viceversa
La fel ca reeaua Hopfield, BAM poate generaliza i poate produce
ieiri corecte n cazul intrrilor corupte sau incomplete
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
108
Funcionarea BAM
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
109
Funcionarea BAM
Cnd vectorul n-dimensional X este prezentat la
intrare, BAM i reamintete vectorul m-dimensional
Y, iar cnd Y este prezentat ca intrare, BAM i
reamintete X
BAM funcioneaz pe baza unei matrice de corelaie
unde M este numrul de vectori care trebuie
memorai
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
110
Funcionarea BAM
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
111
Exemplu: vectorii de stocat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
112
Exemplu: matricea ponderilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
113
Exemplu: testarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
114
Regsirea
Se prezint un vector necunoscut X (diferit de
amintirile fundamentale X
m
)
Se iniializeaz BAM cu X(0) = X
Se calculeaz ieirea la iteraia p:
Y(p) = sign [W
T
x X(p)]
Se actualizeaz vectorul de intrare:
X(p+1) = sign [W x Y(p)]
Se repet procesul pn la echilibru, cnd X i Y
rmn neschimbai ntre 2 iteraii succesive
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
115
Alte exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
116
Discuie
BAM este stabil necondiionat
Orice mulime de asociaii poate fi nvat fr risc de
instabilitate
Numrul maxim de asociaii care pot fi stocate n
BAM nu trebuie s depeasc numrul de neuroni
din stratul mai mic
O problem mai serioas este convergena incorect
BAM nu produce ntotdeauna cea mai apropiat asociaie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
117
Concluzii
Perceptronul lui Rosenblatt folosete regula delta pentru a
nva funcii liniar separabile
Perceptronul multistrat poate aproxima funcii
neseparabile liniar, cu regiuni de decizie complexe; cel mai
utilizat algoritm de antrenare este backpropagation
Perceptronul multistrat construiete o aproximare global
a unei funcii; reelele cu funcii de baz radial
construiesc o serie de aproximri locale ale funciei
Reeaua Hopfield i memoria asociativ bidirecional
permit asocierea vectorilor de intrare-ieire, avnd i
capaciti de corecie a erorilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
12. Reele neuronale (II). nvarea
nesupervizat
Florin Leon
Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare
http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Maini cu vectori suport
engl. Support Vector Machines, SVM
Boser, Guyon & Vapnik (1992)
Vapnik (1995)
Devenite populare datorit succesului n
recunoaterea cifrelor scrise de mn
Eroare 1.1% pe mulimea de test
Fundament teoretic solid
Performane experimentale foarte bune
Muli cercettori consider SVM cea mai bun metod de
nvare supervizat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Limitele suprafeelor de
decizie
S considerm o problem
de clasificare liniar
separabil cu 2 clase
Exist multe limite posibile
Algoritmul perceptronului
poate gsi astfel de limite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Limitele suprafeelor de
decizie
Pot exista mai multe limite de separaie
Care este cea mai bun?
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Margini mici
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
Margine mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Limite de decizie cu
margini mari
Limita de decizie
trebuie s fie ct
mai departe de
datele din ambele
clase
Trebuie s
maximizm
marginea m
h = -1
h = 1
h(x) = g(w
T
x + b)
g(z) = 1 dac z 0
g(z) = -1 dac z < 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Vectori suport
Vectori suport
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Normalizarea
h(x) = g(w
T
x + b); g(z) este -1 sau 1
Doar semnul lui (w
T
x + b) conteaz,
nu i valoarea
Putem normaliza ecuaiile (constrngerile)
astfel ca n limitele care trec prin vectorii
suport ai celor dou clase, w
T
x + b s fie 1,
respectiv -1
Pentru toate punctele celor dou clase
w
T
x
i
+ b 1 dac y
i
= 1
w
T
x
i
+ b -1 dac y
i
= -1
de exemplu: w
1
x
1
+ w
2
x
2
+ b
y
i
este clasa instanei i
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Normalizarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Marginea
Marginea m este proiecia distanei dintre doi
vectori suport x
1
i x
2
pe direcia vectorului w
Valoarea lui m se poate obine de exemplu
scznd ecuaiile lui x
1
i x
2
w x
1
+ b = -1
w x
2
+ b = 1
w (x
2
- x
1
) = 2
m = w / ||w|| (x
2
- x
1
) = 2 / ||w||
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Marginea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Determinarea marginii
Trebuie determinai w i b astfel nct
marginea m = 2 / ||w|| s fie maxim
pentru toate instanele { x
i
, y
i
}
Respectnd constrngerile:
w
T
x
i
+ b 1 dac y
i
= 1
w
T
x
i
+ b -1 dac y
i
= -1
Adic:
y
i
(w
T
x
i
+ b) 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Determinarea marginii
O formulare mai bun a problemei de optimizare:
Minimizarea lui ||w||
2
, respectnd aceleai constrngeri
Problem de optimizare cuadratic
Se poate rezolva de exemplu cu un algoritm evolutiv
sau cu alte metode de optimizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Determinarea marginii
Dar...
SVM este n general utilizat pentru clasificarea unor
date cu foarte multe dimensiuni
De exemplu, n clasificarea textelor sau detecia spam-ului,
frecvenele de apariie ale cuvintelor sunt atributele
Posibil mii de atribute
Teoretic, w poate fi infinit dimensional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Dualitatea Lagrange
Rezolvarea problemei de optimizare
anterioare (problema primar) este
echivalent cu rezolvarea problemei duale
Lagrangian Multiplicatori
lagrangieni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Condiiile Karush-Kuhn-Tucker
Exist w*, * i * (soluiile problemei
primare, respectiv duale), astfel nct:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Problema primar
20
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Problema dual
Aplicm condiiile Karush-Kuhn-Tucker (diferenialele
n raport cu w i b s fie 0) :
21
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Problema dual
nlocuind aceste relaii n formula de mai sus,
vom avea:
22
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Problema dual
trebuie determinai
i
i apoi se pot calcula w i b
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Avantaj
Prin rezolvarea problemei duale se determin
i
0
De fapt, toi
i
sunt 0 cu excepia
multiplicatorilor corespunztori vectorilor
suport
Numrul vectorilor suport este mult mai mic
dect numrul instanelor
n
vs
<< n
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Transformarea datelor
Clasele nu sunt
liniar separabile
z
k
= (x
k
, x
k
2
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Transformarea datelor
Clasele nu sunt
liniar separabile
Clasele devin liniar separabile ntr-un
spaiu cu mai multe dimensiuni
Spaiul atributelor
Spaiul trsturilor
(engl. features)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Nuclee
Transformarea n trsturi
(engl. feature mapping)
Nucleu (engl. kernel)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Trucul nucleului
engl. kernel trick
Cantitatea necesar pentru clasificare este:
Folosind un nucleu:
Calculele depind doar
de perechi (x
1
,x
2
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Trucul nucleului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Trucul nucleului
Deoarece calculele se fac doar n perechi,
nu este nevoie s calculm explicit
trsturile instanelor
Calcularea nucleului unei perechi de
instane poate fi mult mai simpl
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Nuclee uzuale
Nucleul liniar
Nucleul polinomial
Nucleul RBF
Nucleul sigmoid
Parametri: > 0, d, r
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Interpretare
Intuitiv, un nucleu poate fi interpretat ca o msur a
similaritii dintre cele 2 argumente
De exemplu:
Fie (x) o funcie care numr apariiile fiecrei
secvene de lungime k n irul x
(x) este un vector cu 26
k
dimensiuni
Dac lungimea medie a unui cuvnt este de
5 litere, vom avea 12 milioane de dimensiuni
Totui, nucleul poate implementa un algoritm
eficient de string matching
EN 5.10
RO 5.54
FR 5.13
ES 5.22
DE 6.26
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Nuclee valide
Folosind doar nucleul, nu mai este nevoie s
calculm funcia
Nucleul ar putea avea orice form
Trebuie s respecte ns condiia:
K(x,z) = (x)
T
(x),
chiar dac nu cunoatem sau nu ne intereseaz
forma lui
Fie matricea nucleului K o matrice n care
elementele K
ij
= K(x
(i)
, x
(j)
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Teorema lui Mercer
Condiia necesar i suficient pentru ca un
nucleu real s fie valid este ca matricea
nucleului s fie simetric i pozitiv
semidefinit
K
ij
= K
ji
K
ij
0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Cazurile neseparabile liniar
n unele cazuri, datele nu sunt separabile liniar nici
dup transformrile prezentate anterior
Sau datele prezint valori extreme (engl. outliers)
care influeneaz marginea optim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Probleme neseparabile liniar
Putem permite existena unor erori
i
n clasificare
Hiperplanul are acum o margine flexibil (engl. soft margin)
i
se numesc variabile de decalaj (engl. slack variables)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Probleme neseparabile liniar
Problema de optimizare devine:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Parametrul C
Parametrul de cost C este o msur a erorii admise n
clasificare
C controleaz compromisul dintre a permite erori pe
mulimea de antrenare i a fora margini stricte
Creterea valorii lui C mrete costul clasificrii
greite a instanelor i determin crearea unui model
mai precis dar care poate s nu generalizeze bine
Valoarea lui C trebuie aleas de utilizator i depinde
de problem
De cele mai multe ori este n intervalul (0.1, 10000)
De exemplu, poate fi 50, 100
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Problema dual
Oarecum surprinztor, termenii
i
nu apar n
problema dual
Conteaz numai parametrul C care limiteaz
multiplicatorii
i
Pentru instanele neclasificabile, multiplicatorii ar crete
foarte mult i ar determina i apariia unor vectori suport
suplimentari (cu
i
> 0)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Algoritmul SMO
Sequential Minimal Optimization (Platt, 1999)
Scopul su este rezolvarea problemei duale de
optimizare (determinarea
i
)
Este foarte rapid i deci foarte potrivit pentru
optimizarea problemelor de dimensiuni mari cu care
lucreaz de obicei SVM
LibSVM bibliotec pentru SVM
40
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Ideea de baz a SMO
Ideea de optimizare este asemntoare metodei
hill climbing
Se ajusteaz succesiv cte 2 multiplicatori
i
41
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Exemplu
S presupunem c avem 5 instane unidimensionale
x
1
=1, x
2
=2, x
3
=4, x
4
=5, x
5
=6, cu 1, 2, 6 din clasa 1 i
4, 5 din clasa 2 y
1
=1, y
2
=1, y
3
=-1, y
4
=-1, y
5
=1
Folosim nucleul polinomial de grad 2
K(x,y) = (xy+1)
2
Setm C = 100
Mai nti determinm a
i
(i=1, , 5) prin
i constrngerile:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
Exemplu
Rezolvnd problema de optimizare, obinem:
a
1
=0, a
2
=2.5, a
3
=0, a
4
=7.333, a
5
=4.833
Constrngerile sunt satisfcute
Vectorii suport sunt {x
2
=2, x
4
=5, x
5
=6}
Funcia discriminant este:
b se determin prin rezolvarea f(2)=1 sau f(5)=-1 sau
f(6)=1, deoarece x
2
i x
5
sunt pe linia
iar x
4
este pe linia
Toate trei dau b=9
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Exemplu
Valoarea funciei discriminant
1 2 4 5 6
clasa 2
clasa 1 clasa 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Clasificarea cu clase multiple
Mainile cu vectori suport clasice permit
rezolvarea problemelor binare (cu numai
2 clase)
Pentru a trata mai multe clase exist mai
multe metode, dintre care cele mai des
folosite sunt:
Abordarea una versus toate
Abordarea una versus una
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Una versus toate
one-versus-all / one-against-all
Pentru k clase, se creeaz k modele
n modelul cu numrul i, SVM este antrenat cu instanele
din clasa i ca exemple pozitive i toate celelalte instane
(din celelalte clase) ca exemple negative
Pentru a clasifica o nou instan, se apeleaz toate cele k
modele i se alege clasa cu funcia de decizie maxim:
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Una versus una
one-versus-one / one-against-one
Pentru k clase, se creeaz k (k 1) / 2 modele
corespunztoare tuturor perechilor de clase
Pentru a clasifica o nou instan, se apeleaz toate
modelele i fiecare model d un vot pentru apartenena
la o clas
Se alege n final clasa care are cele mai multe voturi
Antrenarea poate fi mai rapid pentru c mulimile de
antrenare sunt mai mici
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Generalizarea
S-a demonstrat c probabilitatea de eroare ateptat pentru
mulimea de test este mrginit:
E[x] = valoarea ateptat pentru x
n
vs
= numrul de vectori suport
P(e) = probabilitatea erorii
l = dimensiunea mulimii de antrenare
Capacitatea de generalizare crete cu ct numrul de vectori
suport este mai mic i mulimea de antrenare mai mare
Rezultatul este independent de numrul de atribute al
instanelor (de dimensiunea spaiului problemei)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Limitri
Principalele probleme care apar la lucrul cu
SVM sunt legate de:
Stabilirea nucleului i a parametrilor si
Stabilirea parametrului de cost C
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
nvarea nesupervizat
Nu exist nicio informaie despre ieirea
dorit
Algoritmul trebuie s descopere singur
relaiile de interes din datele de intrare
Modele, regulariti, corelaii
Relaiile descoperite se regsesc n ieire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
nvarea hebbian
Legea lui Hebb (1949)
Dac 2 neuroni conectai sunt activai n acelai timp,
ponderea conexiunii dintre ei crete
Dac 2 neuroni sunt activai n contratimp, ponderea
conexiunii dintre ei scade
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Generalizare
Regula generalizat a produsului
activitilor
Include un factor de uitare pentru
evitarea creterii nelimitate a ponderilor
De obicei, <
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Algoritmul de nvare hebbian
Pasul 1. Iniializarea
Se iniializeaz ponderile i pragurile cu
valori aleatorii mici, de exemplu n [0,1]
Pasul 2. Activarea
Se calculeaz ieirea neuronilor la iteraia p
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Algoritmul de nvare hebbian
Pasul 3. nvarea
Se actualizeaz ponderile
Pasul 4. Se reia urmtoarea iteraie,
p++, de la pasul 2 pn cnd ponderile
se stabilizeaz
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Exemplu: starea iniial
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Vectori de antrenare
Se consider = 0.1 i = 0.02
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Starea final
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Vector de test
Reeaua a uitat asociaia x
1
cu y
1
, dar a nvat
noile asociaii x
5
cu y
2
i y
5
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Algoritmul Kohonen
engl. Self-Organizing Map, SOM
Harta / transformarea cu auto-organizare
Teuvo Kohonen, 1982
Algoritm de nvare nesupervizat competitiv
nvingtorul ia totul
Neuronii concureaz pentru a fi activai
Bazat pe ideea corespondenelor dintre intrrile
senzoriale i diferitele regiuni ale cortexului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Cortexul uman
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Modelul Kohonen
spaiul de intrare
n-D
spaiul de ieire
2D (sau 1D)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Conexiunile laterale
ntre neuroni exist
conexiuni laterale
Activarea unui neuron
provoac inhibiii sau
excitaii laterale altor
neuroni, n funcie de
distana dintre acetia
Funcia plrie mexican
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
nvarea (I)
Neuronii sunt dispui ntr-o structur regulat:
matrice (2D) sau vector (1D)
Ponderile fiecrui neuron sunt iniializate aleatoriu
Ponderile au aceeai dimensionalitate ca datele de
intrare
Fiecare neuron poate fi reprezentat ca un punct n
spaiul n-dimensional al intrrilor, n funcie de
valorile ponderilor sale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
nvarea (II)
Pentru fiecare vector de intrare, se determin
n spaiul de intrare cel mai apropiat neuron
(conform ponderilor acestuia)
distana euclidian
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
nvarea (III)
Se determin vecinii neuronului
ctigtor n spaiul de ieire
funcia plrie mexican simplificat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
nvarea (IV)
Doar pentru aceti neuroni (neuronul
ctigtor i cei din vecintatea sa), se
actualizeaz ponderile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Efect
Ponderile neuronului
(neuronilor) ctigtori
se deplaseaz puin
ctre vectorul de intrare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Parametri
Rata de nvare are o valoare mic pozitiv
(de exemplu 0.1 sau 0.5)
Mrimea vecintii
j
Alegerea static: de exemplu 2
Alegerea dinamic: la nceput dimensiunea este
jumtate sau o treime din dimensiunea stratului
de ieire (care poate fi de exemplu 10x10 sau
20x20) i apoi scade treptat
De exemplu, dup 10 epoci, dimensiunea scade cu 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Vecinti topologice
1D
2D
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Exemple 2D
Exemplu 2D
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Exemplu 1D
Proiecie 2D 1D
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Alte exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Exemplu de vizualizare
Nivelul de trai n diferite ri
Harta nu arat nivelurile propriu-zise,
ci similaritatea lor: rile cu nivel de trai
asemntor au culori apropiate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Proprieti
Reducerea dimensionalitii
Poate transforma un spaiu n-dimensional ntr-un
spaiu 1D sau 2D
Pstrarea topologiei
Relaiile de similaritate prezente ntre datele
iniiale sunt pstrate i ntre datele rezultate
dup transformare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Aplicaii
Prelucrarea limbajului natural
Codificarea imaginilor
Analiza semnalelor biologice
Vizualizarea rezultatelor analizei datelor
multidimensionale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Partiionarea datelor
engl. clustering
partiionare, grupare, clusterizare (pron. [clasterizare])
Partiionarea reprezint gruparea (de obicei
nesupervizat) a instanelor astfel nct instanele din
acelai grup sunt mai asemntoare ntre ele dect
cu instanele altor grupuri
Similaritatea presupune o msur de distan (de obicei se
folosete distana euclidian iar similaritatea este o funcie
care variaz invers cu distana)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
Partiionarea cu algoritmul
Kohonen
Se utilizeaz un singur neuron nvingtor
Se pornete cu mai muli neuroni ale cror ponderi
au valori mici, apropiate de 0
Pentru fiecare vector de intrare x
i
, se actualizeaz
ponderile neuronului nvingtor
w
r
= w
r
+ (x
i
- w
r
)
La sfritul procesului, numai civa vectori de
ponderi se dezvolt iar acetia indic centrele de
greutate ale grupurilor (clusterelor) descoperite
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
Partiionarea cu algoritmul
Kohonen
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Reele neuronale (II). nvarea
nesupervizat
1. Maini cu vectori suport
2. Reele cu auto-organizare
2.1. nvarea hebbian
2.2. Algoritmul Kohonen
3. Partiionarea cu algoritmul k-medii
4. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
82
Partiionarea k-medii
engl. k-means (Steinhaus, 1956; MacQueen, 1967)
k reprezint numrul de grupuri
Este un parametru de intrare ales de utilizator
Algoritmul grupeaz mulimea de instane numerice n
k grupuri (clustere)
Rezultatul algoritmului este minimizarea sumei
erorilor ptratice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Algoritmul
Se iniilizeaz aleatoriu cele k medii (centre) iniiale
Se atribuie fiecrui centru instanele cele mai apropiate de el
Se calculeaz centrul de greutate (media aritmetic) a tuturor
instanelor atribuite unui centru i se actualizeaz poziia
centrului grupului respectiv
Se repet cei doi pai pn cnd nu se mai modific poziia
niciunui centru
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Exemplu
84
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Segmentarea imaginilor
Imaginea din dreapta este rezultatul
partiionrii cu 3 grupuri corespunztoare
nivelurilor de gri din imaginea din stnga
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
87
Probleme (I)
Grupurile vide
Abordarea 1. Centrele iniiale se pot alege n nite instane
existente, astfel nct fiecare centru s aib cel puin o
instan atribuit
Abordarea 2. Dac iniial exist un centru de grup vid, se
alege un alt centru n instana cea mai deprtat de toate
celelalte centre
Valorile extreme (engl. outliers)
Acestea pot influena rezultatele gruprii
nainte de partiionare, se pot elimina acestea (n faza de
pre-procesare a datelor)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
88
Probleme (I)
Viteza de cutare
Pentru determinarea instanelor celor mai
apropiate de un centru se pot utiliza metodele
kd-tree sau ball-tree
Convergena
Algoritmul converge, dar gsete de obicei un
minim local al funciei de eroare
Forma grupurilor
Algoritmul d rezultate bune dac grupurile sunt
convexe i mai ales de form aproximativ sferic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
89
Calitatea partiionrii
n funcie de alegerea centrelor iniiale,
rezultatele finale pot diferi mult
O msur a calitii partiionrii este
coeficientul de siluet
Scopul este maximizarea similaritii
intra-grup i minimizarea similaritii
inter-grup
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
90
Calcularea coeficientului
Pentru o instan, se calculeaz:
a
i
distana medie fa de instanele din acelai
grup
b
i
distana minim fa de orice instan din
orice alt grup
Coeficientul de siluet al instanei i este:
s
i
= (b
i
- a
i
) / max(a
i
, b
i
)
Coeficientul de siluet al unui cluster este
media coeficienilor instanelor
Partiionarea este mai bun cnd s
i
este mai
mare, aproape de 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
91
Exemplu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
92
Concluzii
Mainile cu vectori suport sunt una dintre cele
mai eficiente metode de clasificare
Algoritmul Kohonen este inspirat din
cercetrile neurobiologice i ncorporeaz
mecanisme proprii auto-organizrii, precum
competiia i cooperarea
Algoritmul k-medii este unul dintre cei mai
populari algoritmi de partiionare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
13. nvarea cu ntrire
Florin Leon
Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare
http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Tipuri de nvare
nvarea supervizat
Date de antrenare: (A, c) atribute, clas
Scopul este predicia lui c i minimizarea erorii
Regresie, clasificare
nvarea nesupervizat
Date de antrenare: X numai atributele
Scopul este determinarea unor puncte similare n
spaiul multidimensional cu |X| dimensiuni
Partiionare (clusterizare, grupare)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
nvarea cu ntrire
engl. reinforcement learning
Agentul trebuie s nvee un comportament
fr a avea un instructor
Agentul are o sarcin de ndeplinit
Efectueaz nite aciuni n mediul de execuie
Ulterior, primete un feedback (reacia mediului)
privind ct de bine a acionat n vederea
ndeplinirii sarcinii
Agentul urmrete ndeplinirea aceleiai sarcini n
mod repetat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
nvarea cu ntrire
Aceast modalitatea de nvare se numete
nvare cu ntrire
Agentul primete o recompens (ntrire pozitiv)
dac ndeplinete bine sarcina
Agentul primete o pedeaps (ntrire negativ)
dac ndeplinete ru sarcina
Experiena este un profesor dur pentru c
nti i d testul i abia apoi i pred lecia
(Vernon Law)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Modelul de interaciune
Agentul
Efectueaz aciuni
Mediul
Acord recompense
i prezint agentului
situaii numite stri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
nvarea cu ntrire
Scopul este de a determina agentul s acioneze
astfel nct s-i maximizeze recompensele
Agentul trebuie s-i dea seama ce secven de
aciuni conduce la ndeplinirea sarcinii
Datele de antrenare:
(S, A, R) Stare, Aciune, Recompens
Aciunile pot afecta i recompensele ulterioare,
nu numai pe cele imediate (efect ntrziat)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Gruk
Der findes en
visdommens vej -
det er dn, som br
vre let at erindre:
dum dig og dum dig
og dum dig igen,
men mindre og
mindre og mindre.
The road to
wisdom? - Well, it's
plain and simple to
express: err and err
and err again but
less and less and
less.
Piet Hein (1905-1996), inventator i poet danez
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
2.1. Iterarea valorilor
2.2. Iterarea politicilor
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Decizii secveniale
Mediu determinist:
(sus, sus, dreapta, dreapta, dreapta)
Mediu stohastic:
model de tranziii T(s, a, s) probabilitatea de a ajunge din
starea s n starea s efectund aciunea a
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Presupunerea Markov
Starea curent X
t
depinde doar de o istorie
finit a strilor anterioare
Procese Markov de ordin nti: starea curent
X
t
depinde doar de starea anterioar X
t-1
P(X
t
| X
t-1
, , X
0
) = P(X
t
| X
t-1
)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Proces de decizie Markov
Starea iniial S
0
Modelul de tranziii T(s, a, s)
Funcia recompens R(s)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Definiii
O soluie la o astfel de problem de cutare se numete politic
(engl. policy) i se noteaz
Traduceri alternative pentru policy: tactic sau strategie
(s) este aciunea recomandat n starea s
Politica este o descriere a unui reflex
Politica este definit pentru toate strile: ce aciune trebuie s fac
agentul n orice stare s-ar afla
Se numete utilitate suma recompenselor pentru o secven
de stri
Recompensa este ctigul pe termen scurt
Utilitatea este ctigul total pe termen lung
Mediu stohastic: utilitate ateptat
Politica optim *: maximizeaz utilitatea ateptat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Exemple de politici
R(s) = recompensa
n fiecare stare
neterminal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Staionaritate
Orizont finit
U
h
([s
0
, s
1
, ..., s
N+k
]) = U
h
([s
0
, s
1
, ..., s
N
])
Dup momentul N nu mai conteaz nimic
N=3 trebuie s rite
N=100 poate alege soluia
mai sigur
Politica optim este nestaionar
history
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Staionaritate
Orizont infinit
Politica optim este staionar
Recompense aditive
U([s
0
, s
1
, s
2
, ]) = R(s
0
) + R(s
1
) + R(s
2
) +
Recompense actualizate (engl. discounted)
U([s
0
, s
1
, s
2
, ]) = R(s
0
) + R(s
1
) +
2
R(s
2
) +
[0,1] este factorul de actualizare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Evaluarea unui orizont infinit
Trebuie s ne asigurm c utilitatea unei secvene posibil
infinite este finit
Abordarea 1. Dac recompensele sunt mrginite i < 1 atunci:
Abordarea 2. Dac mediul conine stri terminale i se
garanteaz faptul c agentul va atinge una din ele (= politic
adecvat, engl. proper policy), putem utiliza = 1
Abordarea 3. Compararea recompenselor medii (pentru fiecare
pas)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
Evaluarea unei politici
Fiecare politic genereaz secvene multiple
de stri
Datorit incertitudinii tranziiilor T(s, a, s)
Valoarea unei politici este suma ateptat a
tuturor recompenselor observate dup toate
secvenele posibile de stri
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Iterarea valorilor
engl. value iteration
Algoritm pentru calcularea unei politici optime
Se calculeaz utilitatea fiecrei stri
n mod iterativ, se atribuie valorile corecte pentru
utiliti
Se folosesc utilitile strilor pentru selectarea
unei aciuni optime n fiecare stare
Se alege starea cu cea mai mare utilitate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Utilitile strilor
Utilitatea unei stri s este utilitatea
ateptat a secvenei de stri
urmtoare
Secvena este determinat de (s)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Exemplu
Fie g = 1 i R(s) = -0.04
lng scop utilitile
sunt mai mari
pentru c este
nevoie de mai puini
pai cu recompens
negativ pentru
atingerea strii
respective
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Ecuaia Bellman
Ecuaia Bellman (1957)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
Politica optim
Utilitatea unei stri este recompensa imediat
pentru acea stare plus utilitatea ateptat a strii
urmtoare
Politica optim alege aciunea care conduce n
starea cu cea mai mare utilitate ateptat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Exemplu
Se consider rezultatele
tuturor aciunilor posibile
pentru a selecta aciunea cea
mai bun i a atribui utilitatea
sa ateptat urmtoarei stri
din ecuaia Bellman
Exemplu: utilitatea strii (1,1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Rezolvarea unui proces de
decizie Markov
n stri posibile
n ecuaii Bellman (una pentru fiecare stare)
n ecuaii cu n necunoscute: U(s)
Nu se poate rezolva ca sistem de ecuaii
liniare datorit funciei max
Trebuie rezolvat iterativ
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Algoritmul iterrii valorilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Convergena
c = / R
max
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
http://people.cs.ubc.ca/~poole/demos/mdp/vi.html
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
Iterarea politicilor
engl. policy iteration
Dac o aciune este n mod evident mai bun dect
toate celelalte, nu avem nevoie de valorile exacte ale
utilitilor
Algoritmul alterneaz 2 pai:
Evaluarea politicii: calcularea utilitilor tuturor strilor
pe baza politicii
i
mbuntirea politicii: calcularea unei noi politici
i+1
pe baza utilitilor U
i
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Evaluarea politicii
Sistem de n ecuaii liniare cu n
necunoscute
Se poate rezolva exact n O(n
3
) sau
aproximativ mai repede
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
mbuntirea politicii
Se cunosc toate U(s)
Se calculeaz pentru fiecare s:
Aceasta este aciunea optim a
i
*(s)
Dac a
i
*(s)
i
(s), se actualizeaz politica:
i+1
(s) = a
i
*(s)
Se pot actualiza doar prile promitoare
ale spaiului de cutare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Algoritmul iterrii politicilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
3.1. Estimarea direct a utilitii
3.2. Programarea dinamic adaptiv
3.3. nvarea diferenelor temporale
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
nvarea cu ntrire
Proces de decizie
Markov
Mulimea de stri S,
mulimea de aciuni A
Modelul de tranziii
T(s, a, s') cunoscut
Funcia recompens
R(s) cunoscut
Calculeaz o politic
optim
nvarea cu ntrire
Se bazeaz pe
procese de decizie
Markov, dar:
Modelul de tranziii
este necunoscut
Funcia recompens
este necunoscut
nva o politic
optim
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Exemple
Medii complexe pentru care nu se pot stabili
probabilitile i recompensele
Jocuri: spaiu uria de stri
Se poate spune doar la sfrit dac recompensa este
pozitiv (s-a ctigat) sau negativ (s-a pierdut)
Mediul fizic: roboi, elicoptere
Recompense negative doar pentru deviere de la curs,
cltinare, prbuire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Tipuri de nvare cu ntrire
Pasiv sau activ
Pasiv: agentul execut o politic fix i o evalueaz
Activ: agentul i actualizeaz politica pe msur ce
nva
Bazat pe model sau fr model
Bazat pe model: nva modelul de tranziii i
recompense i l folosete pentru a descoperi politica
optim
Fr model: descoper politica optim fr a nva
modelul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
nvarea pasiv
nvarea pasiv este o modalitate de explorare a mediului
De exemplu un robot cu scopul de a trece prin toate strile mediului
Evalueaz ct de bun este o politic
nva utilitatea U
(s)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Estimarea direct a utilitii
Exemplu prima ncercare produce:
n starea (1,1) recompensa total 0.72
n starea (1,2) dou recompense totale 0.76 i 0.84
n starea (1,3) dou recompense totale 0.80 i 0.88
Utilitatea unei stri este recompensa total ateptat
de la acea stare nainte
Utilitatea estimat poate fi media valorilor eantionate
U(1,1) = 0.72, U(1,2) = 0.80, U(1,3) = 0.84 etc.
Este o problem de nvare supervizat
Se creeaz un model U(S) f(S)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Estimarea direct a utilitii
Utilitatea unei stri depinde de utilitile
strilor succesoare (constrngerile date de
ecuaiile Bellman)
Estimarea direct a utilitii ignor aceast
informaie
Cutarea se face ntr-un spaiu mult mai mare
dect cel necesar de fapt
Convergena este foarte lent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Programarea dinamic adaptiv
Se folosesc ecuaiile Bellman
Trebuie estimate T(s, (s), s) i R(s)
din ncercri
Frecvenele tranziiilor i mediile recompenselor
Probabilitile i recompensele nvate se
introduc n ecuaiile Bellman
Se rezolv sistemul de ecuaii liniare cu
necunoscutele U
(S)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
43
nvare cu ntrire pasiv cu PDA
t este o stare
avnd aproximrile pentru
T, R i , se determin
utilitile ca la PDM
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
44
Convergena
agentul ntlnete prima
dat starea cu R = 1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
45
Programarea dinamic adaptiv
PDA este un standard de comparare pentru
ali algoritmi de nvare cu ntrire
PDA este ineficient dac spaiul strilor este
mare
Sistem de ecuaii liniare de ordin n
Jocul de table: 10
50
ecuaii cu 10
50
necunoscute
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
nvarea diferenelor temporale
engl. Temporal Differences
Combin avantajele ambelor abordri anterioare: estimarea
direct a utilitii i programarea dinamic adaptiv
Actualizeaz doar strile direct afectate
Satisface aproximativ ecuaiile Bellman
Exemplu:
Dup prima ncercare, U(1,3) = 0.84, U(2,3) = 0.92
Fie tranziia (1,3) (2,3) n a doua ncercare
Dac ar fi determinist, atunci U(1,3) = -0.04 + U(2,3) = 0.88
ns tranziiile sunt stohastice i nu se cunoate modelul
Estimarea este mai mic i trebuie mrit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
nvarea diferenelor temporale
Diferenele temporale propun un compromis
(ecuaia DT):
DT aplic o serie de corecii pentru a converge la
ecuaiile Bellman
Corecia are loc proporional cu probabilitile
Actualizarea pentru s va avea loc n T(s, (s), s) din cazuri
Rata de nvare determin viteza de convergen
la utilitatea real
Metoda DT nu are nevoie de model pentru a realiza
actualizrile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Rata de nvare
Dac este fix, atunci valoarea medie a lui U
(s)
converge la valoarea corect
Dac
s
descrete pe msur ce numrul de vizitri n
ale unei stri crete, atunci chiar U(s) converge la
valoarea corect
Convergena este garantat dac:
Funcia
s
(n) = 1/n satisface aceast condiie
De multe ori se folosete funcia
s
(n) = 1/(1+n) (0,1]
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
nvare cu ntrire pasiv cu DT
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Convergena
la PDA era aproximativ 100
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Discuie
DT nu au nevoie de model, PDA este bazat
pe model
DT actualizeaz succesorul observat i nu toi
succesorii
Diferenele scad pe msur ce numrul de
ncercri crete
DT converg mai lent, dar execut calcule mai
simple
DT pot fi vzute ca o aproximare a PDA
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Euristici pentru PDA
Baleierea prioritar (engl. prioritized sweeping)
Se ajusteaz cu precdere strile ai cror succesori
probabili tocmai au suferit o modificare mare a
utilitilor estimate
Prin folosirea euristicilor, numrul de secvene de
antrenare devine aproximativ egal pentru PDA i
PDA aproximativ, ns ultima efectueaz
calculele cu ordine de magnitudine mai eficient
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
4.1. Explorare i exploatare
4.2. Algoritmul Q-Learning
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
nvarea pasiv
Folosind nvarea pasiv, sunt nvate
utilitile strilor i probabilitile tranziiilor
Aceste utiliti pot fi introduse n ecuaiile
Bellman
Ecuaiile Bellman furnizeaz soluiile optime dac
primesc utilitile i funciile de tranziie corecte
ns nvarea cu ntrire pasiv produce estimri
aproximative ale acestora
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
nvarea activ
Agentul activ i actualizeaz politica pe msur ce
nva
Scopul este s nvee politica optim pentru maximizarea
utilitii
ns funcia de utilitate nu este cunoscut dect aproximativ
Dilema agentului
S i maximizeze utilitatea pe baza cunotinelor curente
sau
S ncerce s i mbunteasc aceste cunotine
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Exploatarea i explorarea
Abordarea pasiv genereaz un agent greedy
Modelul nvat este diferit de mediul real
Compromis
Exploatare
Agentul oprete nvarea i execut aciunile date de
politic
Maximizarea recompenselor folosind estimrile curente
Explorare
Agentul nva ncercnd aciuni noi
Maximizarea recompenselor pe termen lung
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Explorare sau exploatare?
Agentul trebuie s favorizeze explorarea strilor
i aciunilor necunoscute sau exploatarea strilor
i aciunilor despre care tie deja c i aduc
recompense mari
Soluii pentru dilem
Metoda -greedy
Alte metode GLIE (greedy in the limit of infinite exploration)
O metod GLIE trebuie s ncerce fiecare aciune n fiecare stare
de un numr nelimitat de ori
n final trebuie s devin greedy
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Metoda -greedy
Fie [0,1]
Aciunea urmtoare selectat va fi:
O aciune aleatorie cu probabilitatea
Aciunea optim cunoscut cu probabilitatea 1
Implementare
Iniial = 1 (explorare pur)
Cnd se termin un episod de nvare, scade, de exemplu
cu 0.05 (crete progresiv rata de exploatare)
nu scade niciodat sub un prag, de exemplu 0.1
Agentul are mereu o ans de explorare, pentru a evita
optimele locale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Exploatarea i explorarea
Exploatare pur
De obicei genereaz
politici suboptime
Explorare pur
nva modele din ce n
ce mai bune, dar
recompensele sunt mici
n-armed bandit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
Metod GLIE alternativ
Se acord ponderi mai mari aciunilor nencercate frecvent
Se acord ponderi mai mici aciunilor cu utilitate mic
Se modific ecuaiile Bellman folosind utilitile optimiste U
+
(s)
Funcia de explorare f(u,n)
Crete cu utilitatea ateptat u
Scade cu numrul de ncercri n
Exemplu:
Se ncurajeaz aciunile ctre regiuni neexplorate
Ofer convergen mai bun i politici aproape optime
numrul de
aplicri ale
aciunii a n
starea s
estimare
optimist a
celei mai mari
recompense
care poate fi
obinut n
orice stare
parametru
fix
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Algoritmul Q-Learning
Algoritmul Q-Learning (Watkins, 1989)
nva o funcie aciune-valoare Q(a,s)
Utilitile
Ecuaiile de constrngere la echilibru
Este o metod DT fr model
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Actualizrile se fac de fiecare dat cnd
aciunea a aplicat n s duce n s
Coeficientul de nvare determin viteza
de actualizare a estimrilor
De obicei, (0,1)
Q-Learning este mai lent dect PDA
Compromis: lipsa modelului vs. cunoatere
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Algoritmul Q-Learning
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
http://people.cs.ubc.ca/~poole/demos/rl/q.html
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
nvarea cu ntrire
1. Introducere
2. Procese de decizie Markov
3. nvarea pasiv
4. nvarea activ
5. Optimizri
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Aproximarea funciilor
Problemele reale au spaii foarte mari
Jocul de table are 10
50
stri
Modelul este greu de memorat
PDA memoreaz T(s, a, s), N(a, s)
DT, QL memoreaz U(s), respectiv Q(a, s)
Utilitile se pot aproxima cu funcii parametrice
f
i
sunt funcii de baz
Rezult o compresie semnificativ (pentru table 1:10
44
)
nvarea modelului aproximativ ajut generalizarea
Se pot aproxima utilitile strilor vizitate
Se pot prezice utilitile strilor nevizitate
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Exemplu
Pentru problema prezentat cu 4x3 stri
utilitatea aproximat utilitatea observat eroarea
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Actualizarea parametrilor
parametrii se actualizeaz
la fiecare pas / observaie
schimbarea parametrilor la
un moment dat modific
toate utilitile
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Alegerea funciei
Funcia de aproximare liniar a utilitilor
trebuie s fie o funcie liniar de parametri
Trsturile pot fi funcii neliniare arbitrare de
variabile de stare
Pentru exemplul anterior, se poate include un
termen care s msoare distana fa de scop
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
nvarea aproximrilor
Actualizrile pentru DT
Actualizrile pentru Q-learning
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Cutarea politicii
Reprezint politica drept o funcie parametrizat
Actualizeaz parametrii pn cnd politica se mbuntete
Reprezentare simpl:
Se ajusteaz pentru a se mbunti politica
este o funcie neliniar de , discontinu pentru aciuni discrete
Actualizrile pe baza gradienilor nu sunt posibile
Reprezentarea stohastic a politicii:
D probabiliti de aciune
Apropiat de varianta determinist dac a este mult mai bun
dect alte aciuni
Politica devine o funcie difereniabil de
Politica difereniabil poate fi optimizat cu metode bazate pe
gradient sau cu metode empirice, de exemplu hill-climbing
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Aplicaii
Dame Arthur Samuel (1959, 1967)
TD-Gammon (joc de table) Gerry Tesauro (1992)
Dup 300.000 de jocuri cu el nsui, a atins performane de campion mondial din top 3
Pendulul inversat
Algoritmul Boxes Michie & Chambers (1968)
n prezent: pendulul inversat triplu
Stabilirea preurilor, livrarea produselor
n general probleme pentru care este dificil determinarea apriori a
unor reguli de rezolvare
Jocuri: table, solitaire, dame, ah
Controlul roboilor sau al altor echipamente
List de aplicaii de succes
http://umichrl.pbworks.com/w/page/7597597/Successes-of-Reinforcement-Learning
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Aplicaii
Algoritmul Pegasus (Ng & Jordan, 2000):
zbor autonom al unui elicopter
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Concluzii
nvarea cu ntrire este necesar pentru agenii care
evolueaz n medii necunoscute
nvarea pasiv presupune evaluarea unei politici date
nvarea activ presupune nvarea unei politici optime
Aproximarea funciilor este necesar pentru probleme cu
spaii mari de stri
n lumea real exist numeroase aplicaii bazate pe
tehnica nvrii cu ntrire
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Inteligen artificial
14. Viaa artificial
Florin Leon
Universitatea Tehnic Gh. Asachi Iai
Facultatea de Automatic i Calculatoare
http://florinleon.byethost24.com/curs_ia.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
2
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
3
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
4
Termenul ALife
Propus la un workshop organizat de Los
Alamos National Laboratory, 1987
Domeniul ncearc s mbine cercetrile
multidisciplinare cu privire la modelrile i
simulrile biologice
Aceste fenomene sunt neliniare, ceea ce
poate conduce la:
Haos: schimbri mici n condiiile iniiale produc
diferene mari la rezultate
Trsturi de nivel superior: emergen, atractori
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
5
Caracteristicile simulrilor ALife
Abordare bottom-up
Control local
Reguli simple de aciune
Modele multi-agent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
6
Viaa natural i viaa artificial
Dicionarul Webster:
Viaa este condiia general care distinge
organismele de elementele anorganice i
de organismele moarte, manifestat prin:
cretere pe baza metabolismului
mijloace de reproducere
reglaj intern ca rspuns la mediu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
7
Scopurile vieii artificiale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
8
VA i IA
Viaa artificial este pentru biologie ceea ce
inteligena artificial este pentru psihologie
Simulrile bazate pe ageni sunt interesante
i pentru sociologie i psihologie social
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
9
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
10
Sisteme complexe
Sunt sisteme dinamice alctuite din
componente similare, cu o structur relativ
simpl
Componentele interacioneaz dup reguli
locale, de asemenea simple (uor de neles)
Comportamentul global al unui astfel de
sistem este emergent
Nu poate fi estimat apriori pe baza regulilor locale
i nu poate fi explicat uor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
11
Automate celulare
engl. cellular automata
Mediul este o latice, o mulime discret de celule
alturate
Timpul este de asemenea discret
Celulele au o serie de proprieti care se pot modifica
n timp (au stare)
Starea unei celule la momentul t+1 depinde de
starea proprie i de starea altor celule vecine la
momentul t
Actualizrile strilor se fac n paralel
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
12
Exemplu
Automat celular unidimensional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
13
Exemplu
Automat celular bidimensional
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
14
Tipuri de mediu
infinit
limite fixe, cu stri
predefinite
limite reflective,
influeneaz numai
celulele interioare
periodic
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
15
Exemplu
XOR
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
16
Rezultate
Configuraie simetric,
128 de pai
Configuraie iniial aleatorie,
apar totui modele n evoluie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
17
Jocul vieii
engl. Game of Life, Conway (1970)
Automat celular bidimensional
Fie n numrul de vecini vii ai unei celule
Reguli:
Dac n < 2, celula moare de singurtate
Dac n > 3, celula moare de supra-aglomerare
Dac n = 3, celula renate (se nate o nou celul)
Altfel, celula i pstreaz starea anterioar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
18
Modele emergente
Modele statice
Modele oscilante
Modele glisante
Modele de dezvoltare
Modele instabile
(neperiodice)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
19
http://florinleon.byethost24.com/home/prog_jt.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
20
Proprietatea de calcul universal
Capacitatea de a putea calcula tot ce poate fi calculat
Maina Turing
Automatele celulare
Memorie: modelele statice
Numrtoare: modelele oscilante
Flux de informaii: modelele glisante
Nu se poate spune dac o anumit configuraie va
genera n timp configuraia nul sau va evolua ntr-o
configuraie stabil sau periodic
Problema opririi la Maina Turing: nu se poate prezice dac
pentru o anumit intrare, un algoritm se va termina sau va
rula la infinit
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
21
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
22
Sisteme Lindenmeyer
engl. Lindenmeyer systems, L-systems
Propus iniial ca formalism matematic pentru
modelarea creterii plantelor (Aristid
Lindenmeyer, biolog, 1968)
Sistem de producie
+ rotete dreapta
- rotete stnga
[ salveaz poziia i unghiul
] reface poziia i unghiul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
23
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
24
LOGO
Turtle graphics
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
25
Exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
26
Exemple
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
27
Modele 3D
ment traista ciobanului
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
28
Fractali
Structuri auto-similare
la scri multiple
O poriune mic
dintr-un fractal arat
la fel ca ntregul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
29
Exemple
Ferig fractal Model al sistemului vascular
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
30
http://florinleon.byethost24.com/home/prog_gf.htm
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
31
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
32
Albinele: cutarea hranei
Colectarea hranei depinde de timpul de
ateptare la livrarea hranei n stup
Dac stupul are deja mult hran, albinele care o
depoziteaz au nevoie de mai mult timp pentru a
gsi celule goale
Timpul de ateptare mai mare determin albinele
colectoare s caute hran de calitate mai bun,
mai greu de gsit i care necesit deci mai mult
timp
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
33
Viespile: diferenierea rolurilor
Organizarea: un singur ef, un grup de cuttori de
hran i un grup de ngrijitori ai larvelor
Toate rolurile sunt ocupate de viespi identice din punct de
vedere genetic
Fiecare viespe are doi parametri:
For determin mobilitatea
Pragul de cutare probabilitatea de a merge s caute
hran (prag mai mic probabilitate mai mare)
Larvele au un parametru Cerere, care stimuleaz
cuttorii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
34
Viespile: diferenierea rolurilor
Cnd 2 viespi se ntlnesc, are loc o confruntare, cu probabilitatea de
succes:
Cnd larvele primesc hran, Cererea scade
Cutarea hranei scade Cererea i deci i stimularea de a cuta hran
eful se plimb prin cuib i confrunt alte viespi, astfel nct
echilibreaz variabilele din cadrul populaiei
Auto-organizare prin interaciuni repetate:
Cuttori: For mare i Prag de cutare mic
ngrijitori: For mic i Prag de cutare mare
ef: For mare i Prag de cutare mare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
35
Termite: construirea muuroiului
Termitele depun resturi de metabolizare,
care conin feromoni
Alte termite vor depune resturi lng
grmezile cu feromoni mai puternici
Concentraia de feromoni scade n timp
La nceput apar depozite distribuite aleatoriu
Apoi apar coloane
Coloanele se unesc prin arce
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
36
Furnicile: sortarea
Furnicile au tendina s grupeze hrana, larvele
Dac se distribuie coninutul unui muuroi pe o suprafa
plan, lucrtoarele ncep s sorteze hrana i larvele
Reguli:
Furnicile vd numai obiectele apropiate din fa
Dac un obiect este departe de altele, probabilitatea de
a fi ridicat este mare; dac sunt prezente i alte obiecte,
probabilitatea este mic
Probabilitatea de a pune jos un obiect crete dac n
apropiere sunt i alte obiecte similare
f este fraciunea de
obiecte similare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
37
Rezultate
timp
simulare furnici reale
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
38
Cooperarea
Comportamentul cooperant al speciilor mai
evoluate poate fi simulat ca o trstur
emergent a interaciunilor individuale
Strategia unui individ de a da napoi att ct a
primit de la altul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
39
Optimizarea rutei
Stigmergie
O form de comunicare indirect prin modificarea mediului
Urme de feromoni
Probabilitatea de a alege o rut depinde de concentraia de
feromoni
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
40
Ant-Based Control
Hewlett-Packard, British Telecom: aplicarea
ideii pentru echilibrarea ncrcrii i rutarea
mesajelor n reele de telecomunicaii
Se creeaz n continuu ageni / furnici n
fiecare nod i li se atribuie destinaii aleatorii
Urmele de feromoni contribuie la actualizarea
tabelelor de rutare
Probabilitile de alegere a unui nod vecin
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
41
Ant-Based Control
pentru nodul de unde a venit furnica
pentru celelalte intrri
furnicile mbtrnesc
i depun mai
puini feromoni
p scade n timp
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
42
Ant Colony Optimization
Optimizarea de tip colonie de furnici
Metod probabilistic pentru rezolvarea unor
probleme care pot fi reduse la gsirea unor ci n
grafuri
Caracteristici:
Mulime de indivizi cooperani
Comunicare prin stigmergie
Indivizii descoper calea de la starea iniial la starea final
(soluia problemei)
Deciziile sunt locale i stohastice
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Parcurgerea grafului
Iniial, m furnici sunt plasate aleatoriu n
m noduri
n fiecare iteraie t, fiecare furnic k se mut
din nodul i n nodul j, reprezentnd o soluie
intermediar mai complet
Alegerea este stohastic, pe baza nivelului de
feromoni
ij
al arcului (i,j) i a atractivitii
ij
a arcului
43
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Selecia unui arc
ij
este n general o funcie de lungimea
arcului, de obicei
ij
= 1 / d
ij
0, 1
N
i
k
este o vecintate fezabil a furnicii k,
adic mulimea nodurilor nevizitate nc
44
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
Actualizarea feromonilor
este persistena urmei de feromoni iar (1 )
este rata de evaporare, 0 < 1
este cantitatea de feromoni depozitat de
furnica k pe arcele traversate
L
k
(t) este lungimea turului furnicii k
45
dac arcul (i,j) este traversat de furnica k n iteraia t
altfel
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
46
Probleme tipice
Problema comis-voiajorului
Atribuirea cuadratic
Job-shop scheduling
Rutarea vehiculelor
Cea mai scurt supersecven comun
Colorarea grafurilor
Ordonarea secvenial
Reele de comunicaii
Pentru explicaii, vezi suportul de curs
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
47
Boids
Simuleaz un stol de psri (Reynolds, 1987)
Reguli:
Apropierea de centrul de greutate al vecinilor
Evitarea coliziunilor cu vecinii
Potrivirea vitezei cu aceea a vecinilor
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
48
Pseudocod
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
49
Regula 1: Apropierea
se mut 1% nspre centru
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
50
Regula 2: Evitarea coliziunilor
se dubleaz distana
dintre 2 boids,
separare lin
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
51
Regula 3: Potrivirea vitezei
se adaug o fracie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
52
Comportament
Comportamentul de stol este emergent
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
53
Particle Swarm Optimization
Optimizarea de tip roi de particule
Metod de optimizare bazat pe indivizi care
imit comportamentul stolurilor de psri sau
roiurilor de insecte (Kennedy & Eberhart,
1995)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
54
Algoritmul PSO
Fiecare particul are:
x
i
: poziia curent
v
i
: viteza curent
y
i
: poziia personal cea mai bun
y
^
i
: poziia cea mai bun a vecintii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
55
Iniializarea
Pentru fiecare particul, se iniializeaz
aleatoriu poziiile x
i
i vitezele v
i
Iniial, vitezele pot fi setate la 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
56
Ajustrile (I)
Se evalueaz funcia obiectiv a particulei, f(x
i
)
Se actualizeaz optimul personal
Problem de minimizare
Se calculeaz optimul social (al vecintii)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
57
Ajustrile (II)
Pentru fiecare dimensiune, se actualizeaz
viteza
Se actualizeaz poziia curent
Se repet paii pn este satisfcut un
criteriu de convergen
ponderea ineriei componenta cognitiv componenta social
c
1,2
- constante de acceleraie r
1,2
- numere aleatorii n (0,1)
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
58
Variante
Varianta prezentat este global: gbest
n varianta local, lbest, se consider mai multe
vecinti posibil suprapuse
Vecintatea poate fi definit de indicii particulelor sau de
poziiile lor
y
^
i
se calculeaz pentru fiecare vecintate
Abordarea lbest conduce la o diversitate mai mare, dar este
mai lent dect abordarea gbest
Criterii de convergen
Numr maxim de iteraii
Actualizri ale vitezelor apropiate de 0
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
59
Parametrii
Ponderea ineriei w definete compromisul ntre explorare i
exploatare
O valoare mai mic scade viteza particulelor mai mult
exploatare
O valoare mai mare crete viteza particulelor mai mult
explorare
Pentru a asigura convergena algoritmului:
Viteza poate fi limitat la un V
max
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
60
PSO i AE
Asemnri i deosebiri ntre Particle Swarm
Optimization i Algoritmii evolutivi:
Indivizii din PSO au funcii obiectiv
Ajustrile sunt asemntoare cu ncrucirile
PSO este inspirat de comportamentul social,
nu de selecia natural
Indivizii din PSO au memorie
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
61
Avantaje
PSO este un algoritm continuu, AE pot fi discrei
PSO este mai bun dect AE pentru unele probleme
continue de optimizare i n special pentru probleme de
dimensiuni mari
Performanele PSO nu depind de numrul de
particule; trebuie doar s nu fie prea mic
PSO cu un numr redus de particule are performane
comparabile cu AE cu populaii mai mari
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
62
Dezavantaje
Convergena prematur
PSO gsete soluiile mai rapid dect algoritmii evolutivi,
dar de obicei soluia nu se mai mbuntete n timp
O particul converge la un punct dintre optimul personal
i optimul social; acest punct poate s nu fie nici mcar
optim local al problemei
Performanele depind de problem
Parametrii trebuie alei pentru fiecare problem n parte
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
63
Viaa artificial
1. Introducere
2. Automate celulare
3. Sisteme Lindenmeyer
4. Inteligena colectiv
5. Simulri bazate pe ageni
6. Concluzii
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
64
Modelul Sugarscape
Mediul are cantiti variabile de zahr
Agenii au metabolism i consum zahr
La fiecare micare, agenii consum o cantitate de
zahr; cnd consum tot zahrul, mor
Agenii pot privi n direcii paralele cu axele,
dar nu n diagonal
Agenii merg n celula cu cea mai mare cantitate de
zahr din cmpul lor vizual (la egalitate, cea mai
apropiat celul) i o consum
Agenii pot depozita zahrul neconsumat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
65
Modelul Sugarscape
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
66
Sugarscape, G
zahrul consumat se
regenereaz complet
ntr-un pas
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
67
Sugarscape, G
1
zahrul consumat se
regenereaz cu o unitate
la fiecare pas
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
68
Evoluia populaiei
Populaia se stabilizeaz la un numr de
ageni care pot fi hrnii de mediu
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
69
Distribuia averii
O mic parte din ageni au cea mai mare
parte din cantitatea de zahr
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
70
Diagonale de migraie
emergente
Agenii individuali nu se
pot mica pe diagonal
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
71
Economia: zahr i mirodenii
MRS = rata de substituie
marginal
preul local
w acumularea
t metabolismul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
72
Modelul segregrii al lui
Schelling
Este un exemplu de comportament emergent
puternic, care arat c ntr-o societate pot exista
fenomene segregaioniste evidente chiar dac
indivizii nu sunt neaprat foarte segregaioniti
n model exist ageni de 2 culori
Fiecare agent este mulumit dac are n vecini de
aceeai culoare
Dac nu este mulumit se mut aleatoriu n alt
celul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
73
Comunitatea lui Schelling
n=2
n=1
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
74
Comunitatea lui Schelling
n primul caz, fiecare agent ar fi mulumit dac ar
avea 2 vecini de aceeai culoare i 2 vecini de alt
culoare
La echilibru ar fi stabil o situaie ca aceea de mai jos
Apare totui un fenomen de segregare involuntar
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
75
Modelul lui Hammond
Este un model al corupiei sociale
Societatea are ceteni i birocrai, care pot fi
corupi (C) sau oneti (O)
Interaciuni posibile
C + C recompens pozitiv
C + O denun
O + O recompens nul
Dup un numr (necunoscut) de denunuri,
un corupt este arestat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
76
Modelul lui Hammond
Galben: corupi
Albastru: oneti
Rou: arestai
Un agent tie ce i se
ntmpl lui i prietenilor lui
Dac mai muli prieteni sunt
arestai, agentul va deveni
mai cinstit
Presiunea social (frica)
determin creterea
numrului de indivizi oneti
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
77
Modelul lui Hammond
Dac numrul de ageni arestai este
necunoscut, frica i determin s devin
oneti
Cnd numrul arestailor din ntreaga
societate este cunoscut, presiunea nu mai
este suficient pentru a-i schimba
comportamentul
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
78
Modelul lui Epstein
Coexisten panic
Genocid artificial
Cnd tensiunea social
depete un prag, un
agent omoar alt agent
de alt culoare
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
79
SWARM: Heatbugs
Fiecare gndac
genereaz o cantitate
mic de cldur
Gndacii sunt mai
fericii cnd au mai
mult cldur
Rezultatul este gruparea
acestora pentru a avea
mai mult cldur
mpreun
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
80
SWARM: Mousetrap
Model al fisiunii nucleare
Fiecare curs de oareci conine dou mingi de
ping-pong
La nceput se arunc o minge de ping-pong n
mijlocul curselor
O curs se nchide i arunc cele dou mingi la
rndul ei, care determin nchiderea altor curse
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
81
Mousetrap
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
NetLogo: Etnocentrism (Axelrod & Hammond)
82
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
83
Framsticks: creaturi evoluate
artificial
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
84
Framsticks
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
85
Framsticks
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm
86
Concluzii
Viaa artificial este un domeniu
interdisciplinar care implic biologia,
psihologia, tiinele cognitive i matematica
Dezvoltarea de modele n biologia sintetic i
gsete aplicabilitatea n biomedicin, unde
standardizarea componentelor biologice
sintetizate i formalizarea metodologiilor
rmne o problem nerezolvat
Florin Leon, Inteligenta artificiala, http://florinleon.byethost24.com/curs_ia.htm