MĂ©thode des poids multiplicatifs
La méthode des poids multiplicatifs[1] - [2] ou multiplicative weight update method en anglais, est une méthode algorithmique. C'est un méta-algorithme probabiliste qui apparaßt dans de nombreux domaines sous diverses formes et divers noms, par exemple l'algorithme fictitious play (en) en théorie des jeux et l'algorithme Adaboost en apprentissage automatique. Elle est utilisée dans de nombreux domaines de l'informatique théorique, comme la géométrie algorithmique, les algorithmes en ligne, la dérandomisation et l'optimisation linéaire.
Principe
Comme l'algorithme est gĂ©nĂ©rique, sa description et son contexte d'utilisation sont vagues et doivent ĂȘtre prĂ©cisĂ©s pour chaque application.
Contexte
Le contexte peut ĂȘtre dĂ©crit de la maniĂšre suivante. Il y a une sĂ©rie de choix Ă faire, les uns aprĂšs les autres. AprĂšs chaque dĂ©cision, le coĂ»t de chaque option est donnĂ©, et il est donc possible de savoir Ă quel point le choix fait est bon ou non. Pour prendre ces dĂ©cisions, il y a n experts, donnant un avis pour chaque choix. Le but est d'obtenir Ă terme une stratĂ©gie permettant de faire un bon choix. Cela passe par une Ă©valuation des experts choix aprĂšs choix.
Principe de la méthode
Le principe de la méthode des poids multiplicatifs est le suivant[3] - [4]. à chaque expert on attribue un coefficient appelé le poids de l'expert. Au départ ces coefficient sont égaux à 1. à chaque ronde, on choisit la décision d'un des experts aléatoirement selon une distribution de probabilité qui est proportionnelle aux coefficients des experts. On a ensuite accÚs à tous les coûts et l'on met à jour le coefficient de chaque expert en le multipliant par un nombre qui prend en compte le coût de sa décision. Plus un expert a donné un bon conseil, c'est-à -dire un choix qui s'est révélé avoir un petit coût, plus sont coefficient augmente et inversement, un mauvais conseil pénalise l'expert qui l'a donné.
Description technique
Le processus a lieu en T rondes, avec n experts. Le coût des décisions à la ronde t est décrit par un vecteur m(t) (mi(t) est le coût de la décision de l'expert i). On note le poids de l'expert i à la ronde t. La méthode est la suivante[4].
Initialisation: Choisir un réel . Associer à chaque expert un poids .
Pour t allant de 1 Ă T :
- Choisir une dĂ©cision, selon la distribution de probabilitĂ© oĂč .
- Observer le vecteur de coûts .
- Mettre à jour les poids de la façon suivante: pour tout expert i, .
Propriétés
Pour tout choix d'expert i, le coût total payé par l'algorithme est majoré par une fonction du coût payé si l'on fait le choix de l'expert i dÚs le départ. Cette fonction est affine, avec un facteur multiplicatif inférieur à 2 et un facteur additif de l'ordre du logarithme de n. Plus précisément, avec les notations précédentes, pour tout i, si et pour tout i et t :
Applications et différentes formes
On compte de nombreuses applications, spécialisations et algorithmes proches[4] - [3].
- L'algorithme fictitious play (en) en théorie des jeux. Dans ce cadre, les experts représente des stratégies pour l'adversaire[3].
- En apprentissage, l'algorithme de boosting Adaboost, mais aussi l'algorithme winnow (en).
- La résolution rapide de certains problÚme d'optimisation linéaire, notamment le problÚme de flot multi-commodités.
- Des algorithmes d'approximation de ratio log(n) pour de nombreux problĂšmes algorithmiques NP-difficiles.
- Des algorithmes pour l'optimisation convexe en ligne.
- Une méthode de dérandomisation pour la géométrie algorithmique.
Notes et références
- RĂ©fĂ©rence de la traduction en français : Richard Lassaigne, « La mĂ©thode des poids multiplicatifs : un mĂ©ta-algorithme dâapproximation pour lâapprentissage et lâoptimisation ».
- On trouve aussi « technique des poids multiplicatifs » : Bernard Chazelle, « L'algorithmique et les sciences », sur CollÚge de France.
- Jeremy Kun, « The Reasonable Effectiveness of the Multiplicative Weights Update Algorithm »,
- Sanjeev Arora, Elad Hazan et Satyen Kale, « The Multiplicative Weights Update Method: a Meta-Algorithm and Applications », Theory of Computing, vol. 8, no 1,â , p. 121-164 (lire en ligne).