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?
reinforcement-learning
applications
Mark Markrowave Charlton
źródło
źródło
Odpowiedzi:
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.
źródło
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ę.
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.
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ę.
źródło
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.
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.
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.
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.
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.
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.
źródło