Uczenie ze wzmocnieniem aplikacje

Podobne dokumenty
Uczenie ze wzmocnieniem aplikacje

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem

SPOTKANIE 11: Reinforcement learning

Problemy Decyzyjne Markowa

Systemy agentowe. Uczenie ze wzmocnieniem. Jędrzej Potoniec

Podstawy Sztucznej Inteligencji (PSZT)

Problemy Decyzyjne Markowa

Uczenie sieci typu MLP

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem generalizacja i zastosowania

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Uczenie si e ze wzmocnieniem

Uczenie si e ze wzmocnieniem

Uczenie si e ze wzmocnieniem wst ep 1 Uczenie si e ze wzmocnieniem wst ep 2. Agent wykonuje przebiegi uczace

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

SZTUCZNA INTELIGENCJA

Optymalizacja ciągła

Literatura. Sztuczne sieci neuronowe. Przepływ informacji w systemie nerwowym. Budowa i działanie mózgu

Wprowadzenie do uczenia maszynowego

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

W rozpatrywanym tu przyk ladowym zagadnieniu 4x3 b edziemy przyjmować. Uczenie si e ze wzmocnieniem pasywne 3. γ = 1.

Automatyczna predykcja. Materiały/konsultacje. Co to jest uczenie maszynowe? Przykład 6/10/2013. Google Prediction API, maj 2010

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

Kurs z NetLogo - część 4.

DOPASOWYWANIE KRZYWYCH

WYKŁAD 4. Podejmowanie decyzji dla modeli probabilistycznych Modelowanie Gaussowskie. autor: Maciej Zięba. Politechnika Wrocławska

Wstęp do Metod Systemowych i Decyzyjnych Opracowanie: Jakub Tomczak

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Sztuczna inteligencja

Systemy uczące się wykład 2

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Metody Inteligencji Sztucznej i Obliczeniowej

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

I EKSPLORACJA DANYCH

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Wojciech Jaśkowski. 6 marca 2014

Metody systemowe i decyzyjne w informatyce

wiedzy Sieci neuronowe

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Metody Optymalizacji: Przeszukiwanie z listą tabu

Systemy agentowe. Uwagi organizacyjne i wprowadzenie. Jędrzej Potoniec

Prof. Stanisław Jankowski

Metody klasyfikacji danych - część 1 p.1/24

Elementy inteligencji obliczeniowej

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Aproksymacja funkcji a regresja symboliczna

Uczenie sieci neuronowych i bayesowskich

Uczenie ze wzmocnieniem

Systemy uczące się wykład 1

Modele DSGE. Jerzy Mycielski. Maj Jerzy Mycielski () Modele DSGE Maj / 11

Sztuczna inteligencja i uczenie maszynowe w robotyce i systemach autonomicznych: AI/ML w robotyce, robotyka w AI/ML

Zastosowania sieci neuronowych

Metody selekcji cech

Elementy kognitywistyki III: Modele i architektury poznawcze

Uczenie się maszyn. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

Wstęp do sieci neuronowych, wykład 09, Walidacja jakości uczenia. Metody statystyczne.

Modelowanie Niepewności

SZTUCZNA INTELIGENCJA

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Numeryczne metody optymalizacji Optymalizacja w kierunku. informacje dodatkowe

Spis treści WSTĘP... 9

Metody eksploracji danych 2. Metody regresji. Piotr Szwed Katedra Informatyki Stosowanej AGH 2017

WYKŁAD 3. Klasyfikacja: modele probabilistyczne

Optymalizacja. Przeszukiwanie lokalne

TEORETYCZNE PODSTAWY INFORMATYKI

Metody przeszukiwania

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Systemy ekspertowe. Generowanie reguł minimalnych. Część czwarta. Autor Roman Simiński.

Zastosowania sieci neuronowych - automatyka identyfikacja sterowanie

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD XI: Sztuczne sieci neuronowe

Metody Sztucznej Inteligencji II

Aby mówić o procesie decyzyjnym Markowa musimy zdefiniować następujący zestaw (krotkę): gdzie:

