Kontakt z nami
Kurs mistrzowski AI:

AI 101

Co to jest uczenie się przez wzmacnianie?

mm
Zaktualizowano on

Co to jest uczenie się przez wzmacnianie?

Mówiąc prościej, uczenie się przez wzmacnianie to technika uczenia maszynowego, która polega na szkoleniu agenta sztucznej inteligencji poprzez powtarzanie działań i związanych z nimi nagród. Agent uczenia się przez wzmacnianie eksperymentuje w środowisku, podejmując działania i otrzymując nagrodę, gdy zostaną podjęte właściwe działania. Z czasem agent uczy się podejmować działania, które zmaksymalizują nagrodę. To krótka definicja uczenia się przez wzmacnianie, ale bliższe spojrzenie na koncepcje uczenia się przez wzmacnianie pomoże ci uzyskać lepsze, bardziej intuicyjne zrozumienie tego zjawiska.

Termin „uczenie się przez wzmacnianie” został zaadaptowany z koncepcji wzmocnienia w psychologii. Z tego powodu poświęćmy chwilę na zrozumienie psychologicznej koncepcji wzmocnienia. W sensie psychologicznym termin wzmocnienie odnosi się do czegoś, co zwiększa prawdopodobieństwo wystąpienia określonej reakcji/działania. Ta koncepcja wzmocnienia jest centralną ideą teorii warunkowania instrumentalnego, pierwotnie zaproponowaną przez psychologa BF Skinnera. W tym kontekście wzmocnieniem jest wszystko, co powoduje wzrost częstotliwości danego zachowania. Jeśli pomyślimy o możliwym wzmocnieniu dla ludzi, mogą to być pochwały, podwyżka w pracy, słodycze i zabawy.

W tradycyjnym, psychologicznym sensie istnieją dwa rodzaje wzmocnień. Wyróżnia się wzmocnienie pozytywne i wzmocnienie negatywne. Pozytywne wzmocnienie to dodanie czegoś, co poprawia zachowanie, na przykład dawanie psu smakołyku, gdy ten będzie dobrze się zachowywał. Wzmocnienie negatywne polega na usunięciu bodźca wywołującego zachowanie, na przykład wyciszeniu głośnych dźwięków w celu nakłonienia płochliwego kota.

Wzmocnienie pozytywne i negatywne

Wzmocnienie pozytywne zwiększa częstotliwość zachowania, wzmocnienie negatywne zmniejsza częstotliwość. Ogólnie rzecz biorąc, wzmocnienie pozytywne jest najczęstszym rodzajem wzmocnienia stosowanym w uczeniu się przez wzmacnianie, ponieważ pomaga modelom maksymalizować wydajność danego zadania. Co więcej, pozytywne wzmocnienie prowadzi model do wprowadzenia bardziej trwałych zmian, zmian, które mogą stać się spójnymi wzorcami i utrzymywać się przez długi czas.

W przeciwieństwie do tego, chociaż wzmocnienie negatywne również zwiększa prawdopodobieństwo wystąpienia danego zachowania, służy ono do utrzymania minimalnego standardu wydajności, a nie osiągnięcia maksymalnej wydajności modelu. Wzmocnienie negatywne w uczeniu się przez wzmacnianie może pomóc w utrzymaniu modelu z dala od niepożądanych działań, ale tak naprawdę nie może sprawić, że model będzie badał pożądane działania.

Szkolenie agenta wsparcia

Kiedy agent uczenia się przez wzmacnianie jest szkolony, istnieją cztery różne składniki or państwa wykorzystywane w szkoleniu: stany początkowe (Stan 0), stan nowy (Stan 1), akcje i nagrody.

Wyobraź sobie, że szkolimy agenta wzmacniającego do grania w platformową grę wideo, w której celem sztucznej inteligencji jest dotarcie do końca poziomu, poruszając się po ekranie. Początkowy stan gry jest pobierany z otoczenia, co oznacza, że ​​analizowana jest pierwsza klatka gry i przekazywana do modelu. Na podstawie tych informacji model musi podjąć decyzję o działaniu.

W początkowej fazie szkolenia działania te są losowe, ale w miarę wzmacniania modelu niektóre działania będą coraz częstsze. Po wykonaniu akcji środowisko gry jest aktualizowane i tworzony jest nowy stan lub ramka. Jeśli działanie podjęte przez agenta przyniosło pożądany rezultat, załóżmy w tym przypadku, że agent wciąż żyje i nie został trafiony przez wroga, agent otrzymuje jakąś nagrodę i staje się bardziej prawdopodobne, że zrobi to samo w przyszłość.

