Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

16
1/16 Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu Jānis Zuters, 06.08.2012. Ratnieki Latvijas Universitāte Datorikas fakultāte Mākslīgā intelekta fonds

description

Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu. Jānis Zuters, 06.08.2012. Ratnieki. Latvijas Universitāte Datorikas fakultāte Mākslīgā intelekta fonds. Pastiprinājuma vadīta apmācīšanās ( Reinforcement learning, RL ). Problēmu, nevis algoritmu kopums - PowerPoint PPT Presentation

Transcript of Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

Page 1: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

1/16

Pastiprinājuma vadītas apmācīšanās problēmu

risināšana ar neironu tīklu

Jānis Zuters, 06.08.2012. Ratnieki

Latvijas Universitāte Datorikas fakultāte

Mākslīgā intelekta fonds

Page 2: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

2/16

Pastiprinājuma vadīta apmācīšanās(Reinforcement learning, RL)

• Problēmu, nevis algoritmu kopums

• Stāvokļi -> darbības (states -> actions)

• Nav iepriekš zināms, kuras ir pareizās darbības

• Tā vietā pastiprinājums – atlīdzības (rewards) katrā solī

Page 3: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

3/16

MDP (Markov Decision Process) –RL problēmas formulēšanai

1 2 3 4

5 6 7

8 9 10 11

Stāvokļi States

↑ ← →

DarbībasActions

-1 -1 -1 10

-1 -1 -10

-1 -1 -1 -1

Pārejas un atlīdzības

Transitions and Rewards

→ → → 10

↑ ↑ -10

↑ → ↑ ←

Politika – problēmas risinājums

Policy – solution to a problem

Page 4: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

4/16

Aģenta mijiedarbība ar vidi –RL pamatideja

* A.M. Schaefer, 2008

Page 5: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

5/16

RL problēmas risināšana

-1 -1 -1 10

-1 -1 -10

-1 -1 -1 -1

→ → → 10

↑ ↑ -10

↑ → ↑ ←

Problēma

Problem

Politika

Policy

Aģents

Agent

eksperts

Uzraudzītā apmācīšanās

Supervised learning

Pastiprinājuma vadīta apmācīšanās

Reinforcement learning

Page 6: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

6/16

RL sistēmas funkcijas

• Vākt paraugus (pēc noteiktas metodikas pārstaigāt stāvokļus vidē)

• Meklēt risinājumu (politiku)

• Exploring/exploiting dilemma

-1 -1 -1 10

-1 -1 -10

-1 -1 -1 -1

Page 7: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

7/16

Vērtību funkcijas (value function) pieeja RL problēmu risināšanā

-1 -1 -1 10

-1 -1 -10

-1 -1 -1 -1

10

-10

Vērtību tabula

→ → → 10

↑ ↑ -10

↑ → ↑ ←

• Dynamic programming• Sarsa• Actor-critic methods

Page 8: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

8/16

Neironu tīkli RL problēmas risināšanā

10

-10Neironu tīkls kā vērtību funkcija

Neironu tīkls kā pilna RL sistēma

A.M. Schaefer, 2008

Page 9: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

9/16

Vienslāņa neironu tīkls ar RL mehānismu

up down left right

input

neurons

Page 10: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

10/16

Kāpēc neironu tīkls kā RL problēmas risinātājs

+ Vairāk atbilst RL būtībai

+ Potenciāls plašākas problēmu klases aptveršanā, nav obligāti MDP

+ Potenciāls kļūdu noturībā

– Sarežģītāks un grūtāk kontrolējams algoritms

Page 11: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

11/16

RL izaicinājumi un nepieciešamie apmācīšanās mehānismi

• Vēlamo darbību stimulēšanas mehānisms (value function)

• Vai atlīdzība ir liela vai maza? (reinforcement comparison, reference rewards)

• Stāvokļu telpas pārstaigāšanas nejaušības komponente (exploring)

• Skatīšanās vairākus soļus uz priekšu

-1 -1 -1 10

-1 -1 -10

-1 -1 -1 -1

5 5 5 9

5 5 2

5 5 5 5

-5 -5 -5 -2

-5 -5 -10

-5 -5 -5 -5

Page 12: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

12/16

rightup down left

1 2 3

4 5

6 7 8 9

s

w

y

x++a

0 0 1 0 0 0 0 0 0xx+

1 2 3

4 5

6 7 8 9

rr+

Page 13: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

13/16

Module train_network()λ1 – step-size parameter for input decay (0..1)α3 – step-size parameter for reinforcement cumulation (0..1)

BeginForall input values #i in x Do

If x(i) > X1(i) ThenX1(i) := x(i)

ElseX1(i) := X1(i) · λ1

EndifR(i) := R(i) + α3 · X1(i) · [r - R(i)]

EndforallForall neurons #j Do

train_neuron(j)Endforall

End

Tīkla apmācības algoritms

Page 14: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

14/16

Module train_neuron(j)λ2 – step-size parameter for input cumulation (0..1)η – learning rate

BeginForall synapses #i of j Do

If IsWinner(j) And s(i) > X2(j,i) ThenX2(j,i) := s(i)

ElseX2(j,i) := X2(j,i) · λ2

EndifW(j,i) := W(j,i) + [r - R(i)] · X2(j,i) · ηIf W(j,i) > 1 Then

W(j,i) := 1Elseif W(j,i) < 0 Then

W(j,i) := 0Endif

EndforallEnd

Viena neirona apmācīšana

Page 15: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

15/16

Izveidotā algoritma spēja risināt RL problēmas

• Vēlamo darbību stimulēšanas mehānisms – algoritms strādā “proof of the concept” līmenī.

• Vai atlīdzība ir liela vai maza? Tiek lietots lokālais reference reward katram ievadam

• Stāvokļu telpas pārstaigāšanas nejaušības komponente – iebūvēta neirona darbināšanas algoritmā

• Skatīšanās vairākus soļus uz priekšu – prot skatīties vairākus soļus uz priekšu

Page 16: Pastiprinājuma vadītas apmācīšanās problēmu risināšana ar neironu tīklu

16/16

Algoritma papildināšana