Witam i zapraszam do Statoil.
OK, więc właśnie obliczyliśmy entropię i dodaliśmy ją do listy entropii.
A teraz to, co zamierzamy zrobić, to podjąć losową kroplę akcji zgodnie z
rozkładem prawdopodobieństw następnej.
Zróbmy to.
To kolejny krok.
Wciąż jesteśmy w pętli, ponieważ wciąż tutaj jesteśmy na etapie.
A więc teraz wiesz, jak grać w akcję.
Najpierw wprowadzimy zmienną dla akcji zwanej akcją, a następnie przyjmiemy
rozkład prawdopodobieństw i użyjemy funkcji multi bez funkcji neuronowej do losowego losowania z tego rozkładu
prawdopodobieństw, a następnie dodamy te dane.
Należy więc zauważyć, że akcja będzie w rzeczywistości tensorem z tylko jedną wartością, ale nie powinna
być traktowana jako prosta wartość.
Powinieneś to zobaczyć jako potępienie tensor po kolei, które zawiera tę wartość dla akcji.
A to dlatego, że nie jest wyciskany nadal w tej samej pętli for.
Otrzymamy logarytm prawdopodobieństwa skojarzony z akcją, która była właśnie grana.
Tak więc, kiedy umawiam się z moim prawdopodobieństwem szczęścia, biorąc poprzedni, z poprzedniego szczęścia,
obliczonego tutaj, a następnie zamierzam użyć innej metody, do której mam zamiar wprowadzić 1 i akcję, która była
właśnie gra, ponieważ chcemy uzyskać prawdopodobieństwo szczęścia powiązane z tą akcją.
A więc drugi argument tutaj mam zamiar umieścić moje działanie, ale musi być jak tortura straszna, jak
wymaga zebrana funkcja, a zebrana funkcja po prostu indeksuje się z liczbą całkowitą tensora.
W porządku, więc teraz mamy wygląd skojarzony z działaniem, które zostało wyświetlone.
A teraz następnym krokiem jest dołączenie tego, co dostaliśmy na listę tutaj.
Więc mamy tę wartość.
Oto, co mamy tutaj jako wyjście modelu.
Następnie mamy problem z blokadą.
Zamierzamy więc dodać blokadę do listy rekwizytów zamka.
Już dodamy entropię do entropii jest mniej dobra, a nagrody dostaną ją później.
Tak więc otworzymy teraz wartość i spojrzenie na listę wartości i proces prawny.
Zróbmy to.
Przyjmujemy naszą listę wartości, dodając, że korzystamy z funkcji wydatkowania i dodajemy wartość, która
została zwrócona przez model doskonały, to samo dla problemów z zamkiem. Właśnie dostaliśmy nowe rekwizyty i
dodamy je do listy rekwizytów zamka.
Tak więc w tej funkcji dopisywania możemy umieścić log z naszego szczęścia, prawdopodobnie został właśnie tutaj obliczony.
W porządku, więc nasze listy są teraz dobrze zaktualizowane.
Teraz to, co zrobimy, to odgrywanie akcji, ponieważ właśnie tutaj wybraliśmy akcję,
biorąc losowy los z rozkładu prawdopodobieństw tutaj.
Ale w rzeczywistości jeszcze tego nie graliśmy i zamierzamy zagrać teraz, abyśmy mogli dojść do nowego stanu,
a zatem uzyskać nowe przejście i grać.
Zamierzamy przyjąć nasze środowisko, ponieważ gramy akcję w naszym środowisku, a
następnie zastosujemy metodę krokową.
Wewnątrz określamy akcję, która została wybrana do jej odtworzenia, a my wykonujemy to działanie, a
my nie dodajemy tego, ponieważ taka jest oczekiwana funkcja.
Ok, ale to zwraca w rzeczywistości nowy stan, a także nową nagrodę, ponieważ osiągając nowy stan otrzymujemy nową nagrodę, a
także otrzymujemy nową wartość dla Dunna, aby wiedzieć, czy gra jest wykonana, czy nie.
W porządku, dzięki temu gramy akcję osiągamy nowy stan i otrzymujemy nagrodę i wiemy,
czy skończyliśmy grę.
I mówiąc o tym, że skończyłeś z grą.
Cóż, dodamy tutaj coś, co sprawi, że agent nie zostanie ułożony w jakimś
stanie.
W tym celu zaktualizujemy to bardzo dobrze w następujący sposób.
Cóż, będzie to równoznaczne z wykonaniem lub dodamy warunek, że odcinek gry nie
powinien trwać zbyt długo i zobaczymy w głównej funkcji, że będzie parametr długości maksymalnej,
który będzie równy do 10000.
I nie chcemy, aby odcinek trwał dłużej niż 10000 jednostek.
Więc usłyszymy odcinek długości odcinka, a my napiszemy warunek większy
niż maksymalny odcinek Lex, którego tak naprawdę nie powiedzieliśmy w tej chwili.
Otrzymujemy to od naszych parametrów kończąc tutaj Paramjit, ale Ramstad.
Max ma długość.
Oznacza to, że jeśli gra jest ukończona lub długość epizodu jest większa niż maksymalna długość zestawu
epizodów, która będzie równa 10000.
Cóż, gra się skończy i rozpoczniemy nową grę.
OK, to tylko środek ostrożności.
Mówiąc o ostrożności, dodamy kolejne środki ostrożności, aby zrekompensować nagrodę od minus 1 do
plus 1.
Już tu byliśmy, ale chcemy się upewnić, że nagroda wynosi od minus 1 do plus
1.
Aby to zrobić, musimy po prostu zaktualizować nagrodę, robiąc to, przyjmując maksimum, a następnie biorąc
mężczyznę od nagrody i 1.
I tutaj bierzemy maksimum minimalnej nagrody i 1 i minus 1, a to zapewni, że nagroda wynosi
od minus jeden plus jeden.
W porządku.
Kolejna perkusja.
A teraz po prostu chcemy sprawdzić, czy gra jest wykonana, w takim przypadku uruchomimy ponownie środowisko.
I dlaczego musimy to sprawdzić teraz, ponieważ właśnie osiągnęliśmy nowy stan.
Właśnie przeszliśmy nowe przejście.
Musimy to sprawdzić po przejściu tego nowego przejścia.
Cóż, gra nie zostanie wykonana, jeśli zrobimy to ponownie, jeśli zrobimy to
wtedy ponownie uruchomimy środowisko, ustawiając długość odcinka na zero.
A także stan zostanie ponownie zainicjowany w celu ponownego zainicjowania, gdy będziemy korzystać z naszego
środowiska i użyjemy funkcji resetowania OK.
Teraz wydostaliśmy się z tego warunku, który właśnie sprawdzał.
A teraz zrobimy to, od kiedy osiągnęliśmy nowy stan, podczas gdy ten nowy stan jest
teraz i teraz przez Raya, ponieważ pamiętajmy, że stany są wejściowymi obrazami, które pierwotnie zostały nazwane przez tablice.
Musimy więc przekształcić nowy stan w torturowaną odpowiedź.
Więc zaktualizujemy nasz stan i zamierzamy użyć biblioteki pochodni.
I oczywiście z funkcji innej niż tajlandzka, aby przekonwertować tych, którzy nie płacą, obrazów wejściowych do czujnika
palnika.
Idealny.
A teraz ostatnia rzecz, którą musimy zrobić, zanim wydostaniemy się z tej pętli, która jest pętlą
w naszych krokach. Cóż, oczywiście, należy wydać nagrodę na listę obserwacyjną.
To ostatnia rzecz, którą należy zaktualizować, zaktualizowaliśmy całą listę tutaj, z wyjątkiem nagrody.
Więc zrobimy to teraz, my wezmę nagrodę i użyjemy funkcji mózgu, aby dopisać
ostatnie słowo, które właśnie otrzymaliśmy, doskonałe.
I zanim wyjdziemy z pętli for, musimy po prostu wykonać jedną ostatnią kontrolę, aby sprawdzić, czy to zrobione,
to chcemy zatrzymać wygaśnięcie.
A więc po prostu dodamy tutaj przerwę.
Oznacza to, że jeśli to zrobimy, zatrzymamy eksplorację i przejdziemy bezpośrednio do
następnego kroku, który będzie aktualizacją modelu wspólnego, a teraz skończymy z tym na razie, że agent wykonał
swoją eksplorację.
Zaktualizuje model współdzielony, a my zajmiemy się nim w następnym samouczku, a następnie ja.