Gibt es andere Anwendungen des Verstärkungslernens als Spiele?

12

Gibt es eine Möglichkeit, verstärktes Lernen in anderen Anwendungen als Spielen zu unterrichten?

Die einzigen Beispiele, die ich im Internet finden kann, sind Spielagenten. Ich verstehe, dass VNCs die Eingabe zu den Spielen über das Verstärkungsnetzwerk steuern. Ist es möglich, dies mit einer CAD-Software einzurichten?

Mark Markrowave Charlton
quelle
3
Ja, es ist möglich, aber die eigentliche Frage sollte sein, ob es effizienter als andere Algorithmen ist oder nicht. Wenn Sie ein bestimmtes Ziel haben, können Sie es sich vorstellen und als Spiel modellieren (sogar das Leben ist ein Spiel;)). Tatsächlich nutzen viele erfolgreiche KI mehr als eine Technik. Schauen Sie sich diese an: datascience.stackexchange.com/questions/11126/…
TasosGlrs
2
Der springende Punkt bei AlphaGo ist, dass eine bestimmte Art von Spiel ( nicht trivial , nicht zufällig, perfekte Informationen) einen hervorragenden Beweisgrund für KI darstellt, da diese Spiele sehr einfache Parameter, aber eine der Natur verwandte Komplexität aufweisen. Spiele sind aus einer bestimmten Perspektive die nützlichsten Arten von Artefakten, da sie abstraktes und strategisches Denken vermitteln. Um die Bedeutung von Spielen zu verstehen, betrachten Sie die Auswirkungen der Spieltheorie auf die Informatik .
DukeZhou
Das kann an NDAs liegen. Die besten Lern-Apps sind urheberrechtlich geschützt, ebenso wie die beste Software für Zelltürme oder die beste Spracherkennung oder die besten Online-Einkaufszentren. Das ist Technik im Allgemeinen.
FauChristian
Richtig. Wenn alles, was man hat, Spieltheorie ist, wird die Welt ein Spiel.
FelicityC

Antworten:

2

Eines der coolen Beispiele für Bestärkungslernen ist ein autonomer Hubschrauber. Ich hatte die Gelegenheit, einige der Sachen zu lernen, die Andrew Ng und andere kürzlich gemacht haben. Hier ist der Forschungsartikel Papier . Es gibt auch andere ähnliche Papiere. Sie können sie googeln, wenn Sie mehr erfahren möchten.

Sie können es auch in diesem YouTube-Video in Aktion sehen .

Hier ist anscheinend eine andere ganz andere Anwendung in der Finanzierung.


quelle
2

Sie werden viele Spielbeispiele in der Literatur zum Thema Verstärkung sehen, da Spielumgebungen häufig effizient codiert werden können und schnell auf einem einzelnen Computer ausgeführt werden können, der dann die Umgebung und den Agenten enthält. Für klassische Spiele wie Backgammon, Dame, Schach oder Go gibt es menschliche Experten, mit denen wir die Ergebnisse vergleichen können. Bestimmte Spiele oder vereinfachte spielähnliche Umgebungen werden häufig zum Vergleichen verschiedener Ansätze verwendet, ähnlich wie handgeschriebene MNIST-Ziffern zum Vergleichen von Ansätzen für überwachtes Lernen verwendet werden.

Gibt es eine Möglichkeit, verstärktes Lernen in anderen Anwendungen als Spielen zu unterrichten?

Ja. Informell können Sie Bestärkungslernansätze anwenden, wenn Sie ein Problem als Agent in einem Umfeld darstellen können, in dem es über den Zustand und einen zielbeeinflussenden Belohnungswert informiert werden kann. Formal basiert die Theorie des Bestärkungslernens auf Lösungen für Markov-Entscheidungsprozesse. Wenn Sie also Ihre Problembeschreibung an einen MDP anpassen können, können die verschiedenen in RL verwendeten Techniken wie Q-Learning, SARSA und REINFORCE angewendet werden. Diese Übereinstimmung mit der Theorie muss nicht perfekt sein, damit das resultierende System funktioniert. Beispielsweise können Sie einen unbekannten oder unvollständig beobachteten Zustand häufig als praktisch zufällig für den Agenten behandeln und diesen Teil einer stochastischen Umgebung betrachten.

