Czym jest uczenie przez wzmacnianie? Rodzaje Algorithms & Przykład

⚡ Inteligentne podsumowanie

Uczenie przez wzmacnianie to metoda uczenia maszynowego, w której agent programowy uczy się, działając w określonym środowisku, zbierając nagrody lub kary i dostosowując swoje zachowanie w celu maksymalizacji skumulowanej nagrody na wielu etapach.

  • 🔘 Pętla główna: Agent obserwuje stan, podejmuje działanie, otrzymuje nagrodę i ląduje w nowym stanie.
  • Trzy podejścia: Metody oparte na wartościach, polityce i modelu różnią się pod względem tego, czego agent faktycznie się uczy.
  • Dwa modele uczenia się: Procesy decyzyjne Markowa formułują problem; Q-learning rozwiązuje go na podstawie doświadczenia.
  • 🧪 Brak nadzoru: Nie istnieją żadne oznaczone odpowiedzi, istnieje jedynie opóźniony sygnał nagrody, który agent musi przypisać wcześniejszym działaniom.
  • 🛠️. Gdzie to pasuje: Robotyka, gry, sterowanie samolotami, nauczanie adaptacyjne i planowanie strategii biznesowych.
  • ⚙️ Znane koszty: Szkolenie wymaga dużych mocy obliczeniowych, projektowanie nagród jest delikatne, a rzeczywiste środowiska są hałaśliwe i niestacjonarne.

Uczenie przez wzmacnianie: algorytmy, typy i przykłady

Co to jest uczenie się przez wzmacnianie?

Uczenie się ze wzmocnieniem jest Nauczanie maszynowe Metoda ta dotyczy sposobu, w jaki agenci oprogramowania powinni podejmować działania w danym środowisku. Agentowi nie są pokazywane prawidłowe odpowiedzi; uczy się on na podstawie otrzymanej nagrody i dostosowuje swoje zachowanie, aby zmaksymalizować skumulowaną nagrodę.

Uczenie maszynowe jest odrębną gałęzią uczenia maszynowego, obok nadzorowany oraz bez nadzoru uczenie się. Gdy polityka lub funkcja wartości agenta jest reprezentowana przez sieć neuronową, kombinacja ta nazywana jest nauka głębokiego wzmacniania — to właśnie takie parowanie pozwala agentowi osiągnąć złożony cel lub zmaksymalizować konkretny wymiar na przestrzeni wielu kroków.

Ważne elementy metody uczenia się przez wzmacnianie

Zanim algorytmy nabiorą sensu, warto nazwać ich elementy. Poniższy diagram pokazuje, jak agent, środowisko, działanie i sygnał nagrody łączą się w jedną pętlę.

Pętla uczenia się wzmacniającego łącząca agenta, działanie, środowisko, stan i nagrodę

Oto kilka ważnych terminów stosowanych w uczeniu się przez wzmacnianie:

  • Agent: Podmiot wykonujący działania w określonym środowisku w celu uzyskania nagrody.
  • Środowisko (e): Scenariusz, z którym musi się zmierzyć agent.
  • Nagroda (R): Natychmiastowa zapłata przyznawana agentowi za wykonanie przez niego określonej czynności lub zadania.
  • Stan(-y): Stan odnosi się do bieżącej sytuacji zwracanej przez środowisko.
  • Polityka (π): Strategia stosowana przez agenta w celu podjęcia decyzji o następnym działaniu na podstawie bieżącego stanu.
  • Wartość (V): Oczekiwany długoterminowy zwrot z uwzględnieniem dyskonta w porównaniu do krótkoterminowej nagrody.
  • Funkcja wartości: Określa wartość stanu, czyli całkowitą kwotę nagrody, jaką agent może otrzymać, zaczynając od danego stanu.
  • Model środowiska: Naśladuje to zachowanie środowiska. Pozwala na wyciąganie wniosków i określanie zachowania środowiska.
  • Metody oparte na modelach: Metody rozwiązujące problemy związane z uczeniem się przez wzmacnianie, polegające na najpierw poznaniu lub wykorzystaniu modelu środowiska, a następnie planowaniu działań w oparciu o ten model.
  • Wartość Q lub wartość działania (Q): Wartość Q jest dość podobna do wartości. Jedyna różnica między nimi polega na tym, że przyjmuje dodatkowy parametr – bieżącą akcję.

Jak działa uczenie się przez wzmacnianie?

Codzienna analogia pozwala zrozumieć ten mechanizm jeszcze przed pojawieniem się jakichkolwiek zapisów.

