Hallo en welkom terug bij de cursus over kunstmatige intelligentie in de Turrill van vandaag, we gaan
plezier hebben.
We gaan kijken.
En een kunstmatige intelligentie die door dat doolhof gaat waar we het al zo lang over hebben en die
leren gaat gebruiken om zijn weg te vinden en de weg naar buiten te vinden.
En we zullen zien wat er met de kernwaarden gebeurt, wat er met het beleid gaat gebeuren, enzovoort.
Dus laten we eens kijken.
We gaan materiaal gebruiken dat door de Berkeley University is verstrekt.
Dus als je naar IDOT Berkeley gaat, de Arcady bredere edu, als je gewoon naar die link Kanjar gaat, zie je
deze website en hoor je waar we naar gaan kijken. om naar Pakman-projecten te
gaan denk ik.
Ja, Pakman-projecten en hier, als je naar beneden scrolt en je kijkt naar versterkingsleren, dan is dit waar we
mee werken.
Dus hier kunt u het ZIP-archief downloaden.
Dus dat is als je dat wilt.
Dus dat hoeft niet.
Dit is dat we de oplossing niet samen doornemen in deze tutorial.
Ik wil je even laten weten waar dit allemaal vandaan komt, want we willen heel graag
dat UC Berkeley deze materialen beschikbaar heeft gesteld.
Maar als je hier zelf mee wilt experimenteren, houd er dan rekening mee dat dit geen deel uitmaakt van onze
cursussen als onderdeel van de Berkeley-cursus.
Ik ga je gewoon laten zien hoe het werkt ter illustratie.
Maar mocht je hier toch mee willen experimenteren, dan kun je het hier vinden, het ZIP-archief en ook alle
instructies.
En we gaan meteen naar Python.
En het eerste dat ik je wil laten zien, is dat we hier de licentie-informatie hebben.
Dit is dus wat ik bedoel.
We hebben veel geluk dat ze zeiden dat we vrij zijn om deze projecten te gebruiken of uit te breiden voor educatieve
doeleinden, mits, je weet wel, distributieve oplossingen, wat we niet gaan doen.
U behoudt deze verklaring die we hebben en u geeft een duidelijke toeschrijving aan UC Berkeley, inclusief een link
waarnaar we ook hebben.
Dus nogmaals, als je meer wilt weten, er is een link.
U kunt een kijkje nemen.
En heel erg bedankt aan al deze mensen die aan dit project hebben gewerkt.
Dus hier is de rasterwereld waarmee we gaan werken.
Als daar een oplossing is, zou je moeten om het te laten werken, je zou jezelf moeten
isoleren of mogelijk een oplossing moeten vinden.
Misschien kunnen sommige van uw mensen, iemand die u kent, u daar uit helpen.
Als, nogmaals, waar u wilt, hoeft u dat niet te doen, want we gaan het nu
op dit scherm bekijken.
Dus nadat we al die bestanden hebben gemaakt, kunnen we het hier gewoon starten.
Er zijn dus enkele parameters die bij deze hele wereld betrokken zijn en niet alleen om je te laten zien hoe het eruit ziet
als we het lanceren.
Dus laten we proberen het in de handmatige modus te starten.
Dus als ik min M een van deze programma's hier handmatig ga gebruiken, zodat ik de agent kan besturen.
Dus hier kun je zien dat onze geweldige ik omhoog kan gaan, zodat je kunt zien dat het actie onderneemt en begon
in staten waar ik was.
En toen zag je, je zag dat ik doordrukte, actie ondernam naar het noorden en de eerste keer dat ik in nul belandde toen ik eenmaal
omhoog ging.
Maar de tweede keer dat ik naar het noorden ging en in dezelfde set eindigde, bewoog ik niet.
Er is dus iets gebeurd.
Weet je, de willekeur is gebeurd.
Ik ging naar links of naar rechts en standaard zijn de parameters ingesteld.
Je kunt hier standaard zien dat ze precies zijn ingesteld op wat we hebben besproken, namelijk hoe vaak actie resulteert in een onbedoelde
richting, 20 procent van de tijd tot 10 procent, 11 procent naar rechts.
Dus als ik naar boven ga, zie je, ik ging naar boven, ik ga naar rechts, ik ging nu meteen.
Het is weer niet goed gegaan.
En ik ben klaar.
Maar in deze implementatie moet je opnieuw klikken om uit deze laatste outputs te komen.
Klik nog een keer en je bent klaar.
Dat is een terminale toestand.
Zodat we onze handleiding kunnen gebruiken.
Dat kun je zien als ik rechts, rechts, rechts, links, omhoog ga.
Dus hier wat we eerder zagen dat de agent niet recht omhoog zou gaan.
Rechts.
Wat heeft het voor zin om naar boven te gaan als er een kans is om de put in te gaan?
Eens kijken, wat zou de agent doen?
Je zou naar links gaan.
Je zou hier naar het westen gaan.
Dus ga naar het westen.
En je ziet dat ik links klik, maar het ging omhoog en hier zou ik rechts klikken.
En ik belandde in de laatste exit-fase en je kon zien dat het een beloning kreeg die gelijk was aan één.
Dus zo ziet het er handmatig uit.
Laten we nu een A aansluiten. L. hieraan toe en laat het erdoor gaan.
Dus laten we hier een H doen en een parameter toevoegen.
Dus laat me eens kijken wat ik hier heb getypt.
Dus hopelijk kun je Python, GreenWorld, IPY zien dan hier minus R betekent dat dit de beloning voor het leven
is.
Ik heb er dus twee, dus deze moet ik waarschijnlijk verwijderen.
Dus min K is hoeveel iteraties.
Dat zijn veel te veel herhalingen.
Laten we minder doen, laten we doen als tien iteraties.
Dat zou genoeg moeten zijn.
Min AI is agent wat voor soort agent ik wil doen op een willekeurige agent, wat validatie of een Q
Q Dus ik wil een Q Q Learning-agent die dit doet minus S is wat de snelheid is.
Dus dat is veel te ver, te snel.
Ze gebruiken voorlopig gewoon de standaardsnelheid.
Min R is een levende boete, dus standaard nul.
Dus onthoud helemaal aan het begin wat nul boetes voor leven zijn, dus laten we het ook
nul nul noemen, we kunnen deze parameter gewoon verwijderen en D is wat D-korting is.
Dus ik kan er gewoon geen rekening mee houden.
Dus laten we het op nul punt negen houden.
Dus zeer vergelijkbaar met wat we begonnen in dit deel van de kern.
Dus laten we weer die kant op rennen.
Ik denk dat ik Priok echt heb gezien, dus je kunt zien hoe hij aan het verkennen is.
En tot nu toe heeft hij de negatieve drie keer geraakt en je kunt zien hoe de kernwaarden zijn bijgewerkt
in deze vierkanten.
Dit zijn dus het soort nul dat je nu kunt zien, de wachtrijwaarden.
Dus hij heeft geleerd dat, nogmaals, deze een beetje anders is geïmplementeerd, want als je eenmaal in de laatste fase bent,
moet je eruit zien te komen.
U hoeft slechts op nog een knop te klikken om af te sluiten.
En dus is het heel dicht bij één, maar niet precies één.
Maar tegelijkertijd zie je dat hier, weet je, de waarde langzaam uitkristalliseert in
nulpunt acht, zonder ergens te komen.
Maar de rest tot nu toe, het zijn een soort nullen omdat hij niet genoeg informatie heeft om te begrijpen wat er aan
de hand is.
Oké, laten we eens kijken, laten we eens kijken wat hier gebeurt.
Verkennen, verkennen, onderzoeken wat er gaat gebeuren of is al een tijdje geleden en vergeet niet, er is
hier wat willekeur bij betrokken, dus er zijn nog een paar keer die goede, hij krijgt maar 10 iteraties.
Dus hij moet snel leren.
Oké, ik heb je daar nodig.
Laten we kijken wat er aan de hand is.
Kom op, ga al uit dat doolhof.
En ja, 10 afleveringen, dus gemiddeld rendement dat we daar niet echt in geïnteresseerd zijn.
Dus hier, eens kijken, ik heb ze nog nooit eerder gezien.
Ik klik rechts.
Daar ga je.
Dus je kunt zien dat dit het beleid is dat hij bedacht, zelfs door slechts 10 afleveringen.
Hij heeft al een beleid.
OK, ik ga naar boven en hier ga ik naar beneden.
Ik ga hier naar beneden.
Ik ga de muur in en dan spring ik hierheen.
Dat is best wel cool.
Oké, laten we nu de snelheid verhogen.
Wat was de parameter is er en het is als het verdubbelen of verviervoudigen van de snelheid en laten we het aantal
iteraties verhogen.
Dus laten we zeggen 20 iteraties deze keer.
Eens kijken of we er nu wat meer doorheen kunnen komen.
Je ziet dus dat hij wat sneller gaat.
En hij leert, hij leert dat het niet echt, weet je, uit deze staat, er zijn niet veel
goede acties of, weet je, deze acties zijn niet zo goed.
Zeker.
Deze is zeker niet goed.
Dat moet hij nog leren.
Dus vanaf hier is het ook goed.
Je kunt zien dat deze actie best goed is.
Oke.
Wat heeft hij gekregen?
OK, zo interessant beleid hier.
Hij besloot naar boven te gaan, maar niet genoeg informatie.
Laten we dat dus opnieuw doen.
En laten we de snelheid verhogen tot honderd, dus supersnel, en het aantal iteraties geeft ze
deze keer 100 honderd iteraties om die syntheses waanzinnig snel uit te voeren.
En je kunt zien dat, omdat er zoveel meer iteraties zijn, hij meer informatie heeft, meer gelegenheid
om te experimenteren en om deze matrix of matrix daadwerkelijk uit te bouwen, deze sleutelwaarden voor elke afzonderlijke staat die
hij nu kent, zoals je dat nulpunt kunt zien negenentachtig.
Wat zeiden we in ons voorbeeld?
Nulpunt zesentachtig.
Een ander ding om dit te onthouden, dat de waarde van een bepaalde staat onthoud dat de formule die we hadden
het maximum van de Q-waarden is.
Weet je nog dat ding dat we bedachten?
Sneltoets formule.
Dus wat is de waarde in deze staat?
De V van deze staat?
Het zou nul komma negenentachtig zijn, want dat is het hoogste van de vier hier.
De waarde van deze toestand is nul komma eenenzeventig.
De waarde van deze toestand is nul komma eenenzestig enzovoort.
Dus dat is iets om te onthouden.
Ik herinner me een voorbeeld.
Ik denk dat we een nulpunt zesentachtig hadden of zoiets, dus redelijk dichtbij.
En dus als we volgend jaar gaan, dat is verdwenen of ze verdwijnen daar weer en laten we
het terugkomen, oké.
OKE.
Langzaam, langzaam, langzaam.
Het opvullen van enkele ruimtes.
Ik snap het.
En het is ook vrij willekeurig omdat niet alleen de omgeving willekeurig is, maar ook de
manier waarop hij de Star verkent wanneer hij niet weet dat het beleid is dat hij willekeurig onderzoekt, blijft maar verdwijnen.
Ik begrijp niet waarom.
Hoe dan ook, laten we eens kijken wat er gebeurt als we het aantal hier verhogen en hier ongeveer evenveel tijd
in beslag nemen.
Als er geen dop op de snelheid zit.
Oké, dus omdat hij het gevoel heeft dat hij meer mogelijkheden heeft om dingen te ontdekken, oké, laten we eens kijken hoe het allemaal gaat.
En je kunt zien dat de waarden convergeren.
Ze gaan op en neer afhankelijk, weet je, want er is wat willekeur.
En hij zou kunnen eindigen als in de put, ook al gaat hij deze kant op.
Maar tegelijkertijd beginnen ze langzaam te convergeren naar een soort van waarden en sleutelwaarden.
OK, waarschijnlijk is duizend een beetje te veel in termen van tijd.
Het ziet er niet naar uit dat de snelheid ook evenredig toeneemt.
Dus het kan dat deel afsnijden.
Ik bedoel, zoals de snelheid verminderen.
Ja, nou, dit is erg lang.
Je hoeft niet tot het einde van deze tutorial te kijken, ik wil gewoon een
beetje experimenteren, dus om je wat voorbeelden te geven van waar we doorheen hebben gewerkt, maar je begrijpt dat het dit allemaal
doorloopt .
Het heeft wat willekeur zoals willekeur ingebouwd in zijn gedrag.
Dus zelfs als het een beleid heeft, zal het nog steeds blijven verkennen.
Het zal dus niet zo zijn dat het basisbeleid gewoon zijn beleid blijft volgen.
Ze zal af en toe nog experimenteren met andere varianten om haar beleid aan te scherpen.
Misschien heeft het niet meteen het beste beleid gevonden.
Misschien kan het het beleid verbeteren.
En dat is de reden waarom je zelfs na zoveel iteraties nog steeds enkele willekeurige effecten kunt zien.
Het springt soms in willekeurige toestanden, niet alleen vanwege de willekeur en de omgeving, maar ook omdat
er een bepaald niveau is, zoals een parameter die je zou kunnen controleren, die je zou kunnen instellen voor je
agent, zeggende dat, weet je, de meeste van de tijd, 80 procent van de tijd, doe wat uw beleid u
zegt te doen.
Maar 20 procent van de tijd, weet je, doe gewoon een leuk experiment en kijk wat er gebeurt en gebruik
die informatie die je verzamelt om je beleid bij te werken.
Oké, dit duurt veel te lang.
Laten we dat nog eens proberen.
Ja.
Dus zo leert de agent in verschillende staten.
Kan zijn.
Laten we er gewoon nog een uitvoeren, gewoon uit nieuwsgierigheid.
Is er dan nog iets dat we eraan kunnen veranderen?
iteraties.
OKE.
Oké, laten we eens kijken.
Ja, nou, we kunnen de discussie bijvoorbeeld veranderen.
Dus in dit geval zouden we kunnen zeggen.
Oké, min honderd min een Q, min twee min is OK duizend, dus beloning, we willen het houden, misschien laten we het op nul punt
nul vier houden.
Maar laten we het nogmaals zeggen, laten we de beloning voor elke keer op min nul punt nul houden.
En dan gaan we hier zeggen dat D.
De korting is niet nul punt negen, maar het is zoiets als nul punt nul punt vijf, dus het wordt behoorlijk verdisconteerd terwijl
je door het spel gaat.
Dus het zal nu worden gestimuleerd om dichter bij de finish te zijn in plaats van verder.
De staten die bijna klaar zijn, krijgen een hoge waarde.
Je ziet dus dat de waarde snel daalt.
Het is niet meer zo groen als voorheen.
Dus hier kun je zien dat dit nu het beleid is, dus het gaat zo, zo, zo, zo, erg
vergelijkbaar met wat we eerder zagen, alleen de waarschijnlijkheidsverschillen van hier springen hier rechtstreeks
in.
Dus dat is er niet een.
En oké, laten we er nog één uitvoeren.
Dit is zo leuk.
Laten we er nog maar één draaien.
Dus K min honderd een Q korting, houd het zoals het origineel was.
Dus voer gewoon deze basis vanille-installatie uit.
OK, OK, OK, het gaat met verschillende shows het beleid en.
Ja, we hebben het beleid, ja, goede afwerking.
Dus hier hebben we het beleid, weet je, dit is bekend.
Weet je nog die keer dat we zagen dat de mens te slim af was, tegen de muur ging om daarheen te
gaan en tegen de muur om zo te gaan, om de kans te vergroten?
Dus daar gaan we.
Dat is een voorbeeld van kunstmatige intelligentie in actie.
Heel, heel basaal, eenvoudig, belangrijk leren.
Dus geen deep learning in dit stadium.
Maar tegelijkertijd is het een hele slimme en ik hoop dat je er vandaag van geniet.
Statoil en nogmaals bedankt aan UC Berkeley en ik hoop dat je genoten hebt van de tutorial van vandaag.
En ik kijk ernaar uit om je de volgende keer te zien.
Tot dan, geniet ervan.