G - Helion
Tytuł oryginału: Deep Reinforcement Learning Hands-On: Apply modern RL methods to practical problems of chatbots, robotics, discrete optimization, web automation, and more, 2nd Edition
TÅ‚umaczenie: Jacek Janusz
ISBN: 978-83-283-8053-0
stron: 720, Format: ebook
Data wydania: 2022-06-01
Księgarnia: Helion
Cena książki: 74,50 zł (poprzednio: 149,00 zł)
Oszczędzasz: 50% (-74,50 zł)
Osoby które kupowały "G", wybierały także:
- Data Science w Pythonie. Kurs video. Przetwarzanie i analiza danych 149,00 zł, (67,05 zł -55%)
- Machine Learning i język Python. Kurs video. Praktyczne wykorzystanie popularnych bibliotek 243,59 zł, (112,05 zł -54%)
- Matematyka w deep learningu. Co musisz wiedzie 89,00 zł, (44,50 zł -50%)
- Dylemat sztucznej inteligencji. 7 zasad odpowiedzialnego tworzenia technologii 54,90 zł, (27,45 zł -50%)
- Eksploracja danych za pomoc 67,00 zł, (33,50 zł -50%)
Spis treści
Głębokie uczenie przez wzmacnianie. Praca z chatbotami oraz robotyka, optymalizacja dyskretna i automatyzacja sieciowa w praktyce. Wydanie II eBook -- spis treści
O autorze
O recenzentach
Wstęp
Rozdział 1. Czym jest uczenie przez wzmacnianie
- Uczenie nadzorowane
- Uczenie nienadzorowane
- Uczenie przez wzmacnianie
- Trudności związane z uczeniem przez wzmacnianie
- Formalne podstawy uczenia przez wzmacnianie
- Nagroda
- Agent
- Åšrodowisko
- Akcje
- Obserwacje
- Teoretyczne podstawy uczenia przez wzmacnianie
- Procesy decyzyjne Markowa
- Polityka
- Podsumowanie
Rozdział 2. Zestaw narzędzi OpenAI Gym
- Anatomia agenta
- Wymagania sprzętowe i programowe
- Interfejs API biblioteki OpenAI Gym
- Przestrzeń akcji
- Przestrzeń obserwacji
- Åšrodowisko
- Tworzenie środowiska
- Sesja CartPole
- Losowy agent dla środowiska CartPole
- Dodatkowa funkcjonalność biblioteki Gym - opakowania i monitory
- Opakowania
- Monitory
- Podsumowanie
Rozdział 3. Uczenie głębokie przy użyciu biblioteki PyTorch
- Tensory
- Tworzenie tensorów
- Tensory skalarne
- Operacje na tensorach
- Tensory GPU
- Gradienty
- Tensory a gradienty
- Bloki konstrukcyjne sieci neuronowych
- Warstwy definiowane przez użytkownika
- Funkcje straty i optymalizatory
- Funkcje straty
- Optymalizatory
- Monitorowanie za pomocą narzędzia TensorBoard
- Podstawy obsługi narzędzia TensorBoard
- NarzÄ™dzia do tworzenia wykresów
- Przykład - użycie sieci GAN z obrazami Atari
- Biblioteka PyTorch Ignite
- Zasady działania biblioteki Ignite
- Podsumowanie
Rozdział 4. Metoda entropii krzyżowej
- Taksonomia metod uczenia przez wzmacnianie
- Praktyczne wykorzystanie entropii krzyżowej
- Użycie entropii krzyżowej w środowisku CartPole
- Użycie metody entropii krzyżowej w środowisku FrozenLake
- Teoretyczne podstawy metody entropii krzyżowej
- Podsumowanie
RozdziaÅ‚ 5. Uczenie tabelaryczne i równanie Bellmana
- Wartość, stan i optymalność
- Równanie optymalnoÅ›ci Bellmana
- Wartość akcji
- Metoda iteracji wartości
- Wykorzystanie iteracji wartości w praktyce
- Q-uczenie w środowisku FrozenLake
- Podsumowanie
Rozdział 6. Głębokie sieci Q
- Rozwiązywanie realnego problemu z wykorzystaniem metody iteracji wartości
- Q-uczenie tabelaryczne
- Głębokie Q-uczenie
- Interakcja ze środowiskiem
- Optymalizacja za pomocą stochastycznego spadku wzdłuż gradientu (SGD)
- Korelacja pomiędzy krokami
- Własność Markowa
- Ostateczna wersja procedury trenowania dla głębokich sieci Q
- Użycie głębokiej sieci Q w grze Pong
- Opakowania
- Model głębokiej sieci Q
- Trenowanie
- Uruchomienie programu i sprawdzenie jego wydajności
- Użycie modelu
- Rzeczy do przetestowania
- Podsumowanie
Rozdział 7. Biblioteki wyższego poziomu uczenia przez wzmacnianie
- Dlaczego potrzebujemy bibliotek uczenia przez wzmacnianie?
- Biblioteka PTAN
- Selektory akcji
- Agent
- ŹródÅ‚o doÅ›wiadczeÅ„
- Bufory doświadczeń
- Klasa TargetNet
- Klasy upraszczajÄ…ce wspóÅ‚pracÄ™ z bibliotekÄ… Ignite
- Rozwiązanie problemu środowiska CartPole za pomocą biblioteki PTAN
- Inne biblioteki zwiÄ…zane z uczeniem przez wzmacnianie
- Podsumowanie
Rozdział 8. Rozszerzenia sieci DQN
- Podstawowa, głęboka sieć Q
- Wspólna biblioteka
- Implementacja
- Wyniki
- Głęboka sieć Q o n krokach
- Implementacja
- Wyniki
- Podwójna sieć DQN
- Implementacja
- Wyniki
- Sieci zakÅ‚ócone
- Implementacja
- Wyniki
- Bufor priorytetowy
- Implementacja
- Wyniki
- RywalizujÄ…ce sieci DQN
- Implementacja
- Wyniki
- Kategoryczne sieci DQN
- Implementacja
- Wyniki
- Połączenie wszystkich metod
- Wyniki
- Podsumowanie
- Bibliografia
Rozdział 9. Sposoby przyspieszania metod uczenia przez wzmacnianie
- Dlaczego prędkość ma znaczenie?
- Model podstawowy
- Wykres obliczeniowy w bibliotece PyTorch
- Różne Å›rodowiska
- Granie i trenowanie w oddzielnych procesach
- Dostrajanie opakowań
- Podsumowanie testów
- RozwiÄ…zanie ekstremalne: CuLE
- Podsumowanie
- Bibliografia
Rozdział 10. Inwestowanie na giełdzie za pomocą metod uczenia przez wzmacnianie
- Handel
- Dane
- Określenie problemu i podjęcie kluczowych decyzji
- Środowisko symulujące giełdę
- Modele
- Kod treningowy
- Wyniki
- Model ze sprzężeniem wyprzedzającym
- Model konwolucyjny
- Rzeczy do przetestowania
- Podsumowanie
Rozdział 11. Alternatywa - gradienty polityki
- Wartości i polityka
- Dlaczego polityka?
- Reprezentacja polityki
- Gradienty polityki
- Metoda REINFORCE
- Przykład środowiska CartPole
- Wyniki
- Porównanie metod opartych na polityce z metodami opartymi na wartoÅ›ciach
- Ograniczenia metody REINFORCE
- Wymagane jest ukończenie epizodu
- Wariancja dużych gradientów
- Eksploracja
- Korelacja danych
- Zastosowanie metody gradientu polityki w środowisku CartPole
- Implementacja
- Wyniki
- Zastosowanie metody gradientu polityki w środowisku Pong
- Implementacja
- Wyniki
- Podsumowanie
Rozdział 12. Metoda aktor-krytyk
- Zmniejszenie poziomu wariancji
- Wariancja w środowisku CartPole
- Aktor-krytyk
- Użycie metody A2C w środowisku Pong
- Wyniki użycia metody A2C w środowisku Pong
- Dostrajanie hiperparametrów
- Podsumowanie
Rozdział 13. Asynchroniczna wersja metody aktor-krytyk
- Korelacja i wydajność próbkowania
- Zrównoleglenie metody A2C
- Przetwarzanie wieloprocesorowe w języku Python
- Algorytm A3C wykorzystujÄ…cy zrównoleglenie na poziomie danych
- Implementacja
- Wyniki
- Algorytm A3C wykorzystujÄ…cy zrównoleglenie na poziomie gradientów
- Implementacja
- Wyniki
- Podsumowanie
RozdziaÅ‚ 14. Trenowanie chatbotów z wykorzystaniem uczenia przez wzmacnianie
- Czym sÄ… chatboty?
- Trenowanie chatbotów
- Podstawy głębokiego przetwarzania języka naturalnego
- Rekurencyjne sieci neuronowe
- Osadzanie sÅ‚ów
- Architektura koder-dekoder
- Trenowanie modelu koder-dekoder
- Trenowanie z wykorzystaniem logarytmu prawdopodobieństwa
- Algorytm "Bilingual Evaluation Understudy" (BLEU)
- Zastosowanie uczenia przez wzmacnianie w modelu koder-dekoder
- Krytyczna analiza trenowania sekwencji
- Projekt chatbota
- Przykładowa struktura
- Moduły cornell.py i data.py
- Wskaźnik BLEU i moduł utils.py
- Model
- Eksploracja zbioru danych
- Trenowanie - entropia krzyżowa
- Implementacja
- Wyniki
- Trenowanie - metoda SCST
- Implementacja
- Wyniki
- Przetestowanie modeli przy użyciu danych
- Bot dla komunikatora Telegram
- Podsumowanie
Rozdział 15. Środowisko TextWorld
- Fikcja interaktywna
- Åšrodowisko
- Instalacja
- Generowanie gry
- Przestrzenie obserwacji i akcji
- Dodatkowe informacje o grze
- Podstawowa sieć DQN
- Wstępne przetwarzanie obserwacji
- Osadzenia i kodery
- Model DQN i agent
- Kod treningowy
- Wyniki trenowania
- Model generujÄ…cy polecenia
- Implementacja
- Wyniki uzyskane po wstępnym trenowaniu
- Kod treningowy sieci DQN
- Wyniki uzyskane po trenowaniu sieci DQN
- Podsumowanie
Rozdział 16. Nawigacja w sieci
- Nawigacja w sieci
- Automatyzacja działań w przeglądarce i uczenie przez wzmacnianie
- Test porównawczy MiniWoB
- OpenAI Universe
- Instalacja
- Akcje i obserwacje
- Tworzenie środowiska
- Stabilność systemu MiniWoB
- Proste klikanie
- Akcje zwiÄ…zane z siatkÄ…
- PrzeglÄ…d rozwiÄ…zania
- Model
- Kod treningowy
- Uruchamianie kontenerów
- Proces trenowania
- Testowanie wyuczonej polityki
- Problemy występujące podczas prostego klikania
- Obserwacje ludzkich działań
- Zapisywanie działań
- Format zapisywanych danych
- Trenowanie z wykorzystaniem obserwacji działań
- Wyniki
- Gra w kóÅ‚ko i krzyżyk
- Dodawanie opisów tekstowych
- Implementacja
- Wyniki
- Rzeczy do przetestowania
- Podsumowanie
Rozdział 17. Ciągła przestrzeń akcji
- Dlaczego jest potrzebna ciągła przestrzeń akcji?
- Przestrzeń akcji
- Åšrodowiska
- Metoda A2C
- Implementacja
- Wyniki
- Użycie modeli i zapisywanie plików wideo
- Deterministyczne gradienty polityki
- Eksploracja
- Implementacja
- Wyniki
- Nagrywanie plików wideo
- Dystrybucyjne gradienty polityki
- Architektura
- Implementacja
- Wyniki
- Nagrania wideo
- Rzeczy do przetestowania
- Podsumowanie
Rozdział 18. Metody uczenia przez wzmacnianie w robotyce
- Roboty i robotyka
- Złożoność robota
- Przegląd sprzętu
- Platforma
- Sensory
- Siłowniki
- Szkielet
- Pierwszy cel trenowania
- Emulator i model
- Plik z definicjÄ… modelu
- Klasa robota
- Trenowanie zgodnie z algorytmem DDPG i uzyskane wyniki
- Sterowanie sprzętem
- MicroPython
- ObsÅ‚uga czujników
- Sterowanie serwomechanizmami
- Przenoszenie modelu do sprzętu
- Połączenie wszystkiego w całość
- Eksperymentowanie z politykÄ…
- Podsumowanie
Rozdział 19. Regiony zaufania - PPO, TRPO, ACKTR i SAC
- Biblioteka Roboschool
- Model bazowy A2C
- Implementacja
- Wyniki
- Nagrywanie plików wideo
- Algorytm PPO
- Implementacja
- Wyniki
- Algorytm TRPO
- Implementacja
- Wyniki
- Algorytm ACKTR
- Implementacja
- Wyniki
- Algorytm SAC
- Implementacja
- Wyniki
- Podsumowanie
Rozdział 20. Optymalizacja typu "czarna skrzynka" w przypadku uczenia przez wzmacnianie
- Metody typu "czarna skrzynka"
- Strategie ewolucyjne
- Testowanie strategii ewolucyjnej w środowisku CartPole
- Testowanie strategii ewolucyjnej w środowisku HalfCheetah
- Algorytmy genetyczne
- Testowanie algorytmu genetycznego w środowisku CartPole
- Dostrajanie algorytmu genetycznego
- Testowanie algorytmu genetycznego w środowisku HalfCheetah
- Podsumowanie
- Bibliografia
Rozdział 21. Zaawansowana eksploracja
- Dlaczego eksploracja jest ważna?
- Co złego jest w metodzie epsilonu zachłannego?
- Alternatywne sposoby eksploracji
- Sieci zakÅ‚ócone
- Metody oparte na liczebności
- Metody oparte na prognozowaniu
- Eksperymentowanie w środowisku MountainCar
- Metoda DQN z wykorzystaniem strategii epsilonu zachłannego
- Metoda DQN z wykorzystaniem sieci zakÅ‚óconych
- Metoda DQN z licznikami stanów
- Optymalizacja bliskiej polityki
- Metoda PPO z wykorzystaniem sieci zakÅ‚óconych
- Metoda PPO wykorzystująca eksplorację opartą na liczebności
- Metoda PPO wykorzystujÄ…ca destylacjÄ™ sieci
- Eksperymentowanie ze środowiskami Atari
- Metoda DQN z wykorzystaniem strategii epsilonu zachłannego
- Klasyczna metoda PPO
- Metoda PPO z wykorzystaniem destylacji sieci
- Metoda PPO z wykorzystaniem sieci zakÅ‚óconych
- Podsumowanie
- Bibliografia
Rozdział 22. Alternatywa dla metody bezmodelowej - agent wspomagany wyobraźnią
- Metody oparte na modelu
- Porównanie metody opartej na modelu z metodÄ… bezmodelowÄ…
- Niedoskonałości modelu
- Agent wspomagany wyobraźnią
- Model środowiskowy
- Polityka wdrożenia
- Koder wdrożeń
- Wyniki zaprezentowane w artykule
- Użycie modelu I2A w grze Breakout
- Podstawowy agent A2C
- Trenowanie modelu środowiskowego
- Agent wspomagany wyobraźnią
- Wyniki eksperymentów
- Agent podstawowy
- Trenowanie wag modelu środowiskowego
- Trenowanie przy użyciu modelu I2A
- Podsumowanie
- Bibliografia
Rozdział 23. AlphaGo Zero
- Gry planszowe
- Metoda AlphaGo Zero
- Wprowadzenie
- Przeszukiwanie drzewa metodÄ… Monte Carlo (MCTS)
- Granie modelu z samym sobÄ…
- Trenowanie i ocenianie
- Bot dla gry Czwórki
- Model gry
- Implementacja algorytmu przeszukiwania drzewa metodÄ… Monte Carlo (MCTS)
- Model
- Trenowanie
- Testowanie i porównywanie
- Wyniki uzyskane w grze Czwórki
- Podsumowanie
- Bibliografia
Rozdział 24. Użycie metod uczenia przez wzmacnianie w optymalizacji dyskretnej
- Rola uczenia przez wzmacnianie
- Kostka Rubika i optymalizacja kombinatoryczna
- Optymalność i liczba boska
- Sposoby układania kostki
- Reprezentacja danych
- Akcje
- Stany
- Proces trenowania
- Architektura sieci neuronowej
- Trenowanie
- Aplikacja modelowa
- Wyniki
- Analiza kodu
- Åšrodowiska kostki
- Trenowanie
- Proces wyszukiwania
- Wyniki eksperymentu
- Kostka 2×2
- Kostka 3×3
- Dalsze usprawnienia i eksperymenty
- Podsumowanie
Rozdział 25. Metoda wieloagentowa
- Na czym polega działanie metody wieloagentowej?
- Formy komunikacji
- Użycie uczenia przez wzmacnianie
- Åšrodowisko MAgent
- Instalacja
- PrzeglÄ…d rozwiÄ…zania
- Åšrodowisko losowe
- Głęboka sieć Q obsługująca tygrysy
- Trenowanie i wyniki
- WspóÅ‚praca miÄ™dzy tygrysami
- Trenowanie tygrysów i jeleni
- Walka pomiÄ™dzy równorzÄ™dnymi aktorami
- Podsumowanie