Avertissement: je suis un biologiste, donc désolé pour (peut-être) une question de base formulée en termes aussi grossiers.
Je ne sais pas si je devrais poser cette question ici ou sur DS / SC, mais CS est le plus grand des trois, alors voilà. (Après avoir posté, il m'est venu à l'esprit que la validation croisée pourrait être le meilleur endroit pour cela, mais hélas).
Imaginez qu'il y ait un agent qui prend des décisions binaires. Et un environnement qui, pour chacune des décisions de l'agent («procès»), récompense l'agent ou non. Les critères de récompense des décisions de l'agent ne sont pas simples. En général, les critères sont aléatoires, mais ils sont limités, par exemple, l'environnement ne récompense jamais plus de 3 fois pour la même décision et n'alterne jamais la décision récompensée plus de 4 fois de suite.
La séquence de critères pourrait alors ressembler à ceci
0 0 0 1 0 1 0 0 1 1 1 0 1 1 0 0 1 0 ...
mais jamais
0 0 0 1 0 1 0 0 1 1 1 1 1 1 0 0 1 0 ...
car le critère de récompense ne peut pas se répéter plus de 3 fois.
Dans ces conditions, il est assez facile de formuler la stratégie que l'observateur idéal devrait entreprendre pour maximiser la récompense. Quelque chose dans le sens de
- décider au hasard
- si vous détectez ce critère répété 3 fois - décidez à l'opposé du dernier critère
- si vous détectez ce critère alterné 4 fois, décidez selon le dernier critère
Maintenant, la partie difficile. Maintenant, le critère de chaque essai dépend non seulement de l'historique des critères précédents, mais aussi de l'historique des décisions de l'agent, par exemple si l'agent alterne sur plus de 8 des 10 derniers essais, récompense la même décision que l'agent prise la dernière fois (comme si pour décourager l'agent d'alterner) et si l'agent a répété la même décision sur plus de 8 des 10 derniers essais, c'est-à-dire qu'il est biaisé, faire un critère opposé au biais. La priorité de l'histoire des critères sur l'histoire des décisions est précisée à l'avance, il n'y a donc jamais d'ambiguïté.
Les séquences des décisions (d) et des critères (c) peuvent maintenant ressembler à ceci
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
Je ne vois pas de moyen simple d'inventer une stratégie de maximisation pour l'agent. Mais je suis sûr qu'il doit y en avoir un, et une sorte d'algorithme d'apprentissage automatique intelligent devrait être capable de l'identifier.
Ma question n'est pas tant de savoir comment résoudre ce problème (même si je serais heureux si vous suggérez une solution), mais plutôt comment ces types de problèmes sont appelés? Où puis-je lire à ce sujet? Existe-t-il une solution abstraite ou seule la simulation peut aider? En général, comment puis-je, en tant que biologiste, aborder ce type de problème?
la source
Réponses:
Vous pouvez aborder ce problème à l'aide de l'apprentissage par renforcement.
Un livre classique pour cela est Sutton et Barto:
Le projet de la deuxième édition est disponible gratuitement: https://webdocs.cs.ualberta.ca/~sutton/book/the-book.html
Afin de rendre votre problème markovien, définissez chaque état comme un vecteur des dix dernières décisions. Vos actions seront 1 ou 0.
la source