stomp Wat is Deep Reinforcement Learning? - Verenig.AI
Verbinding met ons

AI 101

Wat is Deep Reinforcement Learning?

mm
Opgedateer on

Wat is Deep Reinforcement Learning?

Saam met masjienleer sonder toesig en leer onder toesig, is 'n ander algemene vorm van KI-skepping versterkingsleer. Behalwe gereelde versterkingsleer, diep versterking leer kan tot verstommende indrukwekkende resultate lei, danksy die feit dat dit die beste aspekte van beide diepleer en versterkingsleer kombineer. Kom ons kyk na presies hoe diep versterkingsleer werk.

Voordat ons in diep versterkingsleer duik, is dit dalk 'n goeie idee om onsself te verfris oor hoe gereeld versterkingsleer werk. In versterkingsleer word doelgeoriënteerde algoritmes ontwerp deur 'n proses van probeer en fout, wat optimaliseer vir die aksie wat lei tot die beste resultaat/die aksie wat die meeste "beloning" kry. Wanneer versterkingsleeralgoritmes opgelei word, kry hulle "belonings" of "strawwe" wat beïnvloed watter aksies hulle in die toekoms sal neem. Algoritmes probeer om 'n stel aksies te vind wat die stelsel die meeste beloning sal gee, wat beide onmiddellike en toekomstige belonings sal balanseer.

Versterkingsleeralgoritmes is baie kragtig omdat dit op byna enige taak toegepas kan word, deur buigsaam en dinamies uit 'n omgewing te leer en moontlike aksies te ontdek.

Oorsig van Deep Reinforcement Learning

Foto: Megajuice via Wikimedia Commons, CC 1.0 (https://commons.wikimedia.org/wiki/File:Reinforcement_learning_diagram.svg)

Wanneer dit by diepversterkingsleer kom, word die omgewing tipies met beelde voorgestel. 'n Beeld is 'n vaslegging van die omgewing op 'n bepaalde tydstip. Die agent moet die beelde ontleed en relevante inligting daaruit onttrek, deur die inligting te gebruik om in te lig watter stappe hulle moet neem. Diepversterkingsleer word tipies met een van twee verskillende tegnieke uitgevoer: waardegebaseerde leer en beleidsgebaseerde leer.

Waardegebaseerde leertegnieke maak gebruik van algoritmes en argitekture soos konvolusionele neurale netwerke en Diep-Q-netwerke. Hierdie algoritmes werk deur die beeld na grysskaal om te skakel en onnodige dele van die beeld uit te sny. Daarna ondergaan die beeld verskeie konvolusies en poelbewerkings, wat die mees relevante gedeeltes van die beeld onttrek. Die belangrike dele van die beeld word dan gebruik om die Q-waarde te bereken vir die verskillende aksies wat die agent kan doen. Q-waardes word gebruik om die beste optrede vir die agent te bepaal. Nadat die aanvanklike Q-waardes bereken is, word terugpropagasie uitgevoer sodat die mees akkurate Q-waardes bepaal kan word.

Beleidsgebaseerde metodes word gebruik wanneer die aantal moontlike aksies wat die agent kan neem uiters hoog is, wat tipies die geval is in werklike scenario's. Situasies soos hierdie vereis 'n ander benadering omdat die berekening van die Q-waardes vir al die individuele aksies nie pragmaties is nie. Beleidsgebaseerde benaderings werk sonder om funksiewaardes vir individuele aksies te bereken. In plaas daarvan neem hulle beleid aan deur die beleid direk aan te leer, dikwels deur tegnieke genaamd Beleidsgradiënte.

Beleidsgradiënte werk deur 'n toestand te ontvang en waarskynlikhede vir aksies te bereken gebaseer op die agent se vorige ervarings. Die mees waarskynlike aksie word dan gekies. Hierdie proses word herhaal tot aan die einde van die evalueringsperiode en die belonings word aan die agent gegee. Nadat die belonings met die agent afgehandel is, word die netwerk se parameters opgedateer met terugverspreiding.

Wat is Q-Learning?

Omdat Q-leer is so 'n groot deel van die diep versterking leerproses, kom ons neem 'n rukkie om regtig te verstaan ​​hoe die Q-leer stelsel werk.

Die Markov-besluitproses

'n Markov besluit proses. Foto: waldoalvarez via Pixabay, Pixbay License (https://commons.wikimedia.org/wiki/File:Markov_Decision_Process.svg)

Om 'n KI-agent 'n reeks take uit te voer en 'n doel te bereik, moet die agent 'n reeks toestande en gebeure kan hanteer. Die agent sal by een staat begin en dit moet 'n reeks aksies neem om 'n eindtoestand te bereik, en daar kan 'n groot aantal toestande tussen die begin- en eindtoestande bestaan. Die stoor van inligting oor elke staat is onprakties of onmoontlik, so die stelsel moet 'n manier vind om net die mees relevante staatsinligting te bewaar. Dit word bewerkstellig deur die gebruik van a Markov-besluitproses, wat net die inligting oor die huidige toestand en die vorige toestand bewaar. Elke staat volg 'n Markov-eiendom, wat naspoor hoe die agent van die vorige toestand na die huidige toestand verander.

Diep Q-leer

Sodra die model toegang het tot inligting oor die toestande van die leeromgewing, kan Q-waardes bereken word. Die Q-waardes is die totale beloning wat aan die agent gegee word aan die einde van 'n reeks aksies.

Die Q-waardes word bereken met 'n reeks belonings. Daar is 'n onmiddellike beloning, bereken volgens die huidige toestand en afhangende van die huidige aksie. Die Q-waarde vir die daaropvolgende toestand word ook bereken, saam met die Q-waarde vir die toestand daarna, en so aan totdat al die Q-waardes vir die verskillende toestande bereken is. Daar is ook 'n Gamma-parameter wat gebruik word om te beheer hoeveel gewig toekomstige belonings op die agent se optrede het. Beleide word tipies bereken deur Q-waardes lukraak te inisialiseer en die model te laat konvergeer na die optimale Q-waardes in die loop van opleiding.

Diep Q-netwerke

Een van die fundamentele probleme wat betrokke is die gebruik van Q-leer vir versterkingsleer is dat die hoeveelheid geheue wat nodig is om data te stoor vinnig uitbrei soos die aantal state toeneem. Deep Q Networks los hierdie probleem op deur neurale netwerkmodelle met Q-waardes te kombineer, wat 'n agent in staat stel om uit ervaring te leer en redelike raaiskote te maak oor die beste aksies om te neem. Met diep Q-leer word die Q-waarde funksies geskat met neurale netwerke. Die neurale netwerk neem die toestand in as die insetdata, en die netwerk voer Q-waarde uit vir al die verskillende moontlike aksies wat die agent kan neem.

Diep Q-leer word bewerkstellig deur al die vorige ervarings in die geheue te stoor, maksimum uitsette vir die Q-netwerk te bereken, en dan 'n verliesfunksie te gebruik om die verskil tussen huidige waardes en die teoreties hoogste moontlike waardes te bereken.

Diepversterkingsleer vs diepleer

Een belangrike verskil tussen diepversterkingsleer en gereelde diepleer is dat in die geval van eersgenoemde die insette voortdurend verander, wat nie die geval is in tradisionele diepleer nie. Hoe kan die leermodel rekening hou met insette en uitsette wat voortdurend verskuif?

In wese, om die divergensie tussen voorspelde waardes en teikenwaardes te verreken, kan twee neurale netwerke in plaas van een gebruik word. Een netwerk skat die teikenwaardes, terwyl die ander netwerk verantwoordelik is vir die voorspellings. Die parameters van die teikennetwerk word opgedateer soos die model leer, nadat 'n gekose aantal opleidingsiterasies geslaag is. Die uitsette van die onderskeie netwerke word dan saamgevoeg om die verskil te bepaal.

Beleidsgebaseerde leer

Beleidsgebaseerde leer benaderings werk anders as Q-waarde-gebaseerde benaderings. Terwyl Q-waarde-benaderings 'n waardefunksie skep wat belonings vir state en aksies voorspel, bepaal beleidsgebaseerde metodes 'n beleid wat state na aksies sal karteer. Met ander woorde, die beleidsfunksie wat vir aksies selekteer, word direk geoptimaliseer sonder inagneming van die waardefunksie.

Beleidsgradiënte

'n Beleid vir diepversterkingsleer val in een van twee kategorieë: stogasties of deterministies. 'n Deterministiese beleid is een waar state na aksies gekarteer word, wat beteken dat wanneer die beleid inligting oor 'n staat gegee word, 'n aksie teruggestuur word. Intussen gee stogastiese beleide 'n waarskynlikheidsverdeling vir aksies in plaas van 'n enkele, diskrete aksie.

Deterministiese beleide word gebruik wanneer daar geen onsekerheid is oor die uitkomste van die aksies wat geneem kan word nie. Met ander woorde, wanneer die omgewing self deterministies is. Daarteenoor is stogastiese beleidsuitsette gepas vir omgewings waar die uitkoms van aksies onseker is. Tipies behels versterkingsleerscenario's 'n mate van onsekerheid, dus word stogastiese beleide gebruik.

Beleidsgradiëntbenaderings het 'n paar voordele bo Q-leerbenaderings, sowel as 'n paar nadele. Wat voordele betref, konvergeer beleidsgebaseerde metodes vinniger en meer betroubaar op optimale parameters. Die beleidsgradiënt kan net gevolg word totdat die beste parameters bepaal is, terwyl met waardegebaseerde metodes klein veranderinge in beraamde aksiewaardes tot groot veranderinge in aksies en hul gepaardgaande parameters kan lei.

Beleidsgradiënte werk ook beter vir hoëdimensionele aksieruimtes. Wanneer daar 'n uiters groot aantal moontlike aksies is om te neem, word diep Q-leer onprakties omdat dit 'n telling moet toeken aan elke moontlike aksie vir alle tydstappe, wat rekenaarmatig onmoontlik kan wees. Met beleidsgebaseerde metodes word die parameters egter oor tyd aangepas en die aantal moontlike beste parameters krimp vinnig soos die model konvergeer.

Beleidsgradiënte is ook in staat om stogastiese beleide te implementeer, anders as waardegebaseerde beleide. Omdat stogastiese beleide 'n waarskynlikheidsverdeling produseer, hoef 'n eksplorasie/ontginning-afweging nie geïmplementeer te word nie.

Wat die nadele betref, is die grootste nadeel van beleidsgradiënte dat hulle kan vashaak terwyl hulle na optimale parameters soek, en slegs fokus op 'n nou, plaaslike stel optimum waardes in plaas van die globale optimum waardes.

Beleidtellingfunksie

Die beleide wat gebruik word om 'n model se prestasiedoelwit te optimaliseer om 'n tellingfunksie te maksimeer – J(θ). As J(θ) is 'n maatstaf van hoe goed ons beleid is om die gewenste doel te bereik, kan ons die waardes van "θ” dit gee ons die beste beleid. Eerstens moet ons 'n verwagte polisbeloning bereken. Ons skat die polisbeloning sodat ons 'n doelwit het, iets om na te optimaliseer. Die Beleidtellingfunksie is hoe ons die verwagte polisbeloning bereken, en daar is verskillende Beleidtellingfunksies wat algemeen gebruik word, soos: beginwaardes vir episodiese omgewings, die gemiddelde waarde vir deurlopende omgewings, en die gemiddelde beloning per tydstap.

Beleidsgradiënt styging

Gradiënt styging het ten doel om die parameters te skuif totdat hulle op die plek is waar die telling die hoogste is. Foto: Public Domain (https://commons.wikimedia.org/wiki/File:Gradient_ascent_(surface).png)

Nadat die verlangde polistellingfunksie gebruik is, en 'n verwagte polisbeloning bereken is, kan ons 'n waarde vir die parameter vind "θ” wat die tellingfunksie maksimeer. Om die tellingfunksie J(θ), 'n tegniek genaamd "gradiënt styging" is gebruik. Gradiënt styging is soortgelyk in konsep aan gradiënt daling in diep leer, maar ons optimaliseer vir die steilste toename in plaas van afname. Dit is omdat ons telling nie "fout" is nie, soos in baie diepleerprobleme. Ons telling is iets wat ons wil maksimeer. 'n Uitdrukking genaamd die Beleidsgradiëntstelling word gebruik om die gradiënt met betrekking tot beleid te skat "θ".

Opsomming van Deep Reinforcement Learning

Samevattend, diepversterkingsleer kombineer aspekte van versterkingsleer en diep neurale netwerke. Diepversterkingsleer word met twee verskillende tegnieke gedoen: Diep Q-leer en beleidsgradiënte.

Diep Q-leermetodes het ten doel om te voorspel watter belonings sal volg op sekere aksies wat in 'n gegewe toestand geneem is, terwyl beleidsgradiëntbenaderings daarop gemik is om die aksieruimte te optimaliseer deur die aksies self te voorspel. Beleidsgebaseerde benaderings tot diepversterkingsleer is óf deterministies óf stogasties van aard. Deterministiese beleide karteer state direk aan aksies terwyl stogastiese beleide waarskynlikheidsverdelings vir aksies produseer.

Blogger en programmeerder met spesialiteite in masjienleer en Diep leer onderwerpe. Daniel hoop om ander te help om die krag van KI vir sosiale voordeel te gebruik.