Ten podstawowy system jest stale zapętlony, dzieje się to wielokrotnie i za każdym razem agent próbuje dowiedzieć się czegoś więcej i zmaksymalizować swoją nagrodę.

Zadania epizodyczne a zadania ciągłe

Zadania związane z uczeniem się przez wzmacnianie można zazwyczaj zaliczyć do jednej z dwóch różnych kategorii: zadania epizodyczne i zadania ciągłe.

Zadania epizodyczne będą realizować pętlę uczenia się/szkolenia i poprawiać swoje wyniki do momentu spełnienia niektórych kryteriów końcowych i zakończenia szkolenia. W grze może to oznaczać dotarcie do końca poziomu lub wpadnięcie w zagrożenie, takie jak kolce. Natomiast zadania ciągłe nie mają kryteriów zakończenia i zasadniczo kontynuują szkolenie w nieskończoność, dopóki inżynier nie zdecyduje się zakończyć szkolenia.

Monte Carlo a różnica czasowa

Istnieją dwa podstawowe sposoby uczenia się lub szkolenia agenta uczenia się przez wzmacnianie. W podejście Monte Carlo, nagrody są dostarczane agentowi (jego wynik jest aktualizowany) dopiero na koniec odcinka szkoleniowego. Inaczej mówiąc, model dowiaduje się, jak dobrze działał, dopiero po spełnieniu warunku zakończenia. Może następnie wykorzystać te informacje do aktualizacji i po rozpoczęciu kolejnej rundy szkoleniowej będzie reagować zgodnie z nowymi informacjami.

Połączenia metoda różnicy czasowej różni się od metody Monte Carlo tym, że oszacowanie wartości lub oszacowanie wyniku jest aktualizowane w trakcie odcinka szkoleniowego. Gdy model przejdzie do następnego kroku czasowego, wartości zostaną zaktualizowane.

Eksploracja vs eksploatacja

Szkolenie agenta uczenia się przez wzmacnianie to działanie równoważące, obejmujące równoważenie dwóch różnych wskaźników: eksploracji i eksploatacji.

Eksploracja to czynność polegająca na gromadzeniu większej ilości informacji o otaczającym środowisku, podczas gdy eksploracja wykorzystuje już znane informacje o środowisku w celu zdobycia punktów nagrody. Jeśli agent jedynie eksploruje środowisko, a nigdy go nie wykorzystuje, pożądane działania nigdy nie zostaną wykonane. Z drugiej strony, jeśli agent tylko wykorzystuje, a nigdy nie eksploruje, nauczy się wykonywać tylko jedną akcję i nie odkryje innych możliwych strategii zdobywania nagród. Dlatego przy tworzeniu środka uczenia się przez wzmacnianie kluczowe znaczenie ma zrównoważenie eksploracji i eksploatacji.

Przypadki użycia do uczenia się ze wzmocnieniem

Uczenie się przez wzmacnianie można stosować w wielu różnych rolach i najlepiej nadaje się do zastosowań, w których zadania wymagają automatyzacji.

Automatyzacja zadań realizowanych przez roboty przemysłowe to obszar, w którym przydatne okazuje się uczenie przez wzmacnianie. Uczenie się przez wzmacnianie można również zastosować w przypadku problemów takich jak eksploracja tekstu, tworząc modele, które są w stanie podsumować długie fragmenty tekstu. Naukowcy eksperymentują także z wykorzystaniem uczenia się przez wzmacnianie w opiece zdrowotnej, przy czym środki wzmacniające zajmują się takimi zadaniami, jak optymalizacja polityki leczenia. Uczenie się przez wzmacnianie można również wykorzystać do dostosowania materiałów edukacyjnych dla uczniów.

Podsumowanie uczenia się przez wzmacnianie

Uczenie się przez wzmacnianie to potężna metoda konstruowania agentów AI, która może prowadzić do imponujących, a czasem zaskakujących wyników. Szkolenie agenta poprzez uczenie się przez wzmacnianie może być złożone i trudne, ponieważ wymaga wielu iteracji szkoleniowych i delikatnej równowagi w dychotomii eksploracja/eksploat. Jeśli jednak się powiedzie, agent stworzony w oparciu o uczenie się przez wzmacnianie może wykonywać złożone zadania w różnorodnych środowiskach.

Bloger i programista specjalizujący się w Nauczanie maszynowe i głęboki Learning tematy. Daniel ma nadzieję pomóc innym wykorzystać moc sztucznej inteligencji dla dobra społecznego.