Hier sind einige Beispiele für mögliche Anwendungen für das Lernen außerhalb von Freizeitspielen:

  • Steuerlogik für motorisierte Roboter, wie z das Umdrehen von Pfannkuchen und andere Beispiele . Hier werden die Umgebungsmessungen durch physikalische Sensoren am Roboter vorgenommen. Die Belohnungen werden für das Erreichen eines Ziels vergeben, können aber auch für die Laufruhe, den sparsamen Einsatz von Energie usw. angepasst werden. Der Agent wählt Aktionen auf niedriger Ebene wie das Motordrehmoment oder die Relaisposition. Theoretisch kann es verschachtelte Agenten geben, bei denen übergeordnete die Ziele für untergeordnete auswählen - z. B. kann der Roboter auf hoher Ebene entscheiden, ob er eine von drei Aufgaben ausführen möchte, für die ein Wechsel an einen anderen Ort erforderlich ist, und auf niedrigerer Ebene Entscheidungen darüber, wie Motoren gesteuert werden sollen, um den Roboter zum gewünschten Ziel zu bewegen.

  • Selbstfahrende Autos. Obwohl viel Wert auf die Sensorinterpretation gelegt wird - siehe Straßenmarkierungen, Fußgänger usw. - ist ein Steuersystem erforderlich, um Gas, Bremse und Lenkung auszuwählen.

  • Automatisierter Finanzhandel. Vielleicht ein Spiel für manche, es gibt klare Konsequenzen für die reale Welt. Das Belohnungssignal ist jedoch einfach genug und RL kann angepasst werden, um langfristige oder kurzfristige Gewinne zu bevorzugen.

Ist es möglich, dies mit einer CAD-Software einzurichten?

Theoretisch ja, aber ich weiß nicht, was in der Praxis dafür zur Verfügung steht. Außerdem müssen Sie ein oder mehrere Ziele berücksichtigen, die Sie in den Agenten codieren (als Belohnungswerte, die er beobachten kann), bevor Sie ihm eine virtuelle Maus geben und eine Aufgabe zum Zeichnen festlegen. Computerspiele verfügen über ein Belohnungssystem, das als Bewertungssystem integriert ist, und bieten häufiges Feedback, sodass ein Agent schnell Informationen über gute und schlechte Entscheidungen erhält. Sie müssten diese Bewertungskomponente durch eine Komponente ersetzen, die Ihre Ziele für das CAD-basierte System darstellt.

In CAD ist nichts Passendes eingebaut, obwohl CAD-Tools mit Simulationen, wie z. B. verschiedene Physik-Engines oder Finite-Elemente-Analysen, es Ihnen ermöglichen könnten, Konstruktionen basierend auf simulierten physikalischen Maßen zu bewerten. Andere Möglichkeiten umfassen die Analyse der Beanspruchung und die nicht verschwenderische Verwendung von Material, unabhängig davon, welche Metriken das CAD / CAM-System für eine teilweise oder vollständige Konstruktion bereitstellen kann. Der schwierige Teil besteht darin, ein Design auf sein Ziel oder seinen Zweck zu beschränken und entweder dafür zu sorgen, dass es belohnt wird, oder die Einschränkungen in die Umgebung zu integrieren. Wenn Sie einem RL-Agenten die uneingeschränkte Kontrolle über den CAD-Prozess geben und die geringste Belastung ausgleichen, führt dies wahrscheinlich zu etwas sehr uninteressantem wie einem kleinen Würfel.