Rozważ sytuację, w której uczysz swojego kota nowych sztuczek.

  • Ponieważ kot nie rozumie angielskiego ani żadnego innego ludzkiego języka, nie możemy mu bezpośrednio powiedzieć, co ma robić. Zamiast tego stosujemy inną strategię.
  • Naśladujemy sytuację, a kot próbuje zareagować na wiele różnych sposobów. Jeśli reakcja kota jest pożądana, dajemy mu rybę.
  • Teraz, kiedykolwiek kot znajdzie się w tej samej sytuacji, wykonuje podobną czynność z jeszcze większym entuzjazmem, oczekując większej nagrody (jedzenia).
  • Taką wiedzę kot czerpie z pozytywnych doświadczeń, dotyczących tego, „co robić”.
  • Jednocześnie kot uczy się, czego nie należy robić w obliczu negatywnych doświadczeń.

Przykład uczenia się przez wzmacnianie

Poniższy rysunek odwzorowuje historię kota na formalną pętlę, w której gospodarstwo domowe jest środowiskiem, a ryba nagrodą.

Przykład kota i właściciela odwzorowany na pętlę agent-środowisko uczenia się przez wzmacnianie
Jak działa uczenie się przez wzmacnianie

W tym przypadku,

  • Twój kot jest czynnikiem narażonym na działanie środowiska. W tym przypadku jest to Twój dom. Przykładem stanu może być sytuacja, gdy Twój kot siedzi, a Ty używasz konkretnego słowa, aby sprawić, by kot chodził.
  • Nasz agent reaguje, wykonując akcję przejście z jednego „stanu” do innego „stanu”.
  • Na przykład Twój kot przechodzi z siedzenia do chodzenia.
  • Reakcją agenta jest działanie, a polityka to metoda wyboru działania w danym stanie w oczekiwaniu na lepsze wyniki.
  • Po dokonaniu zmiany agent może w zamian otrzymać nagrodę lub karę.

Uczenie się ze wzmocnieniem Algorithms

Istnieją trzy podejścia do implementacji algorytmu uczenia przez wzmacnianie. Różnią się one głównie tym, co agent przechowuje i czego się uczy.

Oparte na wartościach

W metodzie uczenia się przez wzmacnianie opartej na wartościach, próbujesz zmaksymalizować funkcję wartości V(s). W tej metodzie agent oczekuje długoterminowego zwrotu bieżących stanów przy strategii π.

Oparte na zasadach

W metodzie RL opartej na polityce starasz się opracować taką politykę, aby działanie wykonywane w każdym stanie pomagało ci uzyskać maksymalną nagrodę w przyszłości.

Dwa typy metod opartych na zasadach to:

  • Deterministyczny: Dla dowolnego stanu polityka π wywołuje to samo działanie.
  • Stochastyczny: Każde działanie ma pewne prawdopodobieństwo, podane następującym równaniem.

Polityka stochastyczna:

π(a|s) = P[At = a | St = s]

Oparte na modelu

W tej metodzie uczenia się przez wzmacnianie tworzysz wirtualny model dla każdego środowiska. Agent uczy się działać w tym konkretnym środowisku.

Charakterystyka uczenia się przez wzmacnianie

Oto ważne cechy uczenia się przez wzmacnianie:

  • Nie ma nadzorcy, jest tylko liczba rzeczywista lub sygnał nagrody
  • Sekwencyjne podejmowanie decyzji
  • Czas odgrywa kluczową rolę w problemach ze wzmocnieniem
  • Informacja zwrotna jest często opóźniona, a nie natychmiastowa
  • Działania agenta determinują, jakie kolejne dane otrzyma

Rodzaje uczenia się ze wzmocnieniem

Słowo „wzmocnienie” zostało zapożyczone z psychologii behawioralnej i występuje w dwóch formach:

Pozytywny:

Definiuje się je jako zdarzenie, które występuje z powodu określonego zachowania. Zwiększa ono siłę i częstotliwość zachowania oraz pozytywnie wpływa na działanie podejmowane przez agenta.

Ten rodzaj wzmocnienia pomaga zmaksymalizować wydajność i utrzymać zmiany przez dłuższy czas. Jednak zbyt intensywne wzmocnienie może prowadzić do nadmiernej optymalizacji stanu, co może mieć wpływ na rezultaty.

Negatywny:

