PRZEWODNIK techniczny

Q-Learning

Q-Learning to algorytm uczenia się przez wzmacnianie, który uczy agenta, jakie działania przynoszą największe korzyści, poprzez stopniowe uczenie się wartości każdego ruchu metodą prób i błędów.

2 minuty czytaniaOstatnia aktualizacja

Przegląd

It matters because it can find optimal behavior without ever being told the rules of its environment.

Głębokie nurkowanie

Q-Learning uczy się funkcji zwanej Q(s, a): oczekiwanej długoterminowej nagrody za podjęcie działania „a” w stanie „s”, a następnie optymalne działanie. Agent zaczyna nic nie wiedzieć, próbuje działać i obserwuje nagrody. Po każdym kroku przesuwa swoją szacunkową wartość Q w kierunku właśnie otrzymanej nagrody powiększonej o najlepszą zdyskontowaną przyszłą wartość, jakiej oczekuje od następnego stanu. Co najważniejsze, jest „poza polityką” i „wolna od modeli”: może nauczyć się najlepszej polityki podczas losowej eksploracji i nigdy nie potrzebuje modelu przemian świata. Biorąc pod uwagę wystarczającą eksplorację każdej pary stan-akcja, wartości Q z pewnością zbiegają się do wartości optymalnych, a najlepszą akcją w dowolnym stanie jest po prostu ta z najwyższym Q.

Wgląd techniczny

Rdzeniem jest aktualizacja Bellmana: Q(s,a) <- Q(s,a) + alfa[r + gamma*max_a' Q(s',a') - Q(s,a)]. Alfa to szybkość uczenia się, gamma to współczynnik dyskontowy ważący przyszłe nagrody, a wyraz w nawiasach to błąd różnicy czasowej. „Maks” w stosunku do kolejnych działań sprawia, że ​​jest to poza polityką i pozwala nauczyć się zachłannej optymalnej polityki nawet podczas eksploracji. Eksploracja jest zwykle obsługiwana za pomocą zachłannego wyboru akcji epsilon.

Wpływ strategiczny

Koszt i budżet

Decyzje dotyczące architektury wpływają na wydajność i koszty operacyjne przez lata.

Jaśniejsze decyzje

Edukacja techniczna pomaga zespołom wybrać odpowiedni stos, a nie tylko najnowszy.

Kontrola jakości

Lepsze wybory inżynieryjne zmniejszają liczbę incydentów związanych z niezawodnością w produkcji.

Przyszłość Q-Learningu

Klasyczny tabelaryczny Q-Learning ma problemy, gdy stanów jest zbyt wiele, aby przechowywać je w tabeli. Dominującym kierunkiem jest łączenie go z sieciami neuronowymi, jak w Deep Q-Networks (DQN), które aproksymują wartości Q z surowych danych wejściowych, takich jak piksele. Trwają badania nad stabilizacją tego zjawiska za pomocą powtarzania doświadczeń, sieci docelowych i wariantów, takich jak Double DQN i dystrybucyjne Q-Learning, które redukują błąd związany z przeszacowaniem i reprezentują rozkłady pełnego zwrotu, a nie pojedyncze średnie.

Implementacja w świecie rzeczywistym

Agenci gier Atari (DQN firmy DeepMind) uczą się grać w Breakout i Pong bezpośrednio z pikseli ekranu

Optymalizacja czasu sygnalizacji świetlnej na skrzyżowaniach w celu zminimalizowania całkowitego czasu oczekiwania pojazdu

Nawigacja robota po siatce lub labiryncie, gdzie robot uczy się najkrótszej ścieżki maksymalizującej nagrodę

Dynamiczne decyzje dotyczące cen i zapasów, dzięki którym agent dowiaduje się, które działania maksymalizują długoterminowy zysk

Zagrożenia i poręcze

Optymalizacja jednego testu porównawczego może ukryć szersze słabości systemu.

Koszty infrastruktury i utrzymania są często niedoszacowane.

W miarę jak systemy stają się coraz bardziej złożone, luki w bezpieczeństwie i obserwowalności mogą się zwiększać.

Plan wdrożenia

1

Przed wdrożeniem zdefiniuj docelowe opóźnienia, jakość i koszty.

2

Test porównawczy w realistycznych warunkach obciążenia i danych.

3

Monitorowanie przyrządu pod kątem błędów, dryftu i wpływu użytkownika.

4

Przed skalowaniem przygotuj ścieżki wycofywania zmian i reakcji na incydenty.

Odkrywaj dalej

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Q-Learning quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Rozpocznij quiz

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Następny poradnik

Planowanie szybkości uczenia się

Często zadawane pytania

What is Q-Learning?

Q-Learning to algorytm uczenia się przez wzmacnianie, który uczy agenta, jakie działania przynoszą największe korzyści, poprzez stopniowe uczenie się wartości każdego ruchu metodą prób i błędów. Ma to znaczenie, ponieważ może znaleźć optymalne zachowanie, nie będąc nigdy informowanym o zasadach panujących w jego otoczeniu.

Co oznacza wartość Q Q(s, a)?

Q(s, a) szacuje całkowitą zdyskontowaną przyszłą nagrodę wynikającą z podjęcia działania a w stanie s i optymalnego zachowania później, a nie tylko natychmiastową nagrodę.

Dlaczego Q-Learning jest określane jako „niezgodne z zasadami”?

Maksymalna wartość w kolejnych akcjach oznacza, że ​​Q-Learning uczy się wartości zachłannej optymalnej polityki, nawet gdy agent eksploruje przy użyciu innej polityki zachowania.

Co w regule aktualizacji kontroluje współczynnik gamma rabatu?

Gamma (od 0 do 1) dyskontuje przyszłe nagrody; wartości bliskie 1 powodują, że agent jest dalekowzroczny, wartości bliskie 0 powodują, że jest on krótkowzroczny.

Jaki jest błąd różnicy czasowej (TD) w Q-Learning?

Błąd TD to różnica pomiędzy nowym oszacowaniem docelowym (nagroda plus najlepsza zdyskontowana przyszła wartość) a starym oszacowaniem Q; aktualizacja zmniejsza tę lukę.

Dlaczego zwykłe tabelaryczne Q-Learning zmaga się z dużymi problemami, takimi jak gry wideo z pikseli?

Tabela przeglądowa wymaga wpisu dla każdej pary stan-akcja, co jest niewykonalne, gdy liczba stanów liczy się w miliardach, co motywuje aproksymatory sieci neuronowych, takie jak DQN.