Neil Slater
quelle
Viele geeignete Dinge: Automatische Bemaßung für maximale visuelle Klarheit, Interferenzsuche nach beweglichen Teilen unter Belastung (ohne FEA), Optimierung der CAM-Ausgabe,
Renderbeschleunigung unter
@FauChristian: Ich bin nicht sicher, ob all das als Belohnungssignal so einfach wie ein Spielergebnis eingegeben werden kann. Die Optimierung eines Designs für eine geringere Belastung impliziert beispielsweise, dass Ihr Design einen Zweck hat - Sie müssen auch einige Einschränkungen / Regeln hinzufügen, um diesen Zweck zu verfolgen. Dies könnte schwieriger sein, es sei denn, Sie verfügen auch über eine ergonomische Analyse. Der Kommentar fügt jedoch einige Dinge hinzu, die ich erwähnen könnte, und wird die Antwort ergänzen.
Neil Slater
Ja. Wahr. Ich werde es versuchen. Bitte entschuldigen Sie die vielen Kommentare, die ich dazu brauche. In jedem der oben genannten Fälle wird es mein Ziel sein, die Anliegen eines Maschinenbauers in einem einzigen Wellness-Signal zusammenzufassen, das Iterationen leiten könnte, wobei die Wahrheit berücksichtigt wird, dass es mehrere NN-Organe geben kann, denen jeweils eine andere Aggregation zugeführt werden kann. Der Einfachheit halber fasse ich jeden Fall zu einem Skalar zusammen. Für die meisten davon ist ein stochastisches Element erforderlich, da die meisten CAD-Fälle mehrere kritische Punkte in der Oberfläche des aggregierten Werts aufweisen.
FauChristian
Automatische Bemaßung - w = sqrt (Σ min (s_clear, s_nice)) + k n_jumps, ... wobei ... w das Qualitätsaggregat des Zustands der Bemaßung der Zeichnung ist, aus dem ein normalisiertes Rückkopplungssignal abgeleitet werden kann, s_clear ist der Abstand zwischen einer Bemaßungslinie und der nächsten anderen Linie ohne Sprunglinien, s_nice ist ein Metaparameter, der einen schönen Abstand zwischen den Linien für den zu bemaßenden Zeichnungstyp darstellt, k ist eine Konstante und n_jumps ist die Anzahl der Sprunglinien ( wo sich die Linien kreuzen würden, aber eine der beiden eine Lücke hat, um anzuzeigen, dass sie hinter die andere Linie springt).
FauChristian
Interferenzsuchen - w = n, ... wobei ... w das Qualitätsaggregat der Interferenzsuche ist und n die Anzahl der gefundenen Interferenzen ist, nachdem die Iterationsschätzungen in eine dynamische Simulation der Schätzung eingespeist wurden. Dieses Spiel ist insofern wie ein Spiel, als die Punktzahl umso höher ist, je genauer die Einschätzung ist.
FauChristian
1

Es gibt definitiv eine Möglichkeit, das, was viele als verstärktes Lernen bezeichnen, in echte Web-, Mobil- und Workstation-Anwendungen einzuführen.

Militärische Organisationen tun es, die Filmindustrie tut es, Software-zentrierte Unternehmen tun es, und ich habe es für Fortune 500-Unternehmen und kleine Unternehmen gleichermaßen getan. Es gibt adaptive Lernkomponenten in allen Arten von Systemkomponenten, die in größere Systeme eingebettet sind, von FaceBook-Gesichtserkennungsrobotern über Google Translate, USPS-Postleitzahlerkennungssystemen bis hin zu autonomen Flug- und Verkehrskontrollsystemen. Computer Aided Design Software (CAD) ist sicherlich ein brauchbares Ziel.

Die Basis für die Verstärkung

Betrachten Sie eine Reihe von Vektoren, die Ereignisse beschreiben. Stellen Sie sich vor, sie sind in zwei Unterserien A und B unterteilt. Ein neuronales Netz (künstlich oder biologisch) könnte mit A trainiert werden.

Das Training könnte überwacht werden, was bedeutet, dass eine der Dimensionen des Vektors als Label und daher als abhängige Variable betrachtet wird, um eine optimale Vorhersage zu ermöglichen. Die anderen Dimensionen werden dann zu Fakten oder Eingangssignalen und damit zu unabhängigen Variablen, die für die Vorhersage verwendet werden. Das Training kann mithilfe der Funktionsextraktion unbeaufsichtigt bleiben.