Wzmocnienie negatywne definiuje się jako wzmocnienie zachowania, które występuje z powodu negatywnego warunku, którego należało zaprzestać lub uniknąć. Pomaga ono określić minimalny standard wykonania. Wadą tej metody jest jednak to, że zapewnia ona tylko tyle, ile potrzeba do spełnienia minimalnego poziomu zachowania.

Uczenie się modeli wzmocnienia

Istnieją dwa ważne modele uczenia się w uczeniu się przez wzmacnianie:

  • Proces decyzyjny Markowa
  • Nauka Q

Proces decyzyjny Markowa

Aby uzyskać rozwiązanie, użyto następujących parametrów:

  • Zestaw działań – A
  • Zestaw stanów – S
  • Nagroda – R
  • Polityka – π
  • Wartość – V

Podejście matematyczne do mapyping Rozwiązanie w uczeniu wzmacniającym jest sformalizowane jako Proces Decyzyjny Markowa (MDP). Poniższy schemat przedstawia te pięć parametrów powiązanych w tym samym cyklu agent-środowisko.

Schemat procesu decyzyjnego Markowa ze stanami, działaniami, nagrodą i polityką

Q-Learning

Q learning to oparta na wartościach metoda dostarczania informacji, która wskazuje agentowi, jakie działanie podjąć.

Zrozumiemy tę metodę na poniższym przykładzie:

  • W budynku znajduje się pięć pokoi połączonych drzwiami.
  • Każdy pokój ma numer od 0 do 4
  • Zewnętrzną część budynku można traktować jako jedną dużą przestrzeń zewnętrzną (5)
  • Drzwi nr 1 i 4 prowadzą do budynku z pokoju 5

Na poniższym planie piętra zaznaczono numery pomieszczeń i pokazano, które drzwi je łączą.

Plan budynku z pięcioma pokojami, z ponumerowanymi pokojami i 5 miejscami na zewnątrz

Następnie musisz przypisać wartość nagrody do każdych drzwi:

  • Drzwi prowadzące bezpośrednio do celu mają nagrodę 100
  • Drzwi, które nie są bezpośrednio połączone z pomieszczeniem docelowym, nie dają żadnej nagrody
  • Ponieważ drzwi są dwukierunkowe, do każdego pomieszczenia przypisane są dwie strzałki
  • Każda strzałka na powyższym obrazku niesie ze sobą natychmiastową wartość nagrody

Wyjaśnienie: na tym obrazku każdy pokój przedstawia stan, a ruch agenta z jednego pokoju do drugiego przedstawia akcję.

Na poniższym wykresie stan przedstawiono jako węzeł, a strzałki pokazują dostępne działania i nagrodę przypisaną do każdego z nich.

Wykres stanu pięciu pokoi z wartościami nagród 0 i 100 przy każdym przejściu

Na przykład agent przemieszcza się z pokoju nr 2 do 5:

  • Stan początkowy = stan 2
  • Stan 2 -> stan 3
  • Stan 3 -> stan (2,1,4)
  • Stan 4-> stan (0,5,3)
  • Stan 1-> stan (5,3)
  • Stan 0 -> stan 4

Uczenie się przez wzmacnianie a uczenie się pod nadzorem

Najprostszym sposobem ujęcia uczenia się przez wzmacnianie jest zestawienie go z paradygmatem, który większość czytelników już zna.

Parametry Uczenie się ze wzmocnieniem Nadzorowana nauka
Styl decyzji Uczenie przez wzmacnianie pomaga podejmować decyzje w sposób sekwencyjny. W tej metodzie decyzję podejmuje się na podstawie danych wejściowych podanych na początku.
Działa na Działa poprzez interakcję ze środowiskiem. Pracuje na przykładach lub podanych przykładowych danych.
Zależność od decyzji W metodzie RL każda decyzja dotycząca uczenia się zależy od poprzednich, więc oceniana jest cała sekwencja decyzji. In Nadzorowana nauka decyzje są niezależne od siebie, więc każdej decyzji przypisuje się etykietę.
Najlepiej dopasowany Obsługuje i lepiej działa w sztucznej inteligencji, gdzie powszechna jest interakcja międzyludzka. Najczęściej jest obsługiwany za pomocą interaktywnego systemu oprogramowania lub aplikacji.
Przykład Gra w szachy Rozpoznawanie obiektów

Zastosowania uczenia się przez wzmacnianie

Oto zastosowania uczenia się przez wzmacnianie:

  • Robotyka dla automatyki przemysłowej.
  • Planowanie strategii biznesowej
  • Uczenie maszynowe i przetwarzanie danych
  • Pomaga tworzyć systemy szkoleniowe, które zapewniają dostosowane instrukcje i materiały zgodnie z wymaganiami uczniów.
  • Sterowanie samolotem i sterowanie ruchem robota

