Czy są inne zastosowania uczenia wzmacniającego niż gry?


13

Czy istnieje sposób nauczenia uczenia się przez wzmacnianie w aplikacjach innych niż gry?

Jedyne przykłady, jakie mogę znaleźć w Internecie, to agenci gier. Rozumiem, że VNC kontroluje dane wejściowe do gier za pośrednictwem sieci wzmacniającej. Czy można to skonfigurować za pomocą oprogramowania CAD?


3
Tak, jest to możliwe, ale prawdziwym pytaniem powinno być to, czy jest bardziej wydajne niż inne algorytmy, czy nie. Jeśli masz konkretny cel, możesz pomyśleć o tym i wymodelować go jako grę (nawet życie to gra;)). W rzeczywistości wiele udanych sztucznej inteligencji korzysta z więcej niż jednej techniki. Spójrz na to: datascience.stackexchange.com/questions/11126/…
TasosGlrs

2
Chodzi o AlphaGo, że w szczególności pewien rodzaj gry ( nietrywialne , nieprzypadkowe, doskonałe informacje) stanowi doskonałą poligon do sztucznej inteligencji, ponieważ gry te mają bardzo proste parametry, ale złożoność zbliżoną do natury. Gry, z pewnej perspektywy, są najbardziej użytecznymi rodzajami artefaktów, ponieważ uczą abstrakcyjnego i strategicznego myślenia. Aby zrozumieć znaczenie gier, spójrz na wpływ teorii gier na informatykę .
DukeZhou

Może to być spowodowane NDA. Najlepsze aplikacje do nauki są zastrzeżone, podobnie jak najlepsze oprogramowanie do wież komórkowych, najlepsze rozpoznawanie głosu lub najlepsze centra handlowe online. To ogólnie inżynieria.
FauChristian,

Dobrze. Jeśli wszystko, co ma, to teoria gier, świat staje się grą.
FelicityC,

Odpowiedzi:


2

Jednym z fajnych przykładów uczenia się przez wzmocnienie jest autonomiczny latający helikopter. Miałem okazję nauczyć się ostatnio niektórych rzeczy wykonanych przez Andrew Nga i innych. Oto artykuł badania papieru . Są też inne podobne dokumenty. Możesz google, jeśli chcesz dowiedzieć się więcej.

Możesz również zobaczyć to w akcji w tym filmie na youtube .

Oto kolejna zupełnie inna aplikacja w finansach.


2

Zobaczysz wiele przykładów gier w literaturze poświęconej wzmacnianiu, ponieważ środowiska gier często można efektywnie kodować i działać szybko na jednym komputerze, który może następnie zawierać środowisko i agenta. W przypadku klasycznych gier, takich jak tryktrak, warcaby, szachy, idź, są ludzie, z którymi możemy porównać wyniki. Niektóre gry lub uproszczone środowiska gry są powszechnie używane do porównywania różnych podejść, podobnie jak odręczne cyfry MNIST są używane do porównywania nadzorowanych metod uczenia się.

Czy istnieje sposób nauczenia uczenia się przez wzmacnianie w aplikacjach innych niż gry?

Tak. Nieformalnie możesz zastosować metody uczenia się przez wzmocnienie, ilekroć możesz sformułować problem jako agent działający w środowisku, w którym można go informować o stanie i wartości nagrody wpływającej na cel. Mówiąc bardziej formalnie, teoria uczenia wzmacniającego opiera się na rozwiązaniach procesów decyzyjnych Markowa , więc jeśli możesz dopasować opis problemu do MDP, wówczas można zastosować różne techniki stosowane w RL - takie jak Q-learning, SARSA, REINFORCE -. To dopasowanie do teorii nie musi być idealne, aby wynikowy system działał, na przykład często możesz traktować nieznany lub niedokładnie obserwowany stan jako skutecznie losowy dla agenta i rozważyć tę część środowiska stochastycznego.