In beiden Fällen stellt das spätere Eintreffen von B eine Wahl dar, wenn A vor B bereitgestellt wird und erwartet wird, dass es in der Produktion (reale Verwendung) vor dem Eintreffen von B ausgeführt wird.

  1. Löschen Sie die Gewichte und alle während des Trainings durchgeführten Meta-Parameter-Anpassungen mit A und führen Sie das Training mit der verketteten Reihe von A und B erneut aus.
  2. Setzen Sie das Training mit B fort. In diesem Fall würde das Netzwerk mit A verzerrt und das Ergebnis würde sich von dem Ergebnis unterscheiden, das durch das Training mit B und dann mit A erzielt wird.
  3. Finden Sie einen Weg, die Tendenz zu begrenzen, zuerst mit A trainiert zu haben, während Sie den Ressourcenverbrauch vermeiden, der für die obige Wahl 1 erforderlich ist.

Wahl 3 ist in vielen Fällen die beste Wahl, da sie die Vorteile der Wahl 1 und 2 bietet. Mathematisch gesehen wird # 3 dadurch erreicht, dass das, was aus der Serie A gelernt wurde, auf irgendeine Weise voreingestellt wird. Die neuronalen Nettogewichte und Metaparameteranpassungen müssen korrigierbar gemacht werden, da neue Erfahrungen dies erfordern. Ein naiver Ansatz kann mathematisch formuliert werden: die inverse Exponentialfunktion, die den natürlichen Zerfall in vielen Phänomenen der Physik, Chemie und Sozialwissenschaften modelliert.

P = e -nt , wobei P die Wahrscheinlichkeit ist, dass die Tatsache noch wirksam ist, n die Abklingrate der in der Vergangenheit gelernten Informationen ist und t ein Maß für den Fortschritt in der Zukunft ist , wie Zeitstempel, Teilsequenz (Chargennummer), Faktensequenznummer oder Ereignisnummer.

Wenn im Fall der Teilreihen A und B die obige Formel auf irgendeine Weise in den Lernmechanismus implementiert ist, wird das Training von A nach dem fortgesetzten Training mit B weniger Verzerrung auf das Endergebnis ausüben, da das t für A geringer ist als das t für B, was den Mechanismus sagt, dass B wahrscheinlich relevanter ist.

Wenn wir A und B rekursiv in zwei Hälften teilen und so immer mehr Teilreihen erzeugen, bleibt die obige Idee, frühere Informationen allmählich abbauen zu lassen, sowohl gültig als auch wertvoll. Die Ausrichtung des Netzwerks auf die ersten Informationen, die für das Training verwendet werden, entspricht den psychologischen Konzepten der Engstirnigkeit. Lernsysteme, die sich zum Gehirn von Säugetieren entwickelt haben, scheinen das Interesse an früheren Dingen zu vergessen oder zu verlieren, um die Aufgeschlossenheit zu fördern. Dies ist nichts anderes als zuzulassen, dass neues Lernen manchmal das vorherige Lernen verhindert, wenn die neuen Informationen stärkere Lernmuster enthalten.

Es gibt ZWEI Gründe dafür, dass neuere Beispieldaten ältere Beispieldaten nach und nach überwiegen.

  • Die obige Beseitigung der Verzerrung des früheren Lernens, um neuere Ereignisse beim weiteren Lernen angemessen abzuwägen, ist sinnvoll, wenn alle erlebten (trainierten) Ereignisse vernünftige Tatsachen über die Außenwelt darstellen, die das System zu lernen versucht.
  • Die Außenwelt kann sich verändern und das ältere Lernen kann tatsächlich irrelevant oder sogar irreführend werden.

Das Erfordernis, die Bedeutung früherer Informationen mit fortschreitendem Lernen allmählich abbauen zu lassen, ist einer der beiden Hauptaspekte der Verstärkung. Der zweite Aspekt ist eine Reihe von Korrekturkonzepten, die auf der Idee der Rückkopplungssignalisierung aufbauen.

Feedback und Verstärkung

Ein Feedbacksignal beim verstärkten Lernen ist das maschinelle Lernen, das bekannten psychologischen Konzepten wie Schmerz, Vergnügen, Zufriedenheit und Wohlbefinden entspricht. Das Lernsystem erhält Informationen, die das Training über das Ziel der Merkmalsextraktion, der Unabhängigkeit von Gruppierungen oder der Ermittlung einer neuronalen Nettogewichtsmatrix hinaus leiten, die die Beziehung zwischen Eingabeereignismerkmalen und ihren Bezeichnungen approximiert.

