Haftungsausschluss: Ich bin Biologe und entschuldige mich für (vielleicht) grundlegende Fragen, die so grob formuliert sind.
Ich bin mir nicht sicher, ob ich diese Frage hier oder auf DS / SC stellen soll, aber CS ist die größte von drei. (Nachdem ich gepostet hatte, kam mir der Gedanke, dass Cross-Validated der bessere Ort dafür sein könnte, aber leider).
Stellen Sie sich vor, es gibt einen Agenten, der binäre Entscheidungen trifft. Und eine Umgebung, die für jede Entscheidung des Agenten ("Versuche") den Agenten entweder belohnt oder nicht. Die Kriterien für die Belohnung der Entscheidungen des Agenten sind nicht einfach. Im Allgemeinen sind die Kriterien zufällig, sie haben jedoch Einschränkungen. Beispielsweise belohnt die Umgebung niemals mehr als dreimal für dieselbe Entscheidung und wechselt die belohnte Entscheidung niemals mehr als viermal hintereinander.
Die Reihenfolge der Kriterien könnte dann ungefähr so aussehen
0 0 0 1 0 1 0 0 1 1 1 0 1 1 0 0 1 0 ...
aber nie
0 0 0 1 0 1 0 0 1 1 1 1 1 1 0 0 1 0 ...
weil das Belohnungskriterium nicht mehr als dreimal wiederholt werden kann.
Unter diesen Bedingungen ist es recht einfach, die Strategie zu formulieren, die der ideale Beobachter verfolgen sollte, um die Belohnung zu maximieren. Etwas in der Art von
- zufällig entscheiden
- Wenn Sie feststellen, dass diese Kriterien dreimal wiederholt wurden, entscheiden Sie sich gegen das letzte Kriterium
- Wenn Sie feststellen, dass sich die Kriterien viermal abwechseln, entscheiden Sie sich nach dem letzten Kriterium
Nun der schwierige Teil. Jetzt hängt das Kriterium für jeden Versuch nicht nur von der Historie der vorherigen Kriterien ab, sondern auch von der Historie der Entscheidungen des Agenten. Wenn sich der Agent bei mehr als 8 der letzten 10 Versuche abwechselt, belohnen Sie dieselbe Entscheidung wie beim letzten Mal (als Wenn der Agent vom Wechsel abgehalten werden soll) und wenn der Agent dieselbe Entscheidung in mehr als 8 der letzten 10 Versuche wiederholt hat, dh er voreingenommen ist, machen Sie das Kriterium entgegengesetzt zum Bias. Die Priorität der Kriterienhistorie gegenüber der Entscheidungshistorie wird im Voraus festgelegt, sodass niemals Unklarheiten bestehen.
Die Folgen von Entscheidungen (d) und Kriterien (c) könnten nun so aussehen
d: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1 0 1 0 1 0 ...
c: 1 0 1 0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 0 1 0 0 1 1 0 0 0 1 0 ...
↑ here criteria counteract bias in decisions
Ich sehe keinen einfachen Weg, um die Maximierungsstrategie für den Agenten zu erfinden. Aber ich bin mir sicher, dass es einen geben muss, und eine Art cleverer Algorithmus für maschinelles Lernen sollte ihn identifizieren können.
Meine Frage ist nicht so sehr, wie man dieses Problem löst (obwohl ich mich freuen würde, wenn Sie eine Lösung vorschlagen), sondern vielmehr, wie diese Arten von Problemen genannt werden. Wo kann ich darüber lesen? Gibt es eine abstrakte Lösung oder kann nur eine Simulation helfen? Wie kann ich als Biologe im Allgemeinen mit dieser Art von Problem umgehen?
quelle
Antworten:
Sie können dieses Problem mit Reinforcement Learning angehen.
Ein klassisches Buch dafür ist Sutton und Barto:
Der Entwurf der zweiten Ausgabe ist kostenlos erhältlich: https://webdocs.cs.ualberta.ca/~sutton/book/the-book.html
Um Ihr Problem markovisch zu machen, definieren Sie jeden Zustand als einen Vektor der letzten zehn Entscheidungen. Ihre Aktionen werden 1 oder 0 sein.
quelle