Algorytmy klasyfikacji

Sieć przesyłająca żetony CP (counter propagation)

wiedzy Sieci neuronowe (c.d.)

Sieci neuronowe do przetwarzania informacji / Stanisław Osowski. wyd. 3. Warszawa, Spis treści

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

A Zadanie

Metody systemowe i decyzyjne w informatyce

Testowanie hipotez. Hipoteza prosta zawiera jeden element, np. H 0 : θ = 2, hipoteza złożona zawiera więcej niż jeden element, np. H 0 : θ > 4.

Podstawy Automatyki. wykład 1 ( ) mgr inż. Łukasz Dworzak. Politechnika Wrocławska. Instytut Technologii Maszyn i Automatyzacji (I-24)

Na podstawie: AIMA, ch13. Wojciech Jaśkowski. 15 marca 2013

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Rozpoznawanie obrazów

Meta-uczenie co to jest?

Wstęp do sieci neuronowych, wykład 13-14, Walidacja jakości uczenia. Metody statystyczne.

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

8. Neuron z ciągłą funkcją aktywacji.

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

Zastosowania sieci neuronowych

Idea. θ = θ 0, Hipoteza statystyczna Obszary krytyczne Błąd pierwszego i drugiego rodzaju p-wartość

Systemy agentowe. Uwagi organizacyjne. Jędrzej Potoniec

POŁĄCZENIE ALGORYTMÓW SYMULACYJNYCH ORAZ DZIEDZINOWYCH METOD HEURYSTYCZNYCH W ZAGADNIENIACH DYNAMICZNEGO PODEJMOWANIA DECYZJI

2. Empiryczna wersja klasyfikatora bayesowskiego

Wrocław University of Technology. Uczenie głębokie. Maciej Zięba

Transkrypt:

Uczenie ze wzmocnieniem aplikacje Na podstawie: AIMA ch21 oraz Reinforcement Learning (Sutton i Barto) Wojciech Jaśkowski Instytut Informatyki, Politechnika Poznańska 23 maja 2014

Problem decyzyjny Markova 3 + 1 2 1 0.8 1 START 0.1 0.1 1 2 3 4

Rozwiązanie problemu decyzyjnego Markova 3 + 1 3 0.812 0.868 0.912 + 1 2 1 2 0.762 0.660 1 1 1 0.705 0.655 0.611 0.388 1 2 3 4 1 2 3 4

nieznany MDP brak f. nagrody i modelu przejść 3???? 2 1??? START??? 0.1?? 0.8 0.1? 1 2 3 4

Uczenie ze wzmocnieniem Uczenie: pasywne ocena użyteczności danej polityki π aktywne znalezienie optymalnej polityki π eksploracja!

Rodzaje uczenia 1 Uczenie nadzorowane (nauczyciel) 1 klasyfikacja: stan [znana!] klasa decyzyjna 2 regresja: stan [znana!] wartość 2 Uczenie nienadzorowane (brak nauczyciela) 1 stan [nieznana!] klasa 3 Uczenie ze wzmocnieniem (krytyk) 1 stan [nieznana a priori!] kara / nagroda (wzmocnienie)

Podejścia do uczenia ze wzmocnieniem Równanie Bellman a: U(s) = R(s) + γ max a A(s) s U(s )P(s s, a) Podejścia: 1 agent odruchowy (direct policy search) uczy się polityki π : S A np. algorytm ewolucyjny 2 agent z funkcją użyteczności uczy się f. użyteczności U(s) np. adaptatywne programowanie dynamiczne (ADP), uczenie różnicowe (TDL) 3 agent z funkcją Q uczy się funkcji Q(s, a) np. Q-learning Który agent potrzebuje modelu świata?[zadanie 1]

Reguły uczenia TD-Learning U π (s) U π (s) + α ( R(s) + γu π (s ) U π (s) ) α współczynnik uczenia

Reguły uczenia TD-Learning U π (s) U π (s) + α ( R(s) + γu π (s ) U π (s) ) α współczynnik uczenia Q-Learning Q(s, a) Q(s, a) + α ( R(s) + γmax a Q(s, a ) Q(s, a) ) α współczynnik uczenia

Approksymator funkcji Liczba stanów: ADP działa rozsądnie dla problemów wielkości rzędu 10000 stanów. tryktrak (backgammon): 10 20 szachy: 10 40 Nie da się explicite rozważać tylu stanów

Approksymator funkcji Liczba stanów: ADP działa rozsądnie dla problemów wielkości rzędu 10000 stanów. tryktrak (backgammon): 10 20 szachy: 10 40 Nie da się explicite rozważać tylu stanów Aproksymator funkcji: Inna funkcja użyteczności stanu niż tablica Q lub U. Stan reprezentowany jako cechy f 1,..., f n. Aproksymator funkcji Û θ to np. liniowa kombinacja cech Û θ (s) = θ 1 f 1 (s) + θ 2 f 2 (s) + + θ n f n (s) Uczymy się tylko wartości parametrów θ = (θ 1, θ 2,..., θ n ).

Przypomnienie Generalizacja Aplikacje Bezpośrednie szukanie polityki Przykład ˆ θ (s) = θ1 pionk o w (s) + θ2 figur w centrum(s)+ U θ3 hetman?(s) + θ4 szach?(s) 1040 stanów 4 parametry

Aproksymator funkcji Aproksymator funkcji: musi być łatwo obliczalny,

Aproksymator funkcji Aproksymator funkcji: musi być łatwo obliczalny, kompresuje (dużą) przestrzeń stanów w (małą) liczbę parametrów, uogólniania wiedzę (stany odwiedzone vs. nieodwiedzone), Przykład: co 10 12 stan mistrzowski gracz w tryktraka

Aproksymator funkcji Aproksymator funkcji: musi być łatwo obliczalny, kompresuje (dużą) przestrzeń stanów w (małą) liczbę parametrów, uogólniania wiedzę (stany odwiedzone vs. nieodwiedzone), Przykład: co 10 12 stan mistrzowski gracz w tryktraka Kompromis: wielkość przestrzeni (jakość aproksymacji) vs. czas nauki

Reguła Widrow-Hoff a Bezpośrednia estymacja użyteczności 3 + 1 2 1 1 START 1 2 3 4 Przykład Dla naszego świata 4 3, niech: Û θ (x, y) = θ 0 + θ 1 x + θ 2 y Jeśli θ = (0.5, 0.2, 0.1), to ile wynosi Û θ (1, 1)?[zadanie 2]

Reguła Widrow-Hoff a Bezpośrednia estymacja użyteczności 3 + 1 2 1 1 START 1 2 3 4 Przykład Dla naszego świata 4 3, niech: Û θ (x, y) = θ 0 + θ 1 x + θ 2 y Jeśli θ = (0.5, 0.2, 0.1), to ile wynosi Û θ (1, 1)?[zadanie 2] Wykonaliśmy próbę od stanu (1, 1) i otrzymaliśmy wzmocnienie u(1, 1) = 0.4. Wniosek: Û θ (1, 1) = 0.8 to za dużo.

Reguła Widrow-Hoff a Bezpośrednia estymacja użyteczności Niech funkcja błędu: E(s) = 1 ) 2 (Ûθ (s) u(s) 2 Szukamy takich parametrów, które minimalizują błąd (gradient):

Reguła Widrow-Hoff a Bezpośrednia estymacja użyteczności Niech funkcja błędu: E(s) = 1 ) 2 (Ûθ (s) u(s) 2 Szukamy takich parametrów, które minimalizują błąd (gradient): θ i θ i α E(s) θ i ( ) ) 2 1 2 (Ûθ (s) u(s) = θ i α θ i ( ) Ûθ (s) = θ i + α u(s) Û θ (s) θ i

Przykład Bezpośrednia estymacja użyteczności Przykład dla 4x3: ( ) Ûθ (s) θ i θ i + α u(s) Û θ (s) θ i Û θ (x, y) = θ 0 + θ 1 x + θ 2 y,

Przykład Bezpośrednia estymacja użyteczności Przykład dla 4x3: więc: ( ) Ûθ (s) θ i θ i + α u(s) Û θ (s) θ i Û θ (x, y) = θ 0 + θ 1 x + θ 2 y, θ 0 θ 0 + α(u(s) Û θ (s)) θ 1 θ 1 + α(u(s) Û θ (s))x θ 2 θ 2 + α(u(s) Ûθ(s))y

Przykład Bezpośrednia estymacja użyteczności Niech: (θ 0, θ 1, θ 2 ) = (0.5, 0.2, 0.1) u(1, 1) = 0.4 Pytania: θ 0 θ 0 + α(u(s) Û θ (s)) θ 1 θ 1 + α(u(s) Û θ (s))x θ 2 θ 2 + α(u(s) Ûθ(s))y 1 Ile będą wynosić wartości parametrów (θ 0, θ 1, θ 2 ) po aktualizacji (α = 0.25)? [zadanie 3]

Przykład Bezpośrednia estymacja użyteczności Niech: (θ 0, θ 1, θ 2 ) = (0.5, 0.2, 0.1) u(1, 1) = 0.4 Pytania: θ 0 θ 0 + α(u(s) Û θ (s)) θ 1 θ 1 + α(u(s) Û θ (s))x θ 2 θ 2 + α(u(s) Ûθ(s))y 1 Ile będą wynosić wartości parametrów (θ 0, θ 1, θ 2 ) po aktualizacji (α = 0.25)? [zadanie 3] 2 Ile wyniesie Ûθ(1, 1) po aktualizacji parametrów?[zadanie 4]

Przykład Bezpośrednia estymacja użyteczności Niech: (θ 0, θ 1, θ 2 ) = (0.5, 0.2, 0.1) u(1, 1) = 0.4 Pytania: θ 0 θ 0 + α(u(s) Û θ (s)) θ 1 θ 1 + α(u(s) Û θ (s))x θ 2 θ 2 + α(u(s) Ûθ(s))y 1 Ile będą wynosić wartości parametrów (θ 0, θ 1, θ 2 ) po aktualizacji (α = 0.25)? [zadanie 3] 2 Ile wyniesie Ûθ(1, 1) po aktualizacji parametrów?[zadanie 4] 3 Chcieliśmy, aby Û θ (1, 1) się zmieniło. Czy zmieniło się także Û θ (1, 2)? [zadanie 5]

Wybór aproksymatora wiedza dziedzinowa Generalizacja 3 + 1 Agent uczy się szybciej z aproksymatorem funkcji, bo może generalizować. 2 1 START 1 Jeśli aproksymator funkcji ma postać Û θ (x, y) = θ 0 + θ 1 x + θ 2 y, 1 2 3 to szybciej dla świata 10 10 z nagrodą +1 w polu (10, 10). A co by było, gdyby +1 było w polu (5, 5)?[zadanie 6] 4

Wybór aproksymatora wiedza dziedzinowa Generalizacja 3 + 1 Agent uczy się szybciej z aproksymatorem funkcji, bo może generalizować. 2 1 START 1 Jeśli aproksymator funkcji ma postać Û θ (x, y) = θ 0 + θ 1 x + θ 2 y, 1 2 3 to szybciej dla świata 10 10 z nagrodą +1 w polu (10, 10). A co by było, gdyby +1 było w polu (5, 5)?[zadanie 6] Wiedza dziedzinowa: możemy dodać do Û θ (x, y) składnik θ 3 f 3, gdzie 2 2 4

Uczenie różnicowe Wersja oryginalna U π (s) U π (s) + α ( R(s) + γu π (s ) U π (s) ) Z aproksymatorem funkcji ( ) θ i θ i + α R(s) + γûθ(s ) Ûθ(s) Û θ (s) θ i

Q-learning Wersja oryginalna Q(s, a) Q(s, a) + α ( R(s) + γmax a Q(s, a ) Q(s, a) ) Z aproksymatorem funkcji θ i θ i + α ( R(s) + γmax a ˆQ θ (s, a ) ˆQ θ (s, a) ) ˆQ θ (s, a) θ i

Warcaby (Artur Samuel, 1959) liniowa aproksymator funkcji: 16 cech wariant uczenia różnicowego (TDL)

Tryktak (Gerry Tesauro, 1992) TD-Gammon: wcześniej: uczenie ze wzmocnieniem było tylko teoretyczną ciekawostką Teraz: 2000 cytowań Poziom mistrzowski

Tryktak (Gerry Tesauro, 1992) Początkowo: uczył sieć neuronową reprezentującą Q(s, a) za pomocą przykładów od ekspertów żmudne, słaby program Potem: gra z samym sobą (ang. self-play) Uczenie różnicowe (TDL), kara/nagroda: tylko za ostatni stan Wejście (cechy): 24 wartości ( surowy stan planszy) + 40 węzłów w warstwie ukrytej 200,000 gier uczących (2 tygodnie uczenia)

Balansowanie tyczką / odwrócone wahadło (Michie, Chambers, 1968) ang. pole balanding / inverted pendulum Problem ciągły Co jest stanem?[zadanie 7] Jakie akcje są możliwe?

Balansowanie tyczką / odwrócone wahadło (Michie, Chambers, 1968) ang. pole balanding / inverted pendulum Problem ciągły Co jest stanem?[zadanie 7] Jakie akcje są możliwe? Algorytm Boxes: Dyskretyzacja w pudełka Potrzeba jedynie 30 prób uczących, aby balansować przez godzinę Bez symulatora Negatywne wzmocnienie za ostatni (s, a) przed upadkiem. Dwie tyczki, Podwójna tyczka, Potrójna tyczka, UAV

Sterowanie dźwigami wind (Crites i Barto, 1996) ang. elevator dispatching problem Źródło: http://webdocs.cs.ualberta.ca/ sutton/book/ebook/node111.html 4 windy, 10 pięter, przestrzeń stanów: ca. 10 22 stanów. Przestrzeń akcji? Pewne uproszczenia: każda winda osobno: Multi Agent Reinforcement Learning Q-learning Stan reprezentowany przez sieć neuronową: 47 wejść, 20 węzłów ukrytych i 2 wyjścia

Bezpośrednie szukanie polityki Polityka π : S A Chcemy reprezentować π nie dla każdego stanu, ale w sposób bardziej zwięzły (np. zestaw parametrów θ) Np. możemy reprezentować politykę π jako zestaw aproksymatorów funkcji Q: π(s) = max a ˆQ θ (s, a), gdzie ˆQ θ jest np. sumą jakichś funkcji ważoną parametrami θ (vide poprzednia sekcja) Szukanie polityki = dostosowuj θ, tak aby poprawiać działanie π. Czyli: ucz się funkcji ˆQ θ. Czy to jest to samo, co Q-learning?[zadanie 8]

Reprezentacja polityki π(s) = max a ˆQ θ (s, a) W Q-learning u (z aproksymatorem funkcji) szukamy ˆQ θ, które jest możliwie bliskie Q. W szukaniu polityki szukamy θ, które powoduje, że π działa dobrze. Przykład: Czy ˆQ θ (s, a) = Q (s, a)/10 jest optymalnym rozwiązaniem?[zadanie 9] Problem: π(s) jest nieciągłą funkcją parametrów θ, jeśli akcje są dyskretne czasem minimalna zmiana w θ może spowodować, że π(s) przeskoczy z jednej akcji na inną. dlatego uczenie gradientowe π nie jest możliwe.

Polityka stochastyczna Dlatego używa się polityki stochastycznej π θ (s, a), reprezentującej prawd. wybrania akcji a w stanie s. Reprezentacja z użyciem funkcji softmax: π θ (s, a) = e ˆQ θ (s,a)/τ / a e ˆQ θ (s,a )/τ prawd. wyboru akcji b 1.0 0.8 0.6 0.4 0.2 0.0 softmax (a = 10) τ = 1 τ = 2 τ = 0.1 0 5 10 15 20 b