Die bereitgestellten Informationen können intern von vorprogrammierter Mustererkennung oder extern von Belohnung und Bestrafung stammen, wie dies bei Säugetieren der Fall ist. Die Techniken und Algorithmen, die beim verstärkten maschinellen Lernen entwickelt werden, verwenden diese zusätzlichen Signale häufig (unter Verwendung von Zeitscheiben in der Verarbeitung) oder kontinuierlich unter Verwendung der Unabhängigkeit von Verarbeitungseinheiten von Parallelverarbeitungsarchitekturen.

Diese Arbeit wurde am MIT von Norbert Wiener ins Leben gerufen und in seinem Buch Kybernetik (MIT Press 1948) beschrieben. Das Wort Kybernetik kommt von einem älteren Wort, das Schiffssteuerung bedeutet . Die automatische Bewegung eines Ruders, um auf Kurs zu bleiben, könnte das erste mechanische Rückkopplungssystem gewesen sein. Ihr Rasenmähermotor hat wahrscheinlich einen.

Adaptive Anwendungen und Lernen

Eine einfache Anpassung in Echtzeit für eine Ruderposition oder eine Rasenmäher-Drosselklappe lernt nicht. Eine solche Anpassung ist normalerweise eine Form der linearen PID-Regelung. Die Technologie des maschinellen Lernens, die heute erweitert wird, umfasst die Bewertung und Steuerung komplexer, nichtlinearer Systeme, die Mathematiker als chaotisch bezeichnen.

Chaotisch bedeutet das nicht, dass die beschriebenen Prozesse in Raserei sind oder durcheinander geraten. Die Chaotiker haben vor Jahrzehnten entdeckt, dass einfache nichtlineare Gleichungen zu hoch organisiertem Verhalten führen können. Was sie bedeuten, ist, dass das Phänomen zu empfindlich für geringfügige Änderungen ist, um einen festen Algorithmus oder eine feste Formel zu finden, um sie vorherzusagen.

Sprache ist so. Dieselbe Aussage, die mit einem Dutzend verschiedener Stimmbeugungen getroffen wurde, kann ein Dutzend verschiedener Dinge bedeuten. Der englische Satz "Really" ist ein Beispiel. Es ist wahrscheinlich, dass Verstärkungstechniken es zukünftigen Maschinen ermöglichen werden, mit hoher Erfolgswahrscheinlichkeit zwischen den verschiedenen Bedeutungen dieser Aussage zu unterscheiden.

Warum zuerst spielen?

Spiele haben eine sehr einfache und leicht zu definierende Reihe möglicher Szenarien. Einer der Hauptverantwortlichen für das Aufkommen des Computers, John von Neumann, argumentierte in Theory of Games and Economic Behavior , einem Buch, das er gemeinsam mit Oskar Morgenstern verfasste, dass alles Planen und Treffen von Entscheidungen tatsächlich das Spielen verschiedener Komplexitäten ist.

Betrachten Sie Spiele als Übungsbeispiel der Sammlung von Gehirnen, die mit der Zeit Systeme schaffen, die die Bedeutung einer Aussage bestimmen können, wie es gebildete Menschen aus drei Quellen von Hinweisen können.

  1. Kontext innerhalb einer Unterhaltung oder eines sozialen Szenarios
  2. Die Stimmbeugungen des Sprechers
  3. Die Mimik und Körpersprache des Sprechers

Jenseits von Schach und Go

Auf dem Weg von Spielen zu Sprachsystemen mit genauem Verständnis und tieferen Hörfähigkeiten gibt es verschiedene Anwendungen des verstärkten Lernens, die für die Erde und die menschliche Erfahrung von größerer Bedeutung sind.

  • Systeme, die lernen, wie man Lichter, Geräte, digitale Systeme, HLK und andere energieverbrauchende Geräte abschaltet oder dämpft.
  • Autonome Fahrzeugentwicklung - Der gefährliche Trend des Betriebs schwerer Geräte wie Flugzeuge, Wohnmobile, LKWs, Busse und Sattelzugmaschinen durch Personen mit unbekannten Einstellungen auf offenen Straßen wird von zukünftigen Personen wahrscheinlich als Wahnsinn betrachtet.
  • Bewertung der Zuverlässigkeit von Informationen - Informationen sind überall und zu über 99% teilweise oder vollständig fehlerhaft. Sehr wenig wird durch echte Forschung bestätigt, entweder durch korrekt entworfene und interpretierte doppelblinde randomisierte Studien oder durch bestätigbare Labortests und -analysen.
  • Anwendungen für das Gesundheitswesen, die eine bessere Diagnose ermöglichen, die Maßnahmen auf den Einzelnen zuschneiden und bei der fortgesetzten Pflege helfen, ein Wiederauftreten zu verhindern.

