Reinforcement Learning jest obecnie jednym z najgorętszych tematów badawczych, a jego popularność rośnie z dnia na dzień. Przyjrzyjmy się 5 przydatnym rzeczom, które warto wiedzieć o RL.
- Czym jest reinforcement learning? Jak łączy się z innymi technikami ML?
Reinforcement Learning(RL) to rodzaj techniki uczenia maszynowego, która umożliwia agentowi uczenie się w interaktywnym środowisku metodą prób i błędów z wykorzystaniem informacji zwrotnych z własnych działań i doświadczeń.
W porównaniu do uczenia nienadzorowanego, uczenie wzmacniające różni się pod względem celów. Podczas gdy celem w uczeniu bez nadzoru jest znalezienie podobieństw i różnic między punktami danych, w uczeniu wzmacniającym celem jest znalezienie odpowiedniego modelu działania, który zmaksymalizowałby całkowitą skumulowaną nagrodę agenta. Poniższy rysunek przedstawia podstawową ideę i elementy zaangażowane w model uczenia wzmacniającego.
Rysunek 1
- Jak sformułować podstawowy problem uczenia wzmacniającego?
Kilka kluczowych terminów opisujących elementy problemu RL to:
Środowisko: Świat fizyczny, w którym działa agent
Stan: Bieżąca sytuacja agenta
Reward: Informacja zwrotna od środowiska
Policy: Metoda mapowania stanu agenta na działania
Value: Przyszła nagroda, którą agent otrzymałby podejmując akcję w danym stanie
Problem Reinforcement Learning można najlepiej wyjaśnić za pomocą gier. Weźmy grę PacMan, w której celem agenta (PacMan) jest zjedzenie jedzenia w siatce przy jednoczesnym unikaniu duchów na swojej drodze. Świat siatki jest interaktywnym środowiskiem dla agenta. PacMan otrzymuje nagrodę za zjedzenie jedzenia i karę, jeśli zostanie zabity przez ducha (przegrywa grę). Stany są lokalizacją PacMana w świecie siatki, a całkowita skumulowana nagroda to wygrana PacMana w grze.
Aby zbudować optymalną politykę, agent staje przed dylematem eksploracji nowych stanów przy jednoczesnej maksymalizacji swojej nagrody. Nazywa się to kompromisem Eksploracja vs Eksploatacja.
Markowskie Procesy Decyzyjne (MDP) są matematycznymi ramami do opisu środowiska w uczeniu wzmacniającym i prawie wszystkie problemy RL mogą być sformalizowane przy użyciu MDP. MDP składa się ze zbioru skończonych stanów środowiska S, zbioru możliwych działań A(s) w każdym stanie, funkcji nagrody o rzeczywistej wartości R(s) i modelu przejścia P(s’, s | a). Jednakże, w rzeczywistych środowiskach jest bardziej prawdopodobne, że nie ma żadnej wcześniejszej wiedzy o dynamice środowiska. W takich przypadkach przydają się wolne od modelu metody RL.
Q-learning jest powszechnie stosowanym podejściem wolnym od modelu, które może być użyte do budowy samogrającego agenta PacMan. Obraca się ono wokół pojęcia aktualizacji wartości Q, które oznaczają wartość wykonania akcji a w stanie s. Reguła aktualizacji wartości jest rdzeniem algorytmu Q-learningu.
Ryc. 2: Reguła aktualizacji wartości w uczeniu wzmacniającym
Ryc. 3: PacMan
Tutaj znajduje się film wideo z agentem PacMan uczącym się głębokiego wzmocnienia
- Jakie są najczęściej używane algorytmy uczenia wzmacniającego?
Q-learning i SARSA (State-Action-Reward-State-Action) są dwoma powszechnie używanymi bezmodelowymi algorytmami RL. Różnią się one pod względem strategii eksploracji, podczas gdy ich strategie eksploatacji są podobne. Podczas gdy Q-learning jest metodą off-policy, w której agent uczy się wartości na podstawie akcji a* pochodzącej z innej polityki, SARSA jest metodą on-policy, w której agent uczy się wartości na podstawie swojej bieżącej akcji pochodzącej z bieżącej polityki. Te dwie metody są proste w implementacji, ale brakuje im ogólności, ponieważ nie mają możliwości oszacowania wartości dla niewidzianych stanów.
To może być pokonane przez bardziej zaawansowane algorytmy, takie jak Głębokie Sieci Q, które używają Sieci Neuronowych do oszacowania wartości Q. Jednak DQN mogą obsługiwać tylko dyskretne, niskowymiarowe przestrzenie działań. DDPG (Deep Deterministic Policy Gradient) jest bezmodelowym, bezpolitycznym, krytycznym wobec aktora algorytmem, który rozwiązuje ten problem poprzez uczenie polityk w wielowymiarowych, ciągłych przestrzeniach akcji.
Rysunek 4: architektura krytyczna wobec aktora dla Reinforcement Learning
- Jakie są praktyczne zastosowania Reinforcement Learning?
Ponieważ RL wymaga dużej ilości danych, dlatego ma największe zastosowanie w dziedzinach, w których symulowane dane są łatwo dostępne, takich jak gry, robotyka.
- RL jest dość szeroko stosowane w budowaniu AI do gier komputerowych. AlphaGo Zero jest pierwszym programem komputerowym, który pokonał mistrza świata w starożytnej chińskiej grze Go. Inne obejmują gry ATARI, Backgammon, itp
- W robotyce i automatyce przemysłowej,RL jest używany, aby umożliwić robotowi stworzenie wydajnego adaptacyjnego systemu sterowania dla siebie, który uczy się na podstawie własnych doświadczeń i zachowań.Praca DeepMind nad Deep Reinforcement Learning for Robotic Manipulation with Asynchronous Policy updates jest dobrym przykładem tego samego.
- Zobacz ten interesujący film demonstracyjny.
- Inne zastosowania RL obejmują silniki streszczania tekstu, agentów dialogowych (tekst, mowa), które mogą uczyć się od interakcji użytkownika i poprawiać się z czasem, uczenie się optymalnych polityk leczenia w opiece zdrowotnej i agentów opartych na RL dla handlu akcjami online.
- Jak mogę zacząć z Reinforcement Learning?
Dla zrozumienia podstawowych pojęć RL,
- Reinforcement Learning-An Introduction, książka autorstwa ojca Reinforcement Learning- Richarda Suttona i jego doktoranta Andrew Barto. Wersja online książki jest dostępna tutaj http://incompleteideas.net/book/the-book-2nd.html
- Materiały dydaktyczne od Davida Silvera, w tym wykłady wideo, to świetny kurs wprowadzający do RL
- Oto kolejny techniczny tutorial na temat RL autorstwa Pietera Abbeela i Johna Schulmana (Open AI/ Berkeley AI Research Lab).
- Aby zacząć budować i testować agentów RL,
- Ten blog o tym, jak wytrenować agenta sieci neuronowej ATARI Pong z Policy Gradients z surowych pikseli autorstwa Andreja Karpathy’ego pomoże Ci uruchomić Twojego pierwszego agenta Deep Reinforcement Learning w zaledwie 130 liniach kodu Pythona.
- DeepMind Lab jest otwartoźródłową platformą 3D przypominającą grę stworzoną do badań AI opartych na agentach z bogatymi symulowanymi środowiskami.
- Project Malmo jest kolejną platformą eksperymentów AI wspierającą badania podstawowe w AI.
- OpenAI gym jest zestawem narzędzi do budowania i porównywania algorytmów uczenia się wzmocnień.
Bio: Shweta Bhatt jest badaczką AI z doświadczeniem w sektorze prywatnym i publicznym, pasjonuje się wpływem i zastosowaniami czerpania wiedzy z danych w celu rozwiązywania wymagających problemów. Lubi opowiadać historie za pomocą danych i mieszka w Londynie.
Powiązane:
- Resurgence of AI During 1983-2010
- Exclusive: Interview with Rich Sutton, the Father of Reinforcement Learning
- When reinforcement learning should not be used?
- Making Machine Learning Simple
.