Oto kilka przykładów możliwych zastosowań uczenia się wzmacniającego poza grami rekreacyjnymi:

  • Sterowanie logiczne dla zmotoryzowanego robota, takie jak nauka odwracania naleśników i inne przykłady . Tutaj pomiary środowiska są wykonywane przez fizyczne czujniki robota. Nagrody są przyznawane za osiągnięcie celu, ale można je również dostosować do płynności, ekonomicznego zużycia energii itp. Agent wybiera działania niskiego poziomu, takie jak moment obrotowy silnika lub pozycja przekaźnika. Teoretycznie mogą istnieć zagnieżdżeni agenci, w których agenci wyższego poziomu wybierają cele dla agentów niższego poziomu - np. Robot może decydować na wysokim poziomie między wykonaniem jednego z trzech zadań, które wymagają przeniesienia do różnych lokalizacji, a na niższym poziomie może być decyzje dotyczące sterowania silnikami w celu przesunięcia robota do wybranego celu.

  • Samochody samojezdne. Chociaż duży nacisk kładziony jest na interpretację czujników - widzenie oznaczeń na drodze, pieszych itp., Jednak w celu wybrania pedału przyspieszenia, hamulca i układu kierowniczego wymagany jest układ sterowania.

  • Zautomatyzowany obrót finansowy. Być może gra dla niektórych ma wyraźne konsekwencje w świecie rzeczywistym. Sygnał nagrody jest jednak dość prosty, a RL można dostosować tak, aby preferował zyski krótko- lub długoterminowe.

czy można to skonfigurować za pomocą oprogramowania CAD?

Teoretycznie tak, ale nie wiem, co może być dostępne w praktyce. Potrzebujesz także jednego lub więcej celów, aby zakodować w agencie (jako wartości nagrody, które może obserwować), zanim dasz mu wirtualną mysz i ustawisz zadanie narysowania czegoś. Gry komputerowe mają system nagród wbudowany w system punktacji i zapewniają częste informacje zwrotne, dzięki czemu agent może szybko uzyskać wiedzę na temat dobrych i złych decyzji. Konieczne byłoby zastąpienie tego komponentu oceniania czymś, co reprezentuje twoje cele dla systemu opartego na CAD.

CAD nie ma nic odpowiedniego wbudowanego, chociaż narzędzia CAD z symulacjami, takie jak różne silniki fizyki lub analiza elementów skończonych, mogą pozwolić na ocenianie projektów na podstawie symulowanej miary fizycznej. Inne możliwości obejmują analizę odkształcenia, nieekonomiczne wykorzystanie materiału, niezależnie od wskaźników, jakie system CAD / CAM może zapewnić dla częściowego lub ukończonego projektu. Trudna część polega na ograniczeniu projektu do jego celu lub celu i albo na nagradzaniu go, albo na wbudowaniu ograniczeń w środowisko; zapewnienie agentowi RL pełnej, nieograniczonej kontroli procesu CAD i nagradzanie przy najmniejszym obciążeniu prawdopodobnie spowoduje coś bardzo nieciekawego, na przykład małą kostkę.


Mnóstwo odpowiednich rzeczy: automatyczne wymiarowanie dla maksymalnej przejrzystości wizualnej, wyszukiwanie interferencji ruchomych części pod obciążeniem (bez FEA), optymalizacja wyjścia CAM, przyspieszenie renderowania z wykorzystaniem przybliżonej informacji o głębokości Z itp.
FauChristian

@FauChristian: Nie jestem pewien, czy wszystkie z nich mogłyby być wykorzystane jako sygnał nagrody tak prosty jak wynik gry. Na przykład optymalizacja projektu w celu zmniejszenia obciążenia oznacza, że ​​projekt ma swój cel - musisz również dodać pewne ograniczenia / reguły, aby śledzić ten cel, a może to być trudniejsze, chyba że masz również ergonomiczną analizę. Jednak komentarz dodaje pewne rzeczy, o których mógłbym wspomnieć, i doda do odpowiedzi.
Neil Slater