Diese vier und viele andere sind weitaus wichtiger als die Anhäufung von Vermögen durch automatisiertes Hochgeschwindigkeits-Trading oder das Gewinnen von Spielwettbewerben, zwei selbstbezogene maschinelle Lerninteressen, die sich lediglich auf eine oder zwei Generationen der Familie einer einzelnen Person auswirken.

Reichtum und Ruhm sind das, was in der Spieltheorie als Nullsummenspiel bezeichnet wird . Sie verursachen so viele Verluste wie es Gewinne gibt, wenn Sie die Philosophie der höheren goldenen Regel berücksichtigen, dass andere und ihre Familien für uns von gleicher Bedeutung sind.

Verstärktes Lernen für CAD-Software (Computer Aided Design)

Computer Aided Design ist der natürliche Vorläufer des Computerdesigns (ohne menschliche Hilfe), so wie Antiblockiersysteme auf natürliche Weise zu völlig autonomen Fahrzeugen führen.

Betrachten Sie den Befehl "Erstellen Sie mir eine Seifenschale für meine Dusche, die die Wahrscheinlichkeit maximiert, dass meine Familie beim ersten Versuch nach der Seife greifen kann, ohne die Augen zu öffnen, und die Schwierigkeit minimiert, die Seife und die Duschflächen sauber zu halten meine Familienmitglieder und ein paar Bilder vom Duschraum. " Anschließend wird das Gerät von einem 3D-Drucker zusammen mit den Installationsanweisungen zum Anschließen geöffnet.

Natürlich müsste ein solches CD-System (CAD ohne das A) in Bezug auf die Haushaltsführung, menschliches Verhalten ohne Vision, Möglichkeiten zum Anbringen von Gegenständen an Fliesen, Werkzeuge und Wartungsmöglichkeiten für den Durchschnittsverbraucher sowie die Funktionen des 3D-Druckers geschult werden und einige andere Dinge.

Solche Entwicklungen in der Fertigungsautomatisierung beginnen wahrscheinlich mit dem verstärkten Erlernen einfacherer Befehle wie "Befestigen Sie diese beiden Teile mit in Serie gefertigten Verbindungselementen und bewährten Methoden." Das CAD-Programm wählte dann Hardware aus Schrauben, Nieten, Klebstoffen und anderen Optionen aus und stellte dem Konstrukteur möglicherweise Fragen zu Betriebstemperatur und Vibrationsbereichen. Die Auswahl, Position und der Winkel werden dann zu dem entsprechenden Satz von CAD-Teilen und Baugruppenzeichnungen und Stücklisten hinzugefügt.

Douglas Daseeco
quelle
Ich würde normalerweise keinen kritischen Kommentar zu dieser gut geschriebenen Antwort abgeben, aber da Sie um Kritik gebeten haben: Ich denke, dass die Abschnitte Die Basis für Verstärkung , Rückkopplung und Verstärkung sowie Adaptive Anwendungen und Lernen zwar interessant sind, aber erheblich gekürzt werden könnten, da die Die Frage von OP impliziert bereits einige Kenntnisse von RL, und Sie verbringen viel Zeit damit, diese verwandte Hintergrunddiskussion einzurichten, bevor Sie sich mit der ursprünglichen Frage befassen.
Neil Slater
Dass das OP die Frage gestellt hat, deutet entweder auf den aktuellen Forschungsstand hin, der auf jemanden hindeutet, der neu auf dem Gebiet ist, und benötigt möglicherweise die Grundierung in den früheren Abschnitten. Der letzte Abschnitt beantwortet die Frage direkter.
FauChristian