• 12 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 20/01/2020

Approchez linéairement une fonction

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Nous avions terminé la partie précédente avec l'observation que l’approximation de fonctions de valeur et de politiques était nécessaire pour faire face au fléau de la dimension. Dans ce chapitre, nous allons étudier l’approximation linéaire des fonctions de valeur.

Décrivez un vecteur caractéristique

Avant d’entrer dans le détail, nous allons définir et illustrer le concept de vecteur caractéristique de l’état du système, cher aux approximations linéaires.

Idéalement, le vecteur caractéristique capte l’essentiel de l’information sur l’état courant du système à contrôler. Il peut s’agir de :

  • la position d’un drone relative à différents amers pour la navigation ;

  • la position des pièces dans un jeu de plateau ;

  • etc.

Par la suite, nous considérons que nous avons à disposition un ensemble de caractéristiques pour décrire l’état du système. Pour les méthodes d’extraction automatique de caractéristiques, il faudra faire appel à des architectures non-linéaires comme celles des réseaux de neurones, architectures que nous aborderons plus tard.

Fonction de valeur linéaire

Comment utiliser le vecteur caractéristique dans la fonction de valeur ?

L’idée est d’approcher une fonction de valeur par le produit scalaire entre le vecteur caractéristique et le vecteur de paramètres (tous deux de même dimension) :

ˆV(S;ww)=ϕϕ(S)ww =Kk=1ϕk(S)wk.

Pour l’estimation de la fonction de valeur en tout état S , nous allons combiner linéairement le vecteur caractéristique ϕϕ(S) en l’état S avec le vecteur de paramètres ww. De sorte que la fonction de valeur en tout état soit la combinaison linéaire entre le vecteur caractéristique sur l’état et le vecteur de paramètres de la fonction de valeur. Par exemple, si l’on souhaite savoir quelle est la valeur associée à la position S d’un drone, il suffit de combiner linéairement les valeurs obtenues à partir de ces caractéristiques. 

Critère objectif

Ce qui est intéressant avec les architectures d’approximation est qu’en connaissance du vecteur caractéristique de l’état, l’objectif revient simplement à déterminer le vecteur de paramètres ww de la fonction de valeur.

Pour ce faire, nous devons calculer le vecteur de paramètres  ww capable d’approcher le mieux la fonction de valeur lorsque l'agent suit une politique π . En d’autres termes, nous cherchons le vecteur de paramètres ww , dont l’erreur quadratique moyenne par rapport à la fonction de valeur Vπ , soit la plus petite :

J(ww)=Eπ[(Vπ(S)ϕϕ(S)ww)2].

L’intérêt des architectures d’approximation linéaires réside justement dans le fait que la recherche du vecteur de paramètres est garantie de converger sur l’optimum global. En d’autres termes, il n’est pas possible d’être bloqué dans un optimum local.

Descente de gradient (stochastique)

L’algorithme de descente de gradient permettant de déterminer ww est particulièrement simple. Il requiert l’application itérative de la règle d'actualisation suivante :

Δww=12αwwJ(ww) =α(Vπ(S)ˆV(S;ww))ϕϕ(S),

α représente le taux d'apprentissage et wwJ(ww) est le gradient de J(ww).

La raison de la simplicité de cette règle d'actualisation réside dans le fait que le gradient de la fonction de valeur approchée ˆV(S;ww) est simplement le vecteur caractéristique ϕϕ(S) , car l’architecture d’approximation utilisée est linéaire. 

L’approximation linéaire de fonction de valeur repose sur la description de la fonction de valeur, comme le produit scalaire entre le vecteur caractéristique de l’état et le vecteur de paramètres de la fonction approchée. Elle résulte en une règle d'actualisation du vecteur de paramètres de la fonction approchée dans la direction de gradient, c’est-à-dire du vecteur caractéristique courant, et proportionnellement à l’erreur courante.

Dans le chapitre suivant, nous allons approcher la fonction de valeur à l’aide d’une architecture à base de réseaux de neurones.

Exemple de certificat de réussite
Exemple de certificat de réussite