Hallo, mijn vrienden, en welkom bij deze nieuwe sectie over de visualisatie van de resultaten
van het diepe, convolutionele, immorele.
Ten eerste wil ik je enorm feliciteren met het voltooien van deze hele implementatie
van het diepe, convolutionele leermodel.
En nu zijn we bij het leuke gedeelte waar we de resultaten van de A gaan visualiseren. L. wij hebben gemaakt.
En zoals ik al zei, aan het einde van de vorige tutorial, weet je, het laatste verhaal van de implementatie,
zei ik dat ik een verrassing voor je had.
En, nou ja, de verrassing is precies dit.
We gaan de resultaten visualiseren op Google.
Kulab En waarom is dat een leuke verrassing?
Dat is een goede verrassing, want in principe heb je absoluut geen moeite om de code uit te voeren, je weet wel, de code
uit te voeren en de resultaten te visualiseren.
Dit is inderdaad een nieuw kenmerk van de cursus.
Weet je, daarvoor draaiden we eigenlijk de code op Spider in Python, maar het was buitengewoon moeilijk
om, weet je, alle pakketten te installeren en toe te passen op de sportschoolafhankelijkheden en alle
verschillende afhankelijkheden.
Veel studenten hadden eigenlijk heel veel problemen om alles te installeren.
En aan het einde konden de meesten van hen de hele code niet goed draaien, en meestal konden ze de uiteindelijke
resultaten niet zien.
Dus ik wilde dit absoluut oplossen.
En echt de beste oplossing die ik heb bedacht, was om de hele code op te nemen.
Je hebt dus precies dezelfde code als wat we in dit deel hebben geïmplementeerd.
Maar ik heb de hele code op een Google Kulab-notebook gezet, waarbij het enige dat u hoeft te doen om de code
uit te voeren en het resultaat te visualiseren, is door hier op deze knoppen te klikken.
Dat is het enige dat u hoeft te doen, want het mooie van Google Kulab is dat de meeste
bibliotheken en pakketten al zijn geïnstalleerd.
Tenso floor is bijvoorbeeld al geïnstalleerd door martelingen die al in alle torch-modules zijn geïnstalleerd, functies
en klassen zijn al geïnstalleerd, dus je hoeft ze niet te installeren.
We moeten echter nog wat kleine afhankelijkheden installeren om ervoor te zorgen dat alles goed is
aangesloten, maar we hoeven ze niet via een terminal te installeren of, weet je, via de anakonda-prompt zoals we
deden in de zelfrijdende auto.
We hoeven alleen maar op deze afspeelknop te klikken hier in deze eerste cel om systeemafhankelijkheden te installeren voor
wijsheid.
Nu weet ik wat sommigen van jullie misschien denken.
Waarom deden we niet hetzelfde voor de zelfrijdende auto?
Helaas konden we niet hetzelfde doen, want in een zelfrijdende auto-module hadden we de gebruikersinteracties, weet
je, toen we wat verstand op de kaart stopten om de wegen te ontwerpen en wat obstakels op te werpen.
Welnu, en gelukkig heeft Google Kulab die functie nog niet om gebruikersinteracties met sommige kaarten mogelijk
te maken.
Dus ik kon het niet doen voor de zelfrijdende auto.
Mijn excuses daarvoor.
Maar daarom heb ik je het hele hoofdstuk van mijn boek over de spoedcursus gegeven, waarin alle instructies
over de zelfrijdende auto staan.
Ik hoop dat je in ieder geval alles goed hebt kunnen installeren.
Er was niet veel te installeren in vergelijking met dit te doen.
Ik hoop dat alles goed is gegaan voor de zelfrijdende auto, maar voor Doom hier, nu ben je gedekt.
U zult geen problemen ondervinden bij het uitvoeren van de code en het visualiseren van de resultaten.
Dus dat is de verrassing.
Ik hoop dat je het leuk vind.
En nu ga ik je door deze hele implementatie leiden om je te laten zien dat we inderdaad precies
dezelfde code hebben als wat we in dit deel twee hebben geïmplementeerd.
Het enige is dat ik de drie codes heb samengevoegd.
Weet je, dit is een code die we in de map hadden, weet je, samengesteld uit de beeldverwerking die ik voelde toen
de ervaring die ik voelde en de A. L. dat ik voelde met de twee delen, deel één,
het bouwen van de gegevens en een deel van het trainen van de gegevens.
Nou, wat ik gewoon deed, is dat ik de drie heb samengevoegd door eerst de afbeelding te plaatsen, voorbewerking waarvan ik dacht dat ik
die je dan in de werkmap zal laten zien.
Ten tweede, de ervaring herhaalt dat mooi.
En ten derde, het gebied dat ik daar voelde, net onder elkaar in die volgorde.
Oké, dus ik zal je dit laten zien.
En toen moest ik gewoon twee of drie dingen in deze hele code veranderen en ik zal je precies de veranderingen laten
zien, zodat je er zeker van kunt zijn dat je het verschil ziet in dat, nou ja, alles is hetzelfde
en dat, nou ja, alles is ook hetzelfde.
Absoluut geen verandering in dat bestand.
Welnu, hier, wanneer we de pakketten invoeren om te openen en goed te doen, gebruiken we die verpakking niet.
Dhoom wrappers actieruimte om in deze groep te importeren.
Die gebruiken we niet meer.
We gaan iets anders gebruiken.
Je zult het zien.
En ook heb ik de afmetingen van de frames hier veranderd, 80 bij 80.
Ik heb dat veranderd in 256 bij 256, zodat je inderdaad betere visualisatieresultaten kunt krijgen, omdat je
grotere video's kunt bekijken.
Oké, dat is precies wat ik heb veranderd.
Ik zal je laten zien.
Laten we nu beginnen met de beeldverwerking, want inderdaad, zoals ik je al zei, ik heb zojuist de drie bestanden
samengevoegd.
We beginnen dus inderdaad met beeldverwerking op de P-manier.
En zoals je kunt zien, is dit precies hetzelfde.
We beginnen met het importeren van de bibliotheken, exact dezelfde hier.
Vervolgens verwerken we afbeeldingen voor met de pre-process afbeeldingsklasse die bestaat uit de Init-methode en de
observatiemethode.
En zoals je kunt zien, is dit precies hetzelfde pre-process beeld.
En toegelaten en observatiemethode.
Goed, dan gaan we verder met de ervaring met spelen waar we precies hetzelfde hebben als we hier voor het eerst
in bibliotheken hebben geïmporteerd, namen op de stoep.
Rechts.
Dan definiëren we een stap precies hetzelfde als wat we hier hebben.
En dan maken we een voortgang op verschillende eindstappen, stappen met de eindstap voortgangsklasse, die
precies hetzelfde is als in het werkboek.
Rechts.
Ik heb hier zojuist wat copy-paste gedaan.
We hadden precies dezelfde init-methode.
Het is een methode en de beloningsstappenmethode.
Oké, dan implementeren we natuurlijk experience replay met de replay memory-klasse.
En zoals je kunt zien, hebben we precies hetzelfde in de Google-kleur.
Bovendien zul je de structuur misschien beter waarderen omdat ik wat textuur heb toegevoegd, zodat, weet je, het
nog leuker kan zijn om te visualiseren in deze werkmap.
Oke.
Dus herhaal geheugenklasse init-methode voorbeeld batch-run-stappen, in feite precies dezelfde code.
Oke.
En dan gaan we verder met de derde fout I Fordisme hoe dan ook met betrekking tot de twee delen, deel één gebouw en deel
met het trainen van de gegevens.
Dus laat me je laten zien dat we precies hetzelfde hebben in deze werkmap.
Dus ik neem aan dat hoe dan ook, we eerst de bibliotheken importeren, exact dezelfde.
Juist, zoals je kunt zien, dan is dat hier het verschil dat ik al benadrukte bij het importeren van
de pakketten om ze te openen en goed te doen in plaats van Jim Webers te importeren en vervolgens de wrapper en het pakket over te slaan
om hierin te importeren.
Wel, wat we doen is dat we Jim alleen daadwerkelijk hoeven te importeren.
Dat is hetzelfde, importeer wijsheid, Jim, wat eigenlijk de nieuwe Dhume-omgevingen zijn, die echt,
nou ja, verbeterd waren.
En tot slot de Raptors van de Jim Library.
Oke.
Dus alleen dit verschil hier, waardoor dit ding werkt op Google Kulab en ook op Python als je het
wilt uitvoeren.
En dan hoefde ik die code natuurlijk niet in Google Kulab op te nemen, simpelweg omdat we hier
de andere bestanden importeren, weet je, omdat ze gescheiden zijn.
En aangezien ik de drie bestanden op Google Color heb samengevoegd, hoef ik deze import niet uit te voeren.
Dus hier gaan we direct verder met deel één, het bouwen van het gebied.
En hier, zoals ik je al zei, hebben we exact dezelfde code, behalve de afmetingen hier.
Rechts.
Als we hier naar deel één kijken, deel één gebouw, ja.
We beginnen met het maken van de hersenen met de C en klasse.
En zoals je kunt zien, hebben we exact dezelfde code, behalve de afmetingen van de invoerframes hier,
die waren toen we de code tachtig bij tachtig implementeerden.
Maar ik heb die Google Kulab veranderd naar 256 bij 256 zodat je betere frames kunt hebben en dus betere video's om naar
te kijken.
Oké, maar de rest is precies hetzelfde.
Dus hier maken we de hersenen met de CNN-klasse, dan maken we het lichaam met de softmax body-klasse.
Dus precies hetzelfde als wat we hier hebben.
En tot slot hebben we het geheel in elkaar gezet met de A. L. klasse, het kantelen van de hersenen
en het lichaam, en ook een methode om de acties uit te voeren.
Rechts?
Precies dezelfde leeftijdsklasse samengesteld uit de hersenen in het lichaam en dan dezelfde methode om de acties uit te
voeren.
Oke.
Precies hetzelfde dus.
Alleen de afmetingen van de invoerframes zijn gewijzigd.
En laten we nu verder gaan met deel twee, dat ook precies hetzelfde zal zijn.
Ten eerste krijgen we de doemomgeving goed.
Laat me je hier ook deel twee laten zien.
We krijgen eerst het milieu.
En onthoud dat hier, aangezien we het niet langer gebruiken om het milieu te verbeteren, maar in plaats daarvan wijsheid.
Welnu, het enige dat in die code is veranderd, is inderdaad dit hier.
En hebben we wijsheid Cawdor gekregen?
Maar dit is precies dezelfde omgeving.
Oke.
En dan, natuurlijk, verander ik deze nieuwe dimensies, zodat je hier grotere video's kunt hebben.
We hebben dus geen tachtig bij tachtig meer, maar deze keer 256 bij 256.
En dan hebben we precies hetzelfde.
We krijgen de vraag en het aantal acties dat u zult zien zal zeven zijn.
Vervolgens bouwen we de API door het hersenobject te maken, weet je, CNN, dan het lichaamsobject softmax body en
dan het hele gebied bestaande uit de hersenen en het lichaam precies hetzelfde als wat we samen hebben geïmplementeerd.
Op dat moment hebben we ervaring Freeplay opgezet.
Dat is hier dus precies hetzelfde.
En dan implementeren we geschiktheid.
Treis nog precies hetzelfde.
En wat doen we dan?
Nou, we maken het voortschrijdend gemiddelde op honderd stappen.
Leidinggevenden, hetzelfde hier.
Dat is dus exact dezelfde code.
In principe zijn alleen de afmetingen van frames en de manier om de omgeving te importeren veranderd.
OK, en tot slot trainen we de AI met precies dezelfde code.
OK, dus tot hier hebben we de hele code die je in de map hebt gezien.
Wanneer je de dataset en code opnieuw downloadt, hebben we in principe ook de hele code die we samen hebben
geïmplementeerd.
Om de visualisatie vervolgens op Google te laten werken.
Kulab Nou, ik heb deze extra code toegevoegd, maar aangezien het eigenlijk alleen specifiek is voor dit kleurennotitieboekje en
ook alleen specifiek om te visualiseren.
De AIA in actie in de Doom-omgeving zal u behagen, u hoeft zich geen zorgen te maken over het begrijpen van alle codes die hier
zijn, want weet u, u zult dat maar één keer in uw leven zien wanneer u wat A wilt
bouwen en trainen. L. spelen in de omgeving.
Wat ik bedoel is dat je deze code niet hoeft te gebruiken voor de andere applicaties.
Je werkt aan één gebouw en traint in A. L. Dus maak je niet al te veel zorgen om dit meisje.
Ik heb dat net toegevoegd om het op Kulab te laten werken, maar laten we eens kijken wat ik doe.
Ik eerst natuurlijk in de bibliotheken, daarna heb ik hier enkele praktische codes toegevoegd, zodat je heel snel het aantal acties kunt
zien dat je in de omgeving hebt, evenals een weergave van het frame van de omgeving om te zien hoe
het is Leuk vinden.
En de reden dat ik dat heb toegevoegd, is omdat ik je ook ga laten zien hoe je met andere doomer-omgevingen kunt spelen,
omdat je er echt veel hebt.
En wat je dus gewoon moet doen, is de wijsheidsgang vervangen door de naam van de andere omgevingen die
hier zijn.
Ik ga je de link van die pagina geven tot aan deze tutorial.
Maar zoals je kunt zien, heb je hier veel Dhoom-omgevingen waarmee je kunt spelen, weet je,
wat basiswijsheid.
Korder, waar we nu mee gaan spelen, Wisdom Defense Center en andere.
En je hebt zelfs enkele overdekte doolhoven.
En volg gewoon de instructies hier.
Je vindt ze allemaal in deze map.
Weet je, in dit in zijn methode, kun je de naam hier gewoon vinden met wat basiswijsheid is een
verdedigingscentrum.
En u hebt er veel, veel van, ziet u.
Dus als je gratis met andere doom-omgevingen wilt spelen om dat te doen, hoef je alleen de
naam van de omgeving te veranderen.
Elke keer dat je wijsheidskleur hier in dit werkboek ziet, vervang je dat gewoon door de naam.
En dankzij deze code en deze, nou ja, je zult snel kunnen zien wat het aantal acties is, de
afmetingen van de invoervorm en ook een weergave van het frame om te zien hoe de omgeving eruit ziet,
dit zal behoorlijk praktisch zijn .
Toen heb ik deze helperfunctie voor de visualisatie gemaakt.
Dan rijd ik de A. L. op één aflevering, natuurlijk, nadat het is getraind.
Dus we gaan het eerst hier trainen.
Zoals je trouwens kunt zien, ben ik vergeten je te vertellen dat ik ook een aantal tijdperken verander van
100 naar twintig en dat simpelweg omdat, weet je, ik de afmetingen van het frame heb vergroot en omdat ik de afmetingen
van het frame heb vergroot, Nou, de training duurt veel langer omdat het natuurlijk moeilijker is om te
trainen.
En daarom heb ik het aantal van honderd tijdperken teruggebracht tot twintig.
OK, en maak je geen zorgen, we zullen al beter worden, positieve beloningen.
Maar als je de prestaties wilt verbeteren en uiteindelijk de resultaten wilt verbeteren, voel je vrij om
dat aantal e-books te vergroten.
Je krijgt nog betere resultaten.
Maar dat zie je al bij Twenty Époque, de training zal behoorlijk wat tijd in beslag nemen.
Ja is goed.
Dus waar was ik?
Ja, die hulpfunctie voor de visualisatie.
Dan laat ik de lucht op een aflevering lopen, natuurlijk nadat het is getraind.
En ten slotte zal deze laatste codecel de video van het spel uitvoeren, weet je, over deze ene aflevering en je zult
zien hoe de AI zal presteren over deze ene aflevering op een video, die zal worden uitgevoerd en die
in staat zal zijn om downloaden.
En fout is hier, weet je, wanneer we deze code uitvoeren.
Ja is goed.
Dus nu tijd voor de executie.
Tijd om echt lekker in onze stoel te gaan zitten.
Ik hoop dat je een goede koffie of een goede zien.
Nu gaan we gewoon op de verschillende afspeelknoppen en elk van de cellen drukken om het uiteindelijke resultaat uit te voeren.
Dus laten we dit doen.
Maar eerst, en dat is heel belangrijk om te begrijpen en te gaan.
Kulab Dit is dus de link van een Google Kulak-werkboek, waar jullie allemaal toegang toe hebben.
En daarom kun je er natuurlijk niets aan wijzigen, want als een van jullie goed modificeert,
zullen de anderen de wijziging zien.
Dit is dus in de alleen-lezen modus en daarom wat u moet doen om enkele wijzigingen aan te brengen,
weet u, voor het geval u de naam van de omgeving wilt wijzigen of het aantal tijdperken
wilt vergroten of zelfs uw A wilt afstemmen. L. , nou, je zult een kopie van deze werkmap moeten maken, die in
je eigen Google Drive zal staan.
En daarom heb je om dat te doen een Gmail-adres nodig om een Google Drive te
hebben.
Oké, zorg er dus voor dat je er een hebt.
En als dat eenmaal het geval is, hoef je alleen maar hier op het bestand te klikken en vervolgens een kopie op te slaan en naar binnen te rijden.
Hiermee maakt u een kopie van deze werkmap in uw eigen Google Drive waarop u enkele wijzigingen
kunt aanbrengen.
Oke.
En nu staan we hier aan het begin van deze uitvoering.
Dus nu gaan we gewoon alle cellen spelen en komen we steeds dichter bij het
eindresultaat.