Dlaczego warto korzystać z uczenia się przez wzmacnianie?

Oto główne powody, dla których warto korzystać z uczenia się przez wzmacnianie:

  • Pomaga znaleźć sytuację wymagającą podjęcia działania
  • Pomaga odkryć, która akcja przynosi największe korzyści w dłuższej perspektywie
  • Uczenie przez wzmacnianie zapewnia również uczącemu się agentowi funkcję nagrody
  • Pozwala również agentowi ustalić najlepszą metodę uzyskania dużych nagród

Kiedy nie stosować uczenia się przez wzmacnianie?

Nie można stosować modelu uczenia się przez wzmacnianie w każdej sytuacji. Oto kilka sytuacji, w których nie należy go stosować.

  • Gdy dysponujesz wystarczającą ilością oznaczonych danych, aby rozwiązać problem metodą uczenia nadzorowanego
  • Uczenie się przez wzmacnianie jest wymagające pod względem obliczeniowym i czasochłonne, zwłaszcza gdy przestrzeń działania jest duża

Wyzwania uczenia się przez wzmacnianie

Oto główne wyzwania, z którymi przyjdzie Ci się zmierzyć podczas stosowania metody uczenia się przez wzmacnianie:

  • Projektowanie funkcji i nagród, które może być bardzo skomplikowane
  • Parametry mogą mieć wpływ na szybkość uczenia się.
  • Realistyczne środowiska mogą mieć częściową obserwowalność.
  • Zbyt duże wzmocnienie może prowadzić do przeciążenia stanów, co może osłabić rezultaty.
  • Realistyczne środowiska mogą być niestacjonarne.

FAQ

Eksploatacja powtarza czynność, którą obecnie uważa się za najlepszą; eksploracja próbuje czegoś innego, aby odkryć lepszą. Epsilon-chciwy radzi sobie z tym, działając losowo z prawdopodobieństwem ε, a w przeciwnym razie zachłannie, a następnie zmniejszając ε wraz z gromadzeniem doświadczenia.

Gamma waży przyszłe nagrody w stosunku do natychmiastowych. Wartość bliska 0 oznacza, że ​​agent jest krótkowzroczny i chciwy natychmiastowej nagrody; wartość bliska 1 oznacza, że ​​jest wystarczająco cierpliwy, by zaakceptować niewielką stratę teraz, by uzyskać większą wypłatę później.

Uczenie się Q jest poza polityką: aktualizuje się w kierunku najlepszej możliwej kolejnej akcji, niezależnie od tego, co agent faktycznie zrobił. SARSA działa zgodnie z polityką i aktualizuje się w kierunku faktycznie podjętej akcji, co czyni go bardziej ostrożnym w pobliżu stanów ryzykownych.

Głęboka sieć Q zastępuje tablicę Q siecią neuronową, dzięki czemu stany, które nigdy nie wystąpiły podczas treningu, nadal mogą być oceniane. Dodano odtwarzanie doświadczenia i osobną sieć docelową, aby utrzymać stabilność sygnału treningowego.

Agenci bezmodelowi, tacy jak Q-learning, uczą się wyłącznie na podstawie doświadczenia. Agenci bazujący na modelu najpierw budują model dynamiki środowiska i planują działania w oparciu o niego, co wymaga znacznie mniej rzeczywistych interakcji, ale traci na znaczeniu, gdy model jest błędny.

Uczenie się przez wzmacnianie na podstawie informacji zwrotnej od człowieka trenuje model nagrody na podstawie ludzkich preferencji, a następnie dostosowuje model językowy do tej nagrody. Dlatego asystenci bazują na głęboka nauka postępuj zgodnie z instrukcjami, zamiast tylko przewidywać tekst.

Drugi pilot GitHub jest dobry w szablonach: opakowaniach środowiskowych, buforach powtórek, pętlach treningowych i wykresach.ping a wybory hiperparametrów nadal wymagają osądu, ponieważ po cichu błędna nagroda powoduje, że agent trenuje chętnie, ale zachowuje się źle.

Gymnasium dostarcza standardowe środowiska ćwiczeń, Stable-Baselines3 dostarcza przetestowane implementacje algorytmów, a TensorFlow lub PyTorch dostarczają sieci. Zacznij od świata siatki tabelarycznej, zanim sięgniesz po którykolwiek z nich.

Podsumuj ten post następująco: