Mine sisu juurde

Stiimulõpe

Allikas: Vikipeedia

Stiimulõpe on masinõppe ala, mis on inspireeritud biheiviorismist. Selle uurimisobjektiks on tarkvara põhiline agent, mille eesmärk on teostada tegevusi ümbritsevas keskkonnas nii, et tegevustest tulenev preemia oleks maksimeeritud. Probleemi üldisuse tõttu on see uuritud paljudes teistes valdkondades, näiteks mänguteooria, automaatika, majandusteadus, informatsiooniteooria, statistika, geneetilised algoritmid jt.

Sissejuhatus

[muuda | muuda lähteteksti]

Stiimulõpes on keskkond tüüpiliselt formuleeritud kui Markovi otsustusprotsess (MDP), kuna stiimulõppes rakendavad paljud algoritmid probleemi lahendamiseks dünaamilist programmeerimist. Tänapäevase stiimulõpe erinevus klassikalistest algoritmidest on see, et tänapäevase stiimulõpe algoritmidel pole vaja teada protsessi MDP-d ning nende abil saab lahendada suuri MDP-sid, kus täpsed lahendid on tihtipeale võimatud.[1]

Stiimulõpe protsess erineb tavalisest juhendatud õppest selle poolest, et see ei kasutata sisend/väljund näidispaare ja suboptimaalsed tegevused ei ole otseselt korrigeeritud. Selle asemel on stiimulõpe algoritmide fookuseks nende tegevuste lõplik tulemus, mille saavutamiseks on vaja balansseeritud avastamist ja olemasoleva strateegia järgimist. Nende kompromiss on pidevalt uuritud lõpliku MDP-ga probleemide kontekstis, nagu multi-armed bandit.[2]

Formuleering

[muuda | muuda lähteteksti]

Matemaatiliselt on stiimulõpe formuleeritud kui Markovi otsustusprotsess ():

  • – kõikvõimalike olekute hulk,
  • – kõikvõimalike tegevuste hulk,
  • – üleminekutõenäosus: ,
  • – preemia, mille saab üleminekul olekust olekusse : .

Formuleeringust otseselt tuleneb, et stiimulõpe tegeleb stohhastiliste probleemidega, kus üleminek olekust olekusse pole deterministlik. Üldjuhul pole üleminekutõenäosused teada ning algoritmi eesmärk on olekule leida vastav tegevus nii, et oodatav preemia oleks maksimeeritud.[1]

Tihti rakendatakse stiimulõppe algoritmide kasutamisel funktsioonide lähenemismeetodeid, nagu näiteks närvivõrgud. Tänu nendele on võimalik stiimulõpet rakendada seal, kus klassikalised meetodid hakkama ei saa:

  • keskkonnades, kus olekute hulk on liiga suur klassikaliste meetodite jaoks;
  • üleminekutõenäosused pole teada ning seega ainuke viis keskkonnast midagi teada saada on reaalajas tegevustega;
  • üleminekutõenäosused on teada, aga tulenev mudel on arvutamise mõttes liiga raske.

Tänapäeval populaarsemad stiimulõpe algoritmid on DQN[3] ja A3C.[4] Nende erinevus ei ole ainult algoritmiline, vaid ka agendi õppimise põhimõtte poolest. Näiteks DQN õpib viivitusega ehk kogub alguses mingi hulga kogemusi mälusse ja pärast õpib nende pealt, samas kui A3C õpib käigupõhiselt ehk reaalajas.

Stiimulõppe algoritme rakendatakse paljudes valdkondades, näiteks robootikas ja majandusteaduses.[5]

Ettevõtte DeepMind poolt loodud arvutiprogramm AlphaGo võitis 2016. aastal viiepartiilises go-matšis 4:1 maailmameistrit Lee Sedoli.[6] 2017. aastal võitis programmi edasiarendatud variant AlphaZero ülekaalukalt parimat maleprogrammi Stockfish.

  1. 1,0 1,1 Viitamistõrge: Vigane <ref>-silt. Viide nimega sutton2018 on ilma tekstita.
  2. Viitamistõrge: Vigane <ref>-silt. Viide nimega katehakis1987 on ilma tekstita.
  3. Viitamistõrge: Vigane <ref>-silt. Viide nimega mnih2013 on ilma tekstita.
  4. Viitamistõrge: Vigane <ref>-silt. Viide nimega mnih2016 on ilma tekstita.
  5. "Reinforcement Learning / Successes of Reinforcement Learning". Vaadatud 10. jaanuaril 2023.
  6. "Artificial intelligence: Google's AlphaGo beats Go master Lee Se-dol". BBC News.