Bandit manchot (mathématiques)

Un article de Wikipédia, l'encyclopédie libre.
Sauter à la navigation Sauter à la recherche
Page d'aide sur l'homonymie Pour l’article homonyme, voir Bandit manchot.
Une rangée de machines à sous à Las Vegas.

En mathématiques, plus précisément en théorie des probabilités, un problème du bandit manchot[1],[2] (aussi appelé problème du bandit à K bras[3] ou le problème du bandit à N bras[4]) est un problème mathématique qui se formule de manière imagée de la façon suivante : un utilisateur (un agent), face à des machines à sous, doit décider quelles machines jouer. Chaque machine donne une récompense moyenne que l'utilisateur ne connait pas a priori. L'objectif est de maximiser le gain cumulé de l'utilisateur. Typiquement, une politique de l'utilisateur oscille entre exploitation (utiliser celle dont il a appris qu'elle récompense beaucoup) et exploration (tester une autre machine pour espérer gagner plus)[5]. Un problème de bandit manchot peut être vu comme un processus de décision markovien avec un seul état[6].

Formalisation du problème[modifier | modifier le code]

Dans cette section, nous allons formaliser le problème en reprenant quelques notations de l'article d'Auer et al[3].

Entrée du problème[modifier | modifier le code]

Considérons K machines à sous. L'entrée du problème est donnée par des variables aléatoires Xi,n pour tout 1 ≤ i ≤ K, et n ≥ 1, où l'indice i représente une des K machines (ou un « bras » du bandit) et l'indice n représente un tour de jeu. On suppose toutes ces variables aléatoires indépendantes et que les variables d'une même machine i, c'est-à-dire les variables Xi,1, Xi,2, etc., suivent la même distribution de probabilité inconnue de l'agent, d'espérance μi.

Au tour numéro n, l'utilisateur va recevoir une récompense qui dépend de la machine choisie. Un exemple classique de bandit manchot est le cas où la machine i apporte une récompense de 1 avec une probabilité pi et 0 avec la probabilité 1-pi.

Sortie du problème : calcul d'une politique[modifier | modifier le code]

L'utilisateur essaye de trouver la machine à sous qui apporte la plus grande récompense moyenne. Une politique ou stratégie pour le problème du manchot est un algorithme qui choisit la machine suivante à jouer, en se basant sur les choix précédents et sur les récompenses obtenues. L'objectif est de fournir des politiques qui minimisent le regret, c'est-à-dire la quantité qui exprime ce que la politique a fait perdre par rapport au choix de la meilleure machine.

Regret[modifier | modifier le code]

Dans un problème de bandit manchot, le regret après n essais est défini comme la différence entre la récompense que l'on obtiendrait en utilisant n fois la meilleure machine et l'espérance de la récompense après n essais effectués conformément à la politique[3][7]. Formellement, ce regret vaut :

est la récompense moyenne de la meilleure machine et désigne la récompense que l'on obtient avec la stratégie proposée à l'instant .

Différents algorithmes[modifier | modifier le code]

Des algorithmes d'apprentissage par renforcement ont donc été proposés pour résoudre le problème du bandit manchot.

Algorithmes de Lai et Robbins[modifier | modifier le code]

Tze Leung Lai et Herbert Robbins (en)[8] ont donné des algorithmes d'apprentissage par renforcement permettent d'obtenir un regret borné par une fonction logarithme, pour des familles spécifiques de distribution de probabilités pour les récompenses : . En autres termes, cela signifie que la machine optimale est joué exponentiellement plus souvent que les autres machines[9].

Échantillonnage de Thompson[modifier | modifier le code]

L'algorithme d'échantillonnage de Thompson (en) est le premier à avoir été proposé pour résoudre ce problème [10].

À chaque fois, l'utilisateur choisit la machine qui a l'index le plus élevé. Cet index étant une variable aléatoire suivant une loi bêta. Pour chaque machine, l'utilisateur tire un index suivant une loi bêta dont les paramètres et sont initialisés à 1. À chaque fois que l'utilisateur utilise une des machines, s'il obtient la récompense et sinon.

UCB[modifier | modifier le code]

L'algorithme UCB (pour Upper Confidence Bounds) a été proposé par P. Auer en 2002 [11]. Avec cet algorithme, l'utilisateur calcule la moyenne empirique de la récompense pour chacune des machines.

Dans cette équation, désigne le nombre d'essais réalisés par l'utilisateur, le nombre d'essais fait par l'utilisateur sur la machine , désigne la récompense obtenue lors de l'essai . désigne la fonction indicatrice qui indique que la machine a été choisie pour l'essai .

Pour calculer l'index dans chaque canal, on ajoute un biais qui permet à l'algorithme d'explorer les différentes machines.

Le biais doit être choisi pour avoir une décroissance logarithmique du regret. Le biais :

permet de borner le regret de manière logarithmique.

De nombreuses améliorations de cet algorithme existent[12].

Application pratique[modifier | modifier le code]

L'application la plus typique du problème du bandit manchot est celui du choix entre une ancienne et une nouvelle posologie d'un vaccin ou médicament (ou entre deux différents) : il faut déterminer le plus vite possible si le nouveau produit doit être adopté ou l'ancien maintenu. Toute erreur se traduirait en vies humaines perdues (ou, au minimum, en personnes souffrant de troubles consécutifs soit à un traitement incomplet, soit à des effets secondaires excessifs).

Ce modèle est parfois utilisé en apprentissage automatique, par exemple pour effectuer des choix de publicité à présenter en fonction de ce qui est déjà connu[13], à ceci près que le refus de cliquer sur lien publicitaire apporte lui-même à son tour une information exploitable.

En radio intelligente, ce modèle est souvent utilisé pour la prise de décision pour l'accès opportuniste au spectre [14].

Notes et références[modifier | modifier le code]

  1. « Statistiquement vôtre - Choix aléatoire de sujets autour de la statistique », sur Statistiquement vôtre (consulté le 21 septembre 2018)
  2. « Cours à l'université de Lille "Introduction aux algorithmes de bandit" »
  3. a b et c P. Auer, N. Cesa-Bianchi et P. Fischer, « Finite-time Analysis of the Multiarmed Bandit Problem », Machine Learning, vol. 47, nos 2/3,‎ , p. 235–256 (DOI 10.1023/A:1013689704352)
  4. M. N. Katehakis et A. F. Veinott, « The Multi-Armed Bandit Problem: Decomposition and Computation », Mathematics of Operations Research, vol. 12, no 2,‎ , p. 262–268 (DOI 10.1287/moor.12.2.262)
  5. (en) « Exploration–exploitation tradeoff using variance estimates in multi-armed bandits », Theoretical Computer Science, vol. 410, no 19,‎ , p. 1876–1902 (ISSN 0304-3975, DOI 10.1016/j.tcs.2009.01.016, lire en ligne)
  6. « Cours à l'université de Washington (cf. premier paragraphe) »
  7. Agrawal, R. (1995). Sample mean based index policies by O(log n) regret for the multi-armed bandit problem. Advances in Applied Probability, 27(4), 1054-1078.
  8. (en) « Asymptotically efficient adaptive allocation rules », Advances in Applied Mathematics, vol. 6, no 1,‎ , p. 4–22 (ISSN 0196-8858, DOI 10.1016/0196-8858(85)90002-8, lire en ligne)
  9. « Cours sur les bandits (voir transparent 12) »
  10. W. R. Thompson, "On the likelihood that one unknown probability exceeds another in view of the evidence of two samples", Biometrika, 25:285–294, 1933.
  11. Auer, P., Cesa-Bianchi, N. & Fischer, P. Machine Learning (2002) 47: 235.
  12. On Bayesian Upper Confidence Bounds for Bandit Problems, Emilie Kaufmann, Olivier Cappe, Aurelien Garivier ; JMLR W&CP 22: 592-600, 2012.
  13. http://blog.octo.com/online-machine-learning-application-a-la-publicite-sur-le-web/
  14. L. Lai, H. Jiang and H. V. Poor, "Medium access in cognitive radio networks: A competitive multi-armed bandit framework," 2008 42nd Asilomar Conference on Signals, Systems and Computers, Pacific Grove, CA, 2008, p. 98-102.

Voir aussi[modifier | modifier le code]