Tak. Prawdziwe. Spróbuję. Proszę wybaczyć ciąg komentarzy, które będę musiał zrobić. W każdym przypadku powyżej moim celem będzie zebranie obaw projektanta mechanicznego w pojedynczy sygnał odnowy biologicznej, który może poprowadzić iteracje, mając na uwadze fakt, że może istnieć wiele narządów NN, z których każdy może być zasilany inną agregacją. Ale dla uproszczenia agreguję każdą sprawę do skalara. Posiadanie elementu stochastycznego będzie potrzebne w większości z nich, ponieważ większość przypadków w CAD ma wiele punktów krytycznych na powierzchni zagregowanej wartości.
FauChristian

Automatyczne wymiarowanie - w = sqrt (Σ min (s_clear, s_nice)) + k n_jumps, ... gdzie ... w jest agregatem jakości stanu wymiarowania rysunku, z którego można uzyskać znormalizowany sygnał sprzężenia zwrotnego, s_clear jest odległością między linią wymiarową a najbliższą inną linią, z wyłączeniem linii przeskoku, s_nice jest metaparametrem reprezentującym niezłą odległość między liniami dla rodzaju rysowanego wymiaru, k jest stałą, a n_skoki to liczba linii przeskoku ( gdzie linie przecinałyby się, ale jedna z nich ma przerwę wskazującą, że przeskakuje za drugą linią).
FauChristian

Wyszukiwania interferencji - w = n, ... gdzie ... w to agregat jakości wyszukiwania zakłóceń, a n to liczba zakłóceń wykrytych po wprowadzeniu domysłów iteracji do dynamicznej symulacji zgadywania. Ten jest jak gra, w której im bardziej prawidłowe odgadnięcie, tym wyższy wynik.
FauChristian

1

Z pewnością istnieje sposób na wprowadzenie tego, co wielu nazywa wzmocnionym nauczaniem, do prawdziwych aplikacji internetowych, mobilnych i stacji roboczych.

Robią to organizacje wojskowe, przemysł filmowy, firmy zorientowane na oprogramowanie, a ja zrobiłem to zarówno dla firm z listy Fortune 500, jak i dla małych firm. Istnieją adaptacyjne elementy uczenia się we wszystkich rodzajach elementów systemu wbudowanych w większe systemy, od robotów rozpoznawania twarzy FaceBook po Google Translate, systemy rozpoznawania kodów pocztowych USPS po autonomiczne systemy sterowania lotem i ruchem. Oprogramowanie do projektowania wspomaganego komputerowo (CAD) jest z pewnością realnym celem.

Podstawa zbrojenia

Rozważ serię wektorów opisujących zdarzenia. Wyobraź sobie, że są one podzielone na dwie podsekcje A i B. Sieć neuronowa (sztuczna lub biologiczna) może być trenowana przy użyciu A.

Trening może być nadzorowany, co oznacza, że ​​jeden z wymiarów wektora jest uważany za etykietę, a zatem zmienną zależną, aby optymalnie przewidzieć. Pozostałe wymiary stają się następnie faktami lub sygnałami wejściowymi, a zatem niezależnymi zmiennymi do zastosowania w prognozowaniu. Szkolenie może być nadzorowane przy użyciu ekstrakcji funkcji.

Tak czy inaczej, jeśli zostanie dostarczony z A przed B i oczekuje się, że będzie działał w produkcji (rzeczywiste wykorzystanie) przed przybyciem B, późniejsze przybycie B stanowi wybór.

  1. Skasuj ciężary i wszelkie dostosowania meta-parametrów dokonane podczas treningu z A i ponownie uruchom trening z połączoną serią A i B.
  2. Kontynuuj trening z B, w którym to przypadku sieć byłaby stronnicza z A, a wynik różniłby się od wyniku uzyskanego przez trening z B, a następnie A.
  3. Znajdź sposób na ograniczenie uprzedzeń związanych z pierwszym treningiem z A, unikając zużycia zasobów wymaganych dla powyższego wyboru nr 1.

Wybór nr 3 jest najlepszym wyborem w wielu przypadkach, ponieważ zawiera zalety wyborów nr 1 i nr 2. Matematycznie # 3 odbywa się poprzez ułatwienie wyprzedzania tego, czego nauczyłem się z serii A. Wagi sieci neuronowej i dostosowania meta-parametrów muszą być podatne na korektę, ponieważ nowe doświadczenia wskazują na to konieczność. Jedno naiwne podejście można matematycznie sformułować odwrotną funkcję wykładniczą, która modeluje naturalny rozpad wielu zjawisk w fizyce, chemii i naukach społecznych.

P = e -nt , gdzie P jest prawdopodobieństwem, że fakt jest nadal skuteczny, n oznacza szybkość zanikania wyuczonej w przeszłości informacji, a t jest pewną miarą postępu, na przykład znacznikiem czasu, liczbą podsekwencji (partii), numer kolejny fakt lub numer zdarzenia.

W przypadku podserii A i B, gdy powyższy wzór zostanie w jakiś sposób zaimplementowany w mechanizmie uczenia się, trening A będzie mniej obciążał wynik końcowy po dalszym treningu z użyciem B, ponieważ t dla A jest mniejszy niż t dla B, mówiąc mechanizmowi, że B jest bardziej prawdopodobne.

Jeśli rekurencyjnie podzielimy A i B na pół, tworząc coraz bardziej szczegółowe podseryty, powyższa idea pozwalająca na stopniowe zanikanie poprzednich informacji pozostaje ważna i cenna. Promowanie sieci do pierwszych informacji wykorzystywanych do szkolenia jest równoważne psychologicznym koncepcjom ograniczonego myślenia. Wydaje się, że systemy uczenia, które ewoluowały w mózg ssaków, zapominają lub tracą zainteresowanie przeszłymi rzeczami, aby zachęcić do otwartości, co nie jest niczym innym, jak pozwoleniem, by nowe uczenie się czasami poprzedziło wcześniejsze uczenie się, jeśli nowe informacje zawierają silniejsze wzorce uczenia się.

Istnieją DWA powody, dla których nowsze dane przykładowe mogą stopniowo przewyższać starsze dane przykładowe.

  • Powyższe usunięcie uprzedzeń z wcześniejszego uczenia się w celu odpowiedniego zważenia ostatnich wydarzeń w dalszym uczeniu się ma sens, jeśli wszystkie zdarzenia, których doświadczono (przeszkolono), przedstawiają rozsądne fakty na temat zewnętrznego świata, którego system próbuje się nauczyć.
  • Świat zewnętrzny może się zmieniać, a starsza nauka może stać się nieistotna lub nawet wprowadzać w błąd.

Konieczność stopniowego zmniejszania znaczenia wcześniejszych informacji w miarę ciągłego uczenia się jest jednym z dwóch głównych aspektów wzmocnienia. Drugi aspekt to zestaw koncepcji naprawczych opartych na idei sygnalizacji zwrotnej.

Informacje zwrotne i wzmocnienie

Sygnałem zwrotnym we wzmocnionym uczeniu się jest uczenie maszynowe równoważne ze znanymi pojęciami psychologicznymi, takimi jak ból, przyjemność, zadowolenie i dobre samopoczucie. System uczenia się otrzymuje informacje, aby poprowadzić trening poza cel wyodrębnienia cech, niezależności grupowania lub znalezienia neuronowej macierzy masy netto, która aproksymuje związek między cechami zdarzeń wejściowych a ich etykietami.

Dostarczone informacje mogą pochodzić wewnętrznie z wcześniej zaprogramowanego rozpoznania wzoru lub zewnętrznie z nagrody i kary, jak ma to miejsce w przypadku ssaków. Techniki i algorytmy opracowywane we wzmocnionym uczeniu maszynowym często wykorzystują te dodatkowe sygnały (stosując podział czasu na przetwarzanie) lub stale wykorzystują niezależność jednostek przetwarzania równoległych architektur przetwarzania.

Dzieło to zostało zapoczątkowane na MIT przez Norberta Wienera i przedstawione w jego książce Cybernetics (MIT Press 1948). Słowo Cybernetyka pochodzi od starszego słowa, które oznacza sterowanie statkami . Automatyczny ruch steru w celu utrzymania kursu mógł być pierwszym mechanicznym systemem sprzężenia zwrotnego. Twój silnik kosiarki prawdopodobnie ma taki silnik.

Aplikacje adaptacyjne i uczenie się

Prosta adaptacja w czasie rzeczywistym dla pozycji steru lub przepustnicy kosiarki nie uczy się. Taka adaptacja jest zwykle jakąś formą liniowej regulacji PID. Obecnie rozwijana technologia uczenia maszynowego obejmuje ocenę i kontrolę złożonych, nieliniowych systemów, które matematycy nazywają chaotycznymi.

Przez chaos nie oznaczają, że opisane procesy są w szale lub są zdezorganizowane. Chaotycy odkryli przed dziesięcioleciami, że proste równania nieliniowe mogą prowadzić do wysoce zorganizowanych zachowań. Mają na myśli to, że zjawisko jest zbyt wrażliwe na niewielkie zmiany, aby znaleźć jakiś ustalony algorytm lub formułę, aby je przewidzieć.

Język taki jest. To samo stwierdzenie, z kilkoma różnymi fleksjami wokalnymi, może oznaczać tuzin różnych rzeczy. Zdanie angielskie „Naprawdę” jest przykładem. Jest prawdopodobne, że techniki wzmocnienia umożliwią przyszłym maszynom rozróżnienie z dużym prawdopodobieństwem sukcesu między różnymi znaczeniami tego stwierdzenia.

Dlaczego najpierw gry?

Gry mają bardzo prosty i łatwy do zdefiniowania zestaw możliwych scenariuszy. Jeden z głównych czynników przyczyniających się do pojawienia się komputera, John von Neumann, argumentował w Theory of Games and Economic Behavior , książce, którą jest współautorem Oskara Morgensterna, że ​​wszelkie planowanie i podejmowanie decyzji jest w rzeczywistości graniem w gry o różnym stopniu złożoności.

Rozważ gry, przykładowy zestaw szkoleniowy kolekcji mózgów, który z czasem stworzy systemy, które mogą określać znaczenie oświadczenia, podobnie jak osoby wykształcone, na podstawie trzech źródeł wskazówek.

  1. Kontekst w rozmowie lub scenariuszu towarzyskim
  2. Odmiana głosu głośnika
  3. Wyraz twarzy i język ciała mówcy

Beyond Chess and The Game of Go

Na ścieżce od gier do systemów językowych z dokładnym rozumieniem i głębszymi możliwościami słuchania istnieje kilka zastosowań wzmocnionego uczenia się, które mają znacznie większe znaczenie dla Ziemi i ludzkiego doświadczenia.

  • Systemy, które uczą się, jak wyłączać lub tłumić światła, urządzenia, systemy cyfrowe, HVAC i inne urządzenia zużywające energię - Energia jest prawdopodobnie najbardziej wpływowym geopolitycznie towarem w historii ludzkości ze względu na wyczerpywanie się zasobów paliw kopalnych.)
  • Autonomiczny rozwój pojazdów - niebezpieczny trend eksploatacji ciężkiego sprzętu, takiego jak samoloty, pojazdy kempingowe, ciężarówki, autobusy i przyczepy ciągników przez osoby o nieznanym stanie umysłu na otwartych drogach, będzie prawdopodobnie postrzegany przez przyszłych ludzi jako szaleństwo.
  • Ocena wiarygodności informacji - Informacje są wszędzie i ponad 99% z nich zawiera błędy, częściowo lub całkowicie. Bardzo niewiele jest potwierdzonych przez rzeczywiste badania, albo odpowiednio zaprojektowane i zinterpretowane randomizowane badania z podwójnie ślepą próbą, albo potwierdzone testy laboratoryjne i analizy.
  • Aplikacje opieki zdrowotnej, które lepiej diagnozują, dostosowują środki zaradcze do danej osoby i pomagają w utrzymaniu opieki, aby zapobiec nawrotom.

Te cztery i wiele innych są znacznie ważniejsze niż gromadzenie bogactwa poprzez zautomatyzowane szybkie handlowanie lub wygrywanie konkursów, dwa samocentryczne zainteresowania uczeniem maszynowym, które wpływają tylko na jedno lub dwa pokolenia rodziny jednej osoby.

Bogactwo i sława są tym, co w teorii gier nazywa się grą o sumie zerowej . Przynoszą tyle strat, ile jest wygranych, jeśli weźmie się pod uwagę filozofię Złotej Reguły, że inni i ich rodziny są dla nas równie ważni.

Reinforced Learning for CAD (Computer Aided Design)

Projektowanie wspomagane komputerowo jest w naturalny sposób prekursorem projektowania komputerowego (bez pomocy ludzi), podobnie jak układy przeciwblokujące naturalnie prowadzą do w pełni autonomicznych pojazdów.

Zastanów się nad poleceniem: „Stwórz mi mydelniczkę na mój prysznic, która maksymalizuje prawdopodobieństwo, że moja rodzina może wziąć mydło za pierwszym razem bez otwierania oczu i minimalizuje trudność w utrzymaniu mydła i powierzchni prysznica w czystości. Oto wysokość członkowie mojej rodziny i zdjęcia kosmicznej kabiny prysznicowej. ” Następnie drukarka 3D wyskoczy z urządzenia i będzie gotowa do podłączenia wraz z instrukcją instalacji.

Oczywiście taki system CD (CAD bez A) musiałby zostać przeszkolony w zakresie sprzątania, ludzkich zachowań bez widzenia, sposobów mocowania przedmiotów do płytek, narzędzi i możliwości utrzymania w domu przeciętnego konsumenta, możliwości drukarki 3D i kilka innych rzeczy.

Takie zmiany w automatyzacji produkcji prawdopodobnie zaczną się od wzmocnionego uczenia się prostszych poleceń, takich jak: „Dołącz te dwie części za pomocą masowo produkowanych łączników i najlepszych praktyk”. Program CAD wybrałby następnie sprzęt spośród śrub, nitów, klejów i innych opcji, być może zadając projektantowi pytania dotyczące temperatur roboczych i zakresów drgań. Wybór, położenie i kąt zostaną następnie dodane do odpowiedniego zestawu części CAD i rysunków złożeniowych oraz zestawień materiałowych.


Zwykle nie komentowałbym tak dobrze napisanej odpowiedzi, ale skoro poprosiłeś o krytykę: myślę, że sekcje Podstawa wzmocnienia , informacji zwrotnej i wzmocnienia oraz aplikacji adaptacyjnych i uczenia się, chociaż interesujące, mogą zostać znacznie zmniejszone, ponieważ Pytanie OP sugeruje już pewną znajomość RL, a przed zajęciem się pierwotnym pytaniem poświęcasz dużo czasu na przygotowanie powiązanej dyskusji w tle.
Neil Slater,

To, że OP zadał pytanie, wskazuje na dziury albo obecny stan badań wskazujący na kogoś nowego w tej dziedzinie i może potrzebować podkładu we wcześniejszych sekcjach. Ostatnia sekcja bardziej bezpośrednio odpowiada na pytanie.
FauChristian
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.