Documente Academic
Documente Profesional
Documente Cultură
1 Scoptul Laboratorului
Scopul laboratorului il reprezinta intelegerea si implementarea unui clasifi-
cator SVM, ce poate folosi mai multe tipuri de kernel-uri. In cadrul labora-
torului se vor face operatii de clasificare pe seturi de date sintetice, ce pun in
evidenta utilitatea kernel-urilor atunci cand spatiul de intrare nu este liniar
separabil. Rezolvarea cerintelor se va face pas cu pas urmand indicatiile si
explicatiile primite.
2 Descriere teoretica
SVM-urile sunt clasificatoare decizionale (i.e. nu au ca rezultat o probabili-
tate ca un input sa faca parte dintr-o clasa data).
O proprietate importanta a SVM-urilor este ca determinarea parametrilor
modelului se face prin rezolvarea unei probleme de optimizare convexa, ceea
ce inseamna ca orice solutie locala este si un optim global.
SVM-ul este un clasificator binar, iar problema pe care incearca sa o re-
zolve este gasirea unui hiperplan de separatie care maximizeaza marginea
intre hiperplan si cele mai apropiate exemple pozitive si negative (vezi Figura
2).
y(x) = wT x + b (1)
1
Figure 1: Vizualizare a hiperplanului de separatie si a vectorilor de suport.
2
In cazul unui SVM liniar, problema de optimizare duala se scrie precum
in ecuatia (3).
n n
X 1 X (i) (j)
maxa L(a) = ai − y y ai aj hx(i) x(j) i
i=1
2 i,j=1
a.i. ai ≥ 0, i = 1, . . . , n (3)
X n
ai y (i) = 0
i=1
unde ai sunt multiplicatorii Lagrange, iar hx(i) x(j) i reprezinta produsul scalar
al inputurilor x(i) si x(j) .
Obtinand valorile multiplicatorilor Lagrange, parametrii initiali ai formularii
primare se obtin astfel:
Xn
w= ai y (i) x(i) (4)
i=1
!
1 X (i) X
b= y − aj y (j) hx(i) x(j) i (5)
NS i∈S j∈S
3
unde φ(x) este functia de mapare in spatiul caracteristicilor (feature space).
Predictia unui SVM antrenat (i.e. pentru care s-au determinat multipli-
catorii Lagrange) ajunge sub forma:
X
y(x) = ai y (i) k(x(i) , x) + b (9)
i∈S
4
Pentru a aborda problemele acestea, in problema de optimizare a SVM-
ului se introduc variabile de regularizare ce au menirea sa reduca ”strictetea”
cu care se urmareste gasirea hiperplanului cu margine maximala.
Forma problemei de optimizare primara se modifica astfel:
n
1 X
minw,b kwk2 + C ξi
2 i=1
(10)
a.i. y (i) (wT x(i) + b) ≥ 1 − ξi , i = 1, . . . , n
ξi ≥ 0, i = 1, . . . , n
5
Învăt, are Automată - Laboratorul 4
Metode de programare dinamică pentru rezolvarea proceselor markov de decizie
Tudor Berariu
• Scopul laboratorului ı̂l reprezintă ı̂nt, elegerea conceptelor de proces markov de decizie,
politică, valoare de stare, precum s, i implementarea unor metode de programare dinamică
pentru rezolvarea problemei de control a unui MDP.
1
Proces Markov de decizie finit. Politică
S0 , A0 , R1 , S1 , A1 , . . . , St , At , Rt+1 , St+1 , . . . , RT , ST
2
Valoare de stare
= Eπ [Gt |St = s]
• Relat, iile dintre valorile de stare induse de o politică deterministă (ecuat, iile Bellman):
XX
v π (s) = p(s 0 , r |s, π(s)) [r + γv π (s 0 )]
s 0 ∈S r ∈R
• Scopul ı̂nvăt, ării prin recompensă ı̂l reprezintă găsirea unei politici optime π ∗ :
3
Evaluarea unei politici
4
Iterarea politicilor
procedure PolicyIteration(hS, A, R, p, γi, )
for all s ∈ S do
π(s) ← random(A)
• Fiind dată o politică deterministă π v (s) ← 0
end for
s, i funct, ia valoare v π indusă de repeat
aceasta se poate obt, ine o politică repeat . Se evaluează politica curentă.
δ←0
mai bună π 0 alegând act, iunile ı̂n −
for all s ∈ S do
mod lacom ı̂n raport cu v π . vold ← v (s)
P P 0
0
X v (s) ← s 0 ∈S r ∈R p(s , r |s, π(s)) r + γv (s )
π 0 (s) ← argmax p(s 0 , r |s, a) [r + γv (s 0 )] δ ← max(δ, |v (s) − vold |)
a∈A end for
s 0 ,r
until δ <
done ← True
• Algoritmul Policy Iteration găses, te for all s ∈ S − do . Se ı̂mbunătăt, es, te politica.
aold ← π(s)
o politică optimă alternând pas, i de P
π(s) ← argmax s 0 ∈S
P 0
0
r ∈R p(s , r |s, a) r + γv (s )
a∈A
evaluare s, i de ı̂mbunătăt, ire a politicii. done ← done ∧ (aold = π(s))
π0 → v π 0 → π1 → v π 1 → π2 → . . . → π ∗ end for
until done
return π, v
end procedure 5
Iterarea politicilor
procedure PolicyIteration(hS, A, R, p, γi, )
for all s ∈ S do
π(s) ← random(A) . Politica init, ială este aleatoare.
• Fiind dată o politică deterministă π v (s) ← 0 . Valorile init, iale sunt zero.
end for
s, i funct, ia valoare v π indusă de repeat
aceasta se poate obt, ine o politică repeat . Se evaluează politica curentă.
δ←0
mai bună π 0 alegând act, iunile ı̂n −
for all s ∈ S do
mod lacom ı̂n raport cu v π . vold ← v (s)
P P 0
0
X v (s) ← s 0 ∈S r ∈R p(s , r |s, π(s)) r + γv (s )
π 0 (s) ← argmax p(s 0 , r |s, a) [r + γv (s 0 )] δ ← max(δ, |v (s) − vold |)
a∈A end for
s 0 ,r
until δ <
done ← True
• Algoritmul Policy Iteration găses, te for all s ∈ S − do . Se ı̂mbunătăt, es, te politica.
aold ← π(s)
o politică optimă alternând pas, i de P
π(s) ← argmax s 0 ∈S
P 0
0
r ∈R p(s , r |s, a) r + γv (s )
a∈A
evaluare s, i de ı̂mbunătăt, ire a politicii. done ← done ∧ (aold = π(s))
π0 → v π 0 → π1 → v π 1 → π2 → . . . → π ∗ end for
until done . se opres, te atunci când politica devine stabilă.
return π, v
end procedure 5
Iterarea valorilor
procedure ValueIteration(hS, A, R, p, γi, )
• Algoritmul de iterare a for all s ∈ S do
politicilor (slide-ul anterior) v (s) ← 0
alocă efort computat, ional end for
pentru aproximarea cu repeat
δ←0
precizie a funct, iei de valoare
for all s ∈ S − do
pentru fiecare politică.
vold ← v (s)
• Algoritmul poate fi v (s) ← maxa s 0 ∈S r ∈R p(s 0 , r |s, a) [r + γv (s 0 )]
P P
modificat prin reducerea δ ← max(δ, |v (s) − vold |)
acestui efort fără a pierde end for
garant, ia convergent, ei until δ <
cobinând ı̂ntr-o singură for all s ∈ S − do . Se extrage politica optimă
π(s) ← argmax s 0 ∈S r ∈R p(s 0 , r |s, a) [r + γv (s 0 )]
P P
operat, ie un pas de evaluare a∈A
a politicii s, i unul de end for
ı̂mbunătăt, ire a acesteia. return π, v
end procedure 6
Iterarea valorilor
procedure ValueIteration(hS, A, R, p, γi, )
• Algoritmul de iterare a for all s ∈ S do
politicilor (slide-ul anterior) v (s) ← 0
alocă efort computat, ional end for
pentru aproximarea cu repeat
δ←0
precizie a funct, iei de valoare
for all s ∈ S − do
pentru fiecare politică.
vold ← v (s)
• Algoritmul poate fi v (s) ← maxa s 0 ∈S r ∈R p(s 0 , r |s, a) [r + γv (s 0 )]
P P
modificat prin reducerea δ ← max(δ, |v (s) − vold |)
acestui efort fără a pierde end for
garant, ia convergent, ei until δ <
cobinând ı̂ntr-o singură for all s ∈ S − do . Se extrage politica optimă
π(s) ← argmax s 0 ∈S r ∈R p(s 0 , r |s, a) [r + γv (s 0 )]
P P
operat, ie un pas de evaluare a∈A
a politicii s, i unul de end for
ı̂mbunătăt, ire a acesteia. return π, v
end procedure 6
Problema de rezolvat
7
Hărt, ile de test
Hartă simplă cu două stări finale. Hartă care cere să fii precaut. Mai bine mor decât să sufăr.
8
Clasa Maze
class Maze:
Metoda effects primes, te o stare s s, i o
def __init__(self, map_name):
... act, iune a s, i ı̂ntoarce o listă de tupluri (s 0 , p, r )
cu următoarea semnificat, ie:
@property
def actions(self):
... p = P (St+1 = s 0 , Rt+1 = r | St = s, At = a)
9
Cerint, e
Tudor Berariu
1
Amintiri din laboratorul 4
• În cadrul laboratorului 4 at, i implementat doi algoritmi de programare dinamică pentru
găsirea unei politici optime pentru un MDP.
• Algoritmii Policy Iteration s, i Value Iteration presupuneau o cunoas, tere completă a
dinamicii mediului.
• În majoritatea problemelor reale dinamica mediului nu este cunoscută, iar agentul trebuie
să estimeze câs, tigurile s, i să ı̂s, i ı̂mbunătăt, ească politica pe baza interact, iunii directe cu
mediul.
2
Valoarea act, iunii ı̂ntr-o stare
• Câs, tigul mediu adus de o act, iune a dintr-o stare s indus de o politică π:
• Relat, iile dintre valorile q induse de o politică deterministă (ecuat, iile Bellman):
3
Algoritmul Q-learning
4
Algoritmul Q-learning
4
Algoritmul Q-learning
4
Algoritmul Q-learning
4
Greuceanu s, i Balaurul
5
Abstractizarea jocului
• get initial state(input file) primes, te calea unui fis, ier ce cont, ine harta jocului s, i
ı̂ntoarce starea init, ială.
• get valid actions(state) primes, te o stare s, i ı̂ntoarce o listă de act, iuni ce pot fi
executate ı̂n acea stare.
• apply action(state, action) primes, te o stare s, i o act, iune s, i ı̂ntoarce starea ı̂n care se
ajunge, recompensa s, i un mesaj despre joc
• is final state(state, score) primes, te starea s, i scorul curente s, i verifică dacă
episodul s-a ı̂ncheiat.
• display state(state) afis, ează starea curentă.
6
Cerint, e