La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

IFT 608 / IFT 702 – Planification en intelligence artificielle Apprentissage par renforcement profond (Deep Reinforcement Learning) Mariane Maynard.

Présentations similaires


Présentation au sujet: "IFT 608 / IFT 702 – Planification en intelligence artificielle Apprentissage par renforcement profond (Deep Reinforcement Learning) Mariane Maynard."— Transcription de la présentation:

1 IFT 608 / IFT 702 – Planification en intelligence artificielle Apprentissage par renforcement profond (Deep Reinforcement Learning) Mariane Maynard Département d’informatique Université de Sherbrooke planiart.usherbrooke.ca/cours/ift608 Projet StarCraft Reconnaissance de plan peut améliorer stratégie d’un Game AI Intéresse à l’apprentissage dans les jeux (deep learning) Revue de littérature m’a amené à m’intéresser à l’apprentissage par renforcement profond

2 Conférence sur l’éthique en IA ce midi
CONFÉRENCIER : Martin Gibert est chercheur en éthique de l'IA à l'Université de Montréal (affilié à l'IVADO et au CRÉ) et coordonnateur de la Déclaration de Montréal TITRE : Déclaration de Montréal pour un développement responsable de l’intelligence artificielle RÉSUMÉ : En novembre dernier, lors d'un forum au Palais des congrès de Montréal, un comité multidisciplinaire de chercheurs a proposé sept principes pour encadrer un développement responsable de l'Intelligence artificielle. Cette déclaration de Montréal demeure cependant ouverte et révisable. Que dit exactement la déclaration? Autour de quelles valeurs s'articule-t-elle? Comment participer à sa co-construction? Martin Gibert présentera la déclaration tout en faisant un rapide panorama des principaux enjeux éthiques soulevés par l'IA. DATE :          Jeudi 22 février 2018 HEURE :       12 h 30 à 13 h 30 LOCAL :        D2-1060 IFT702 Mariane Maynard

3 Sujets couverts Processus de décision de Markov (MDP) – Rappel IFT615
Apprentissage automatique/supervisé/profond – Rappel IFT615 Algorithmes d’apprentissage par renforcement (profond) Apprentissage par imitation (Imitation Learning) Méthodes basées sur les politiques (policy gradients/based methods) Méthodes basées sur valeurs (value-based methods) Méthodes basées sur les modèles (model-based methods) Étude de cas – AlphaGo Zero IFT702 Mariane Maynard

4 Processus de décision Markovien
Rappel IFT615 Processus de décision Markovien IFT702 Froduald Kabanza

5 Problèmes de planification
Statique vs. Dynamique Prévisible vs. Imprévisible Environment Actions Observabilité Complète vs. Partielle Vs. Aucune Prochaine action? Discrètes vs. Continues Déterministes vs. Stochastiques Ce que je vous avez vu jusqu’à maintenant c’est… Capteurs Parfaits vs. Bruités Actions Percepts IFT702 Froduald Kabanza 5

6 Planification classique
Statique Prévisible Environment Actions Observabilité Complète Prochaine action? Discrètes Déterministes Capteurs Parfaits Des algorithmes de planification dans un monde idéal Actions Percepts IFT702 Froduald Kabanza 6

7 Type d’environnement (MDP)
Statique vs. Dynamique Prévisible vs. Imprévisible Environment Actions Observabilité Complète vs. Partielle Vs. Aucune Prochaine action? Discrètes vs. Continues Déterministes vs. Stochastiques Un rappel … Dans la vraie vie, on peut difficilement supposer que les actions sont déterministes, à moins d’être en mesure de prendre en compte les multiples facteurs externes et leur influence sur le monde environnant Capteurs Parfaits vs. Bruités Actions Percepts IFT615 Froduald Kabanza 7

8 Motivation – Planification avec des actions ayant des effets incertains
Prochaine action? Room 1 Room 4 Room 2 Actions: E: Go east W: Go west S: Go south N: Go north Supposons le problème de calculer une trajectoire pour un robot … …. Room 3 But …. IFT 615 Froduald Kabanza

9 Motivation – Planification avec des actions ayant des effets incertains
Prochaine action? Room 1 Room 4 Room 2 Actions: E: Go east W: Go west S: Go south N: Go north Si l’environnement est déterministe, A* peut trouver une solution …. Room 3 But …. IFT 615 Froduald Kabanza

10 Motivation – Planification avec des actions ayant des effets incertains
Prochaine action? Room 1 Room 4 Room 2 Actions: E: Go east W: Go west S: Go south N: Go north Supposons maintenant qu’il y a des escaliers et que le robot a une certaine probabilité de tomber … On pourrait toujours essayer A* en donnant une fonction de coût des transitions tenant compte de la difficulté posée par les escaliers… …. Room 3 But …. Escalier IFT 615 Froduald Kabanza

11 Motivation – Planification avec des actions ayant des effets incertains
Prochaine action? Room 1 Room 4 Room 2 Actions: E: Go east W: Go west S: Go south N: Go north …. Room 3 But …. Escalier IFT 615 Froduald Kabanza

12 Motivation – Planification avec des actions ayant des effets incertains
Prochaine action? Room 1 Room 4 Room 2 Actions: E: Go east W: Go west S: Go south N: Go north Supposons maintenant que le robot peut glisser. S’il décide de faire un pas dans une certaine direction, il a par exemple une probabilité de réussir et une probabilité d’aller dans l’une ou l’autre des cases avoisinantes. A* ne suffit plus! Il donne une séquence d’actions. Un plan déterministe. Nous avons besoin d’un algorithme qui donne un plan de contigence, prévoyant le cas où le robot glisse dans une case avoisinante. Nous avons besoin de modéliser l’environnement en tenant compte de son caractère stochastique et de developer des algorithmes qui peuvent planifier dans cette environnement …. Room 3 But …. Glissant Escalier IFT 615 Froduald Kabanza

13 Processus de décision markovien
Un processus de décision markovien (Markov decision process, ou MDP) est défini par: un ensemble d’états S (incluant un étant initial s0) un ensemble d’actions possibles Actions(s) lorsque je me trouve à l’état s un modèle de transition P(s’|s, a), où a  A(s) une fonction de récompense R(s) (utilité d’être dans l’état s) Un MDP est donc un modèle général pour un environnement stochastique dans lequel un agent peut prendre des décisions et reçoit des récompenses On y fait une supposition markovienne (de premier ordre) sur la distribution des états visités Requière qu’on décrive un objectif à atteindre à partir d’une fonction de récompense basée seulement sur l’état courant (et, parfois, l’actions choisie dans cet état) Difficulté: trouver une fonction de récompense qui nous permettra d’atteindre facilement cet objectif Est-ce que qqn se rappelle ce que veut dire la supposition markovienne (de premier ordre)? IFT 615 Froduald Kabanza

14 S = { positions sur la grille }
Modèle d’actions Room 1 Room 4 Actions: E: Go east W: Go west S: Go south N: Go north S = { positions sur la grille } Degré de désirabilité -0.4 : +1 But Room 2 -0.8 R(s) (fonction de récompense) …. Actions(s) Room 3 But …. IFT 615 Froduald Kabanza

15 Actions aux effets incertains
Go South (S) État courant Action P(s’|s,a) (modèle de transition) Le modèle de transition sert de fonction successeur États successeurs possibles 25 % 50 % 25 % IFT 615 Froduald Kabanza

16 IFT702 Mariane Maynard

17 IFT702 Froduald Kabanza

18 IFT702 Froduald Kabanza

19 IFT702 Froduald Kabanza

20 Plan (politique) Exemples:
Un plan est une stratégie: choix d’une action (décision) pour chaque état un plan est également appelé une politique (policy) c’est un ensemble de règles if state then action Exemples: Plan π1 { (21,12) → W, (20,13) → S, (21,13) → S, (20,11) → N, } (21,13) (20,13) (20,12) W 0.2 0.3 W W 0.5 (20,11) N (21,12) S 0.9 S Plan π2 { (21,12) → S, (20,11) → S, (21,10) → E, ….} S S 0.2 0.1 0.8 (20,10) (1,1) IFT 615 Froduald Kabanza

21 Fonction de récompense/utilité et qualité des plans
Une fonction de récompense/utilité, R(s), assigne un nombre réel à chaque état s. R(s) désigne le degré de désirabilité de l’état s. Le but et le coût des actions sont indirectement modélisés par la fonction de récompense/utilité. Ainsi, la qualité d’un plan est déterminée par l’espérance des récompenses qu’on peut potentiellement obtenir en suivant/exécutant le plan Un plan optimal est celui qui maximise les récompenses. Plus un plan est proche de l’optimal, plus il est de qualité. Ainsi un plan fait un compromis entre: La maximisation de la probabilité d’atteindre le but (réduction de la probabilité d’échec). La maximisation des récompenses (optimisation du coût des actions). IFT 615 Froduald Kabanza

22 IFT702 Froduald Kabanza

23 somme des récompenses futures espérée
Utilité d’un plan R(s): récompense pour l’état s V(π,s): valeur (utilité) du plan π à l’état s V(π,s) = R(s) + γ Σ s’  S P(s’|s, π(s)) V(π, s’) γ: facteur d’escompte (0 < γ <= 1), indique l’importance relative des récompenses futures par rapport à la récompense actuelle S: espace d’états π(s): action du plan à l’état s P(s’|s, π(s)): probabilité de la transition du MDP récompense actuelle somme des récompenses futures espérée Utilité d’un plan = valeur d’un plan faire remarquer que V(pi,s) est un tableau, pas un seul nombre réel! faire remarquer que c’est un système d’équations à |S| inconnues et |S| variables IFT 615 Froduald Kabanza

24 Plan optimal Un plan π domine un plan π’ si les deux conditions suivantes sont réunies: V(π,s) ≥ V(π’,s) pour tout état s V(π,s) > V(π’,s) pour au moins un s Un plan est optimal s’il n’est pas dominé par un autre il peut y avoir plusieurs plans optimaux, mais ils ont tous la même valeur on peut avoir deux plans incomparables (aucun ne domine l’autre) la dominance induit une fonction d’ordre partiel sur les plans Deux algorithmes différents pour le calcul du plan optimal: itération par valeurs (value iteration) itération par politiques (policy iteration) IFT 615 Froduald Kabanza

25 Équations de Bellman pour la valeur optimale
Les équations de Bellman nous donnent l’utilité d’un état (c.à-d., l’utilité des plans optimaux dans un état) V*(s) = R(s) + max γ Σ s’  S P(s’|s,a) V*(s’)  s  S Si nous pouvons calculer V*, nous pourrons calculer un plan optimal aisément: il suffit de choisir dans chaque état s l’action qui maximise V*(s) (c.-à-d. le argmax) En calculant V* avec value iteration ou la politique optimale avec policy iteration, on obtient un agent optimal pour notre MDP a U(s) = Valeur optimale de s. J’aurais pu noter U*(s) pour bien renforcer cette idée que c’est vraiment l’utilité du plan optimal. On pourrait être tenter de résoudre le système d’équations pour trouver U(s). Cependant, à cause du max ce ne sont pas des équations linéaires. On ne peut donc pas les résoudre en utilisant des méthodes de résolution d’équations linéaires (élimination de Gauss, décomposition LU, etc.). Nous allons plutôt recourrir à la programmation dynamique: itération par valeur ou itération par politique. IFT 615 Froduald Kabanza

26 Agents qui apprennent dans un MDP
À quoi sert l’apprentissage si on a des capteurs parfaits et qu’on connaît le modèle de transitions et les récompenses à chaque état? Rien. En réalité, le modèle de transitions n’est souvent pas défini d’avance pour de multiples raisons: Espace d’états et/ou d’actions trop gros, complexe et/ou continu pour une définition succincte des transitions De plus, les capteurs retournent souvent une observation de l’état plutôt que l’état lui-même L’observation est complète, mais l’agent doit apprendre à extraire l’information pertinente de l’observation Solution? Apprentissage automatique IFT702 Mariane Maynard

27 Apprentissage automatique
Rappel IFT615 Apprentissage automatique Section 8.1 du livre IFT615 Hugo Larochelle et Froduald Kabanza

28 Apprentissage dans un agent
Un agent apprend s’il améliore sa performance sur des tâches futures avec l’expérience Pourquoi programmer des programmes qui apprennent: Un agent peut être dans un environnement inconnu ou difficile à modéliser (il faut qu’il le découvre) Même quand l’environnement est connu au départ, il peut évoluer dans le temps de façon imprévisible Parfois, on a aucune idée comment programmer la fonction de performance de l’agent Un agent peut être dans un environnement inconnu (il faut qu’il le découvre). Même quand l’environnement est connu au départ, il peut évoluer dans le temps de façon imprévisible (par exemple, dans la classification de pourriels , la compréhension/définition de ce qu’un pourriel évolue dans le temps) Parfois, on a aucune idée de comment programmer la fonction de performance de l’agent (il faut qu’elle soit apprise; par exemple: reconnaissance de visage) IFT 615 Froduald Kabanza

29 Apprentissage automatique
Un agent apprend s’il améliore sa performance sur des tâches futures avec l’expérience On va se concentrer sur un problème d’apprentissage simple mais ayant beaucoup d’applications: « Étant donnée une collection de paires (entrées, sorties) appelées exemples d’apprentissage, comment apprendre une fonction qui peut prédire correctement une sortie étant donnée une nouvelle entrée. » IFT702 Hugo Larochelle et Froduald Kabanza

30 Types de problèmes d’apprentissage
Il existe plusieurs sortes de problèmes d’apprentissage, qui se distinguent par la nature de la supervision offerte par nos données Apprentissage supervisé : sortie désirée (cible ou « target ») est fournie explicitement par les données Ex.: reconnaissance de caractères, à l’aide d’un ensemble de paires (images, identité du caractère) Apprentissage par renforcement : le signal d’apprentissage correspond seulement à des récompenses et punitions Ex.: est-ce que le modèle a gagné sa partie d’échec (1) ou pas (-1) Apprentissage non-supervisé : les données ne fournissent pas de signal explicite et le modèle doit extraire de l’information uniquement à partir de la structure des entrées Ex.: identifier différents thèmes d’articles de journaux en regroupant les articles similaires (« clustering ») Et plusieurs autres! IFT702 Hugo Larochelle et Froduald Kabanza

31 Apprentissage supervisÉ : Concepts généraux
Rappel IFT615 Apprentissage supervisÉ : Concepts généraux Section 8.1 du livre IFT615 Hugo Larochelle et Froduald Kabanza

32 Apprentissage supervisé
Un problème d’apprentissage supervisé est formulé comme suit: « Étant donné un ensemble d’entraînement de N exemples: où chaque a été généré par une fonction inconnue , découvrir une nouvelle fonction (modèle ou hypothèse) qui sera une bonne approximation de (c’est à dire ) » Espace d’hypothèses H f(x) hopt(x)  H Error Note : chacun des x_i, y_i peut être un vecteur. Dans ce cas, on notera x_i,j le j eme élément du vecteur. Idem pour y_i,j. f n’est pas généralement connu. On en connait une partie permettant de produire les exemples d’apprentissage et les exemples de test. Lorsque l’ensemble des valeurs des sorties est un ensemble fini, on parle de problème de classification. Par exemple, les différentes classes pour une image: chat, chien, personne. Lorsque y est un nombre réel (l’ensemble des valeurs de sortie est infini, par exemple: température), on parle de régression. On dit qu’une hypothèse généralise bien si elle prédit correctement la valeur de y pour des exemples inédits. On dit qu’une hypothèse est cohérente si elle prédit correctement la valeur de y pour les exemples d’entraînement. Le problème d’apprentissage est réalisable si f(x) ϵ H IFT615 Hugo Larochelle et Froduald Kabanza

33 Apprentissage supervisé
Étant donné un ensemble de données d’entrainement, l’apprentissage est un problème de recherche de l’hypothèse h dans un espace d’hypothèses H, tel que h minimise la distance à f(x) Les données sont souvent bruités et disponibles en quantité limitée. Il y a donc une variation dans les données et dans les modèles (représentations). L’erreur dépend de la qualité (et quantité) des données d’entrainements et de la méthode utilisée pour sélectionner/chercher la bonne hypothèse Espace d’hypothèse f(x) hopt(x)  H Error H L’apprentissage est une recherche dans un espace d’hypothèses possibles pour trouver l’hypothèse qui se comporte bien même sur des exemples n’appartenant pas à l’ensemble d’entraînement. Ici, on cherche à minimiser l’erreur généralisée (c.à-d., incluant les données à venir, pas juste les données d’entrainement). IFT615 Hugo Larochelle et Froduald Kabanza

34 Représentation des données
L’entrée X est représentée par un vecteur de valeurs d’attributs réels (représentation factorisée) Ex.: une image est représentée par un vecteur contenant la valeur de chacun des pixels La sortie désirée ou cible y aura une représentation différente selon le problème à résoudre: Problème de classification en C classes: valeur discrète (index de 0 à C-1) Problème de régression: valeur réelle ou continue IFT702 Froduald Kabanza

35 Modèles et approche pour chercher la fonction h
Dépendamment des approches d’apprentissage, la fonction h peut être représentée de différente manière: Fonction linéaires , polynomiales Réseau de neurones artificiel Règle de production (if-then) avec la logique du premier ordre Arbre de décision Classificateur k-plus-proches-voisins Etc. Dans cette leçon, nous (re)voyons le réseau de neurones artificiel Le livre couvre différentes autres approches IFT615 Hugo Larochelle et Froduald Kabanza

36 Réseau de neurones – Motivation
Rappel IFT615 Réseau de neurones – Motivation IFT615 Hugo Larochelle et Froduald Kabanza

37 Limitation des classificateurs linéaires
Le problème, c’est que la majorité des problèmes de classification ne sont pas linéaires En fait, un classificateur linéaire ne peut même pas apprendre XOR! AND OR XOR 1 1 1 ? Une autre façon de voir que le perceptron ne peut pas apprendre le OU-Exclusif est d’observer ceci. Considérons un perceptron avec deux entrées x1, x2 et deux poids correspondants, w1 et w2, et le seuil t. Pour apprendre la fonction Ou-Exclusif, l’apprentissage du réseau de neurones doit trouver/aboutir/converger vers des poids satisfaisant les équations suivantes: 0 + 0 < t (c.à-d., t doit être positif) W1* >= t 0 + w2*1 >= t w1*1 + w2*1 <=t Ce système d’équations n’a pas de solution. Le perceptron ne peut donc pas apprendre le Xor. On verra qu’un réseau multi-couches lui peut faire l’apprentissage. Ce qui rend le XOR impossible à apprendre avec le perceptron est le fait que les deux classes à distinguer (données en noir et données en vert) sont linéairement non séparables. Le problème d’apprendre une classification binaire d’un ensemble de données revient à les séparer en deux groupes. Dans l’espace à deux dimensions, chaque donné correspond à un point dans l’espace 2D et il s’agit de trouver une ligne droite les séparant. Dans l’espace à 3 dimensions, il s’agit de trouver un plan. Ainsi de suite, dans l’espace à n dimensions, un ensemble de données est linéairement séparable s’ils peuvent être séparés par un hyperplan de dimension n-1. IFT615 Hugo Larochelle et Froduald Kabanza

38 Limitation des classificateurs linéaires
Par contre, on pourrait transformer l’entrée de façon à rendre le problème linéairement séparable sous cette nouvelle représentation Dans le cas de XOR, on pourrait remplacer par AND( , ) et par OR( , ) OR( , ) XOR XOR 1 1 ? On transpose l’entrée dans le nouvel espace de dimensions En fait cette transposition peut être apprise AND( , ) IFT615 Hugo Larochelle et Froduald Kabanza

39 Réseau de neurones artificiel
Rappel IFT615 Réseau de neurones artificiel IFT615 Hugo Larochelle et Froduald Kabanza

40 Réseau de neurones artificiel
Idée: apprendre les poids du classificateur linéaire et une transformation qui va rendre le problème linéairement séparable . . . Logistic . . . Logistic - Notation du livre n’est pas géniale... y a pas de lettre pour le nombre de neurones cachés - Il y a aussi des biais normalement Réseau de neurones à une seule couche cachée IFT615 Hugo Larochelle et Froduald Kabanza

41 IFT608/IFT702 © Froduald Kabanza
CAS GÉNÉRAL: ON PEUT UTILISER UNE AUTRE FONCTION NON-LINÉAIRE (ICI g, appelée fonction d’activation) PLUTÔT QUE SIMGOIDE Crédit: Hugo Larochelle pour le cours IFT725: Fully connected Une autre façon est d’utiliser un réseau de neurones pour le faire. On rajoute une couche cachée entre l’entrée et le neurone de sortie. La couche apprend alors une représentation de l’espace d’entrée qui nous permettra de faire régression logistique. IFT608/IFT702 © Froduald Kabanza

42 IFT608/IFT702 © Froduald Kabanza
APPRENTISSAGE DE SURFACES ARBITRAIRES GRÂCE À LA COUCHE CACHÉE Crédit: Hugo Larochelle pour le cours IFT725: Avec une couche on peut apprendre des frontières arbitraires IFT608/IFT702 © Froduald Kabanza

43 IFT608/IFT702 © Froduald Kabanza
Crédit: Hugo Larochelle pour le cours IFT725: Théorème de l’approximation universelle: avec une seule couche cachée un réseau de neurones avec une sortie linéaire peut approximer n’importe quelle fonction continue si on lui donne assez d’unités. Le résultat s’applique aux sigmoïdes, tangentes hyperboliques etc. Ça nous dit pas combien de paramètres sont nécessaires… IFT608/IFT702 © Froduald Kabanza

44 Hugo Larochelle et Froduald Kabanza
Cas général à L couches Rien n’empêche d’avoir plus d’une couche cachée On note l’activité du je « neurone », incluant les neurones d’entrée et de sortie. Donc on aura On note l’activité du je neurone avant la non-linéarité logistique, c’est à dire Il y a L = 4 couches dont 2 couches cachées 7 w5,7 w6,7 5 6 3 4 1 2 w3,5 w3,6 w4,5 w4,6 w1,3 w1,4 w2,3 w2,4 - Notation du livre n’est pas génial... y a pas de lettre pour le nombre de neurones cachés Il y a aussi des biais normalement La multiplication des couches cachées est ce qu’on appelle l’apprentissage profond IFT615 Hugo Larochelle et Froduald Kabanza

45 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 1 -1 -1 1.5 3 -3 -1 -2 -4 propagation avant IFT615 Hugo Larochelle et Froduald Kabanza

46 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 1 -1 -1 1.5 3 -3 -1 -2 -4 propagation avant Logistic(0.5 * * -1) = Logistic(-0.5) = 0.378 IFT615 Hugo Larochelle et Froduald Kabanza

47 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 1 -1 -1 1.5 3 -3 -1 0.5 -2 -4 propagation avant Logistic(-1 * * -1) = Logistic(0) = 0.5 IFT615 Hugo Larochelle et Froduald Kabanza

48 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 0.867 1 -1 -1 1.5 3 -3 -1 0.5 -2 -4 propagation avant Logistic(1 * * 0.5) = Logistic(1.878) = 0.867 IFT615 Hugo Larochelle et Froduald Kabanza

49 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 0.867 1 -1 -1 1.5 3 -3 -1 0.5 0.085 -2 -4 propagation avant Logistic(-1 * * 0.5) = Logistic(-2.378) = 0.085 IFT615 Hugo Larochelle et Froduald Kabanza

50 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 0.867 1 -1 -1 0.648 1.5 3 -3 -1 0.5 0.085 -2 -4 propagation avant Logistic(1 * * 0.085) = Logistic(0.612) = 0.648 IFT615 Hugo Larochelle et Froduald Kabanza

51 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 0.867 1 -1 -1 Δ = y - a 0.648 1.5 3 -3 -1 0.5 0.085 -2 -4 On calcule la perte, puis le gradient de la perte. On entraîne le réseau par descente du gradient stochastique. Pour ce faire, il faut commencer par calculer le gradient par rapport à chaque paramètre (le gradient est seulement un vecteur de dérivées partielles). Pour calculer le gradient par rapport à chacun des paramètres, on utilise l’algorithme de rétropropagation. La rétropropagation est juste un algo dynamique pour éviter d’avoir à refaire plusieurs fois les mêmes calculs de gradient rétropropagation IFT615 Hugo Larochelle et Froduald Kabanza

52 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 0.867 1 -1 -1 Δ = 0.648 1.5 3 -3 -1 0.5 0.085 -2 -4 rétropropagation IFT615 Hugo Larochelle et Froduald Kabanza

53 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , 0.5 1 2 0.378 0.867 1 -1 -1 Δ = 0.352 0.648 1.5 3 -3 -1 0.5 0.085 -2 -4 rétropropagation IFT615 Hugo Larochelle et Froduald Kabanza

54 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , Δ = 0.041 0.5 1 2 0.378 0.867 1 -1 -1 Δ = 0.352 0.648 1.5 3 -3 -1 0.5 0.085 -2 -4 rétropropagation Δ = * ( ) * 1 * = 0.041 IFT615 Hugo Larochelle et Froduald Kabanza

55 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , Δ = 0.041 0.5 1 2 0.378 0.867 1 -1 -1 Δ = 0.352 0.648 Δ = 1.5 3 -3 -1 0.5 0.085 -2 -4 rétropropagation Δ = * ( ) * -3 * = IFT615 Hugo Larochelle et Froduald Kabanza

56 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , Δ = 0.029 Δ = 0.041 0.5 1 2 0.378 0.867 1 -1 -1 Δ = 0.352 0.648 Δ = 1.5 3 -3 -1 0.5 0.085 -2 -4 rétropropagation Δ = * ( ) * (1 * * ) = 0.029 IFT615 Hugo Larochelle et Froduald Kabanza

57 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , Δ = 0.029 Δ = 0.041 0.5 1 2 0.378 0.867 1 -1 -1 Δ = 0.352 0.648 Δ = 0.113 Δ = 1.5 3 -3 -1 0.5 0.085 -2 -4 rétropropagation Δ = 0.5 * (1-0.5) * (3 * * ) = 0.113 IFT615 Hugo Larochelle et Froduald Kabanza

58 Hugo Larochelle et Froduald Kabanza
Exemple Exemple: , Δ = 0.029 Δ = 0.041 0.5 1 2 0.378 0.867 1 -1 -1 Δ = 0.352 0.648 Δ = 0.113 Δ = 1.5 3 -3 -1 0.5 0.085 -2 -4 Finalement je calcule le gradient de mes poids et je les mets à jour. On répète la procédure pour un autre exemple d’entraînement mise à jour (α=0.1) w1,3  * 2 * = 0.506 w3,5  * * = 1.002 w1,4  * 2 * = w3,6  * * = w5,7  * * = 1.031 w2,3  * -1 * = 1.497 w4,5  * 0.5 * = 3.002 w6,7  * * = w2,4  * -1 * = w4,6  * 0.5 * = IFT615 Hugo Larochelle et Froduald Kabanza

59 Progression des réseaux de neurones
Perceptron: 1957 Rétropropagation du gradient: 1984 Perceptron multicouche (réseau de neurones): 1986 Réseau de neurones à convolution: 1998 Les percées de l’apprentissage profond ne sont que très récentes (AlexNet en 2012) Qu’est-ce qui a changé? Malgré le fait que l’idée d’un réseau de neurones et de l’apprentissage profond date, les percées en apprentissage profond ne sont que très récentes IFT702 Froduald Kabanza

60 CNN IFT702 Froduald Kabanza
En 2012, premier réseau de neurones à convolution à gagner l’Image Classification Challenge. Les techniques gagnantes précédentes n’utilisaient pas l’apprentissage profond AlexNet a permis une amélioration importante de l’erreur d’apprentissage. Après, les réseaux de neurones à convolution n’ont fait que gagner en performance, pour finalement battre l’humain. IFT702 Froduald Kabanza

61 En 1998, le réseau de neurones à convolution est inventé par Yann LeCun
C’est seulement 14 ans plus tard (2012) qu’AlexNet devient le premier réseau de neurones à convolutions à gagner un concours de classification d’images. Le processeur utilisé avait 1000x plus de transistors que celui qui a servi à l’entraînement de LeNet Le calcul (entraînement) est massivement parallélisé sur des GPUs Le nombre des pixels des images en entrée est le carré de celui de 1998 Autrement dit, ce qui a fait la majeure différence, c’est la puissance des ressources de calcul plus que l’évolution des algorithmes Depuis 2012, il y a eu une tendance inverse (qui vous permet aujourd’hui d’exécuter un réseau à convolution sur votre téléphone), mais les ressources nécessaires pour l’entraînement sont Toujours massives. IFT702 Froduald Kabanza

62 Applications courantes (et futures)
Aujourd’hui, les réseaux de neurones à convolution sont utilisés partout On va plus loin que la simple classification d’images: Détection d’objets (multiples) Classification d’actions Génération de légendes, Génération d’images Applications concrètes: Identification par l’iris Identification de la nourriture Identification des œuvres dans les musées et application interactive avec les visiteurs Génération d’images (décor) IFT702 Mariane Maynard

63 Ce qu’il faut se rappeler:
Les réseaux de neurones sont une agglomération de régresseurs linéaires suivis de fonction(s) d’activation non-linéaires qui permettent l’apprentissage d’une fonction y = f(x) Plus général qu’une simple régression linéaire, à seuil dur, logistique ou suivie d’une fonction non-linéaire arbitraire Espace des hypothèses plus « large », couvre plus de cas Peut résoudre des problèmes non linéairement séparables en apprenant une transformation linéaire Les algorithmes traditionnels d’apprentissage par renforcement utilisaient des méthodes s’apparentant à la régression linéaire ou le perceptron L’apprentissage profond et, surtout, les récentes percées en vision par ordinateur apporte plus de flexibilité à ces algorithmes et permettent l’utilisation d’images de la caméra pour l’apprentissage Et c’est à partir de là qu’on a recommencé à s’intéresser à l’apprentissage par renforcement et de combiner les idées avec l’apprentissage profond, car rien n’indiquait avant ces percées que les réseaux de neurones avaient un réel potentiel. IFT702 Mariane Maynard

64 Apprentissage Par renforcement profond
IFT702 Mariane Maynard

65 Apprentissage par renforcement
Nous avons encore un processus de décision de Markov Nous cherchons encore une politique  qui maximise (approximativement) la somme des récompenses espérée. Mais nous ne connaissons pas le modèle d’action P(s’|s, a) ou la fonction de récompense R(s) Nous ne savons pas quelles actions choisir Nous ne savons pas quels états sont bons En fait, il faudra tâtonner (essayer des actions) pour apprendre En résumé, l’apprentissage par renforcement vise aussi à trouver un plan optimal, mais sans connaître le modèle de transition de l’environnement Certains diront que c’est la forme la plus pure d’apprentissage en IA c’est aussi une des plus difficiles à réussir... IFT 615 Froduald Kabanza

66 Caractéristiques principales
Qu’est-ce qui distingue l’apprentissage par renforcement de l’apprentissage supervisé : Il n’y a pas de superviseur, mais plutôt seulement un signal de récompense La récompense peut être retardée (delayed, sparse); elle n’est pas forcément instantanée Le temps est important : données séquentielles par oppositions aux données indépendantes et identiquement distribuées (i.i.d. data) Les actions de l’agent influencent les données futurs que l’agent va recevoir (observer) Il existe des trucs pour simuler i.i.d data. IFT 615 Froduald Kabanza

67 Observation monde réel = capture d’images par caméra (senseur)
DRL = Deep Reinforcement Learning En général, le réseau n’apprend pas à partir de l’état, mais d’une observation de l’état Observation monde réel = capture d’images par caméra (senseur) Utilisation d’un réseau à convolutions pour traiter les observations Sergey Levine

68 Idées Comment se servir de l’apprentissage profond pour trouver la politique optimale 𝜋 ∗ d’un environnement stochastique inconnu? Idée 1 : en supposant qu’on ait accès à des exemples 𝑠 𝑡 , 𝜋 ∗ 𝑠 𝑡 mais pas explicitement à 𝜋 ∗ ? Idée 2 : directement? Indice 1 : Voir l’apprentissage comme une solution à problème d’optimisation? Indice 2 : récompenses? Idée 3 : indirectement? Indice 1 : rappel Q-Learning/TD-Learning? Indice 2 : équation de Bellman, value-iteration? Idée 4 : autre indirectement? Indice 1 : rappel programmation dynamique adaptative (PDA, algo ADP-Agent)? Indice 2: quoi d’autre est inconnu et peut être appris dans notre MDP? IFT702 Mariane Maynard

69 Value-based: Ou d’une politique fixe Actor-critic: on apprend les 2 avec un réseau de neurones En premier lieu: apprentissage par imitation/démonstrations (aussi connu sous l’appellation « clonage de comportement ») IFT702 Sergey Levine

70 EST-CE QUE ÇA MARCHE???? Réseau de neurones représente une politique
Réseau de neurones représente une politique Entrée: observation du monde au temps t Sortie: action La politique est entraînée pour ‘imiter’ au mieux celle de « l’expert » Les données d’entraînement sont des exemples ( 𝐨 𝑡 , 𝐚 𝑡 ) Sergey Levine

71 Multimodal: exemple de l’arbre et du ski Autres: Comportement non-markovien (actions dépendent de l’historique des états plutôt que seulement l’état courant) Comportement multimodal (plusieurs politiques optimales dans le jeu de données) Comportement non-optimal (ex. jeux, les humains ne jouent pas nécessairement optimalement) Sergey Levine

72 Autre idée: Inverse Reinforcement Learning
Plutôt que d’imiter sans comprendre, on tente d’inférer la récompense visée par l’expert À quoi s’apparente cette approche? On utilise la récompense « apprise » pour trouver une politique optimale Peut donc aller « au-delà » du jeu de données Utile lorsqu’on dispose de données d’experts, mais pas de notion de récompense explicite dans l’environnement et difficilement implémentable Ex.: Apprendre à un robot à se verser un verre d’eau Problème difficile en pratique Comment déterminer que la fonction de récompense est bonne? Réponse: reconnaissance de plans IFT702 Mariane Maynard

73 Apprentissage par imitation: résumé
On entraîne un réseau à partir d’exemples d’expert 𝑜 𝑡 , 𝑎 𝑡 Le réseau tente de minimiser la perte de ces prédictions des actions de l’expert La politique est dérivée des « prédictions » Le réseau tente d’imiter l’expert Problème: approche limitée par le jeu de données Comportement non-optimal Comportement multi-modal (plusieurs comportement (sous)-optimaux) Etc. En changeant l’objectif (i.e. maximiser ses récompenses), on peut espérer faire mieux que l’expert IFT702 Mariane Maynard

74 Le retour de la politique est estimé à partir de ces échantillons
L’objectif du réseau est directement de maximiser son retour 𝑅 𝜏 (somme des récompenses 𝑟(𝑠,𝑎)) La politique est roulée dans l’environnement pour générer des échantillons Le retour de la politique est estimé à partir de ces échantillons Le gradient du retour (fonction objectif) sert à mettre à jour les paramètres Sergey Levine

75 Lorsqu’on maximise: ascension du gradient Lorsqu’on minimise: descente du gradient IFT702 Froduald Kabanza

76 C’est ce qu’on appelle l’algorithme REINFORCE On échantillonne des trajectoires avec notre politique apprise. On calcule la moyenne des sommes de récompenses obtenues de ces trajectoires. Notre objectif est de maximiser J (la moyenne des sommes) IFT702 Froduald Kabanza

77 On peut estimer les gradients directement des échantillons Si la somme est haute, les actions de la politique sont encouragées Si la somme est basse, les actions de la politique sont découragées Quel est le problème? Les actions communes aux 2 politiques, comment sont-elles mises à jour? Encouragées une fois, découragées la passe suivante Il y a donc beaucoup de variance entre les mises à jour de ces actions Alors que ces actions ne sont pas nécessairement celles qui ont une grande influence sur le résultat final IFT702 Froduald Kabanza

78 Pour réduire la variance, on introduit la notion de baseline Ça règle aussi le problème qu’on aurait si toutes les récompenses étaient positives (et donc on aurait seulement des gradients positifs) L’idée est de donner de l’importance aux récompenses qui sont meilleures que ce que à quoi on s’attend (et vice versa pour les récompenses moins bonnes qu’attendues) On ramène également le facteur d’escompte pour aider « l’assignation du crédit » IFT702 Froduald Kabanza

79 Réponse tantôt IFT702 Froduald Kabanza
La meilleur valeur de base: valeur espérée de la somme des récompenses futures à cet état IFT702 Froduald Kabanza

80 Un algo par politique: TRPO
Trust region policy optimization L’algo est beaucoup plus mature que REINFORCE, mais l’idée de base (maximiser la somme des récompenses directement) reste la même IFT702 Froduald Kabanza

81 Apprentissage par politique: résumé
On entraîne un réseau à partir d’échantillons 𝑜 𝑡 , 𝑟 𝑡 générés par notre politique 𝜋 𝜃 Le réseau tente de maximiser la somme de ces récompenses en moyenne La politique est directement la sortie du réseau ( 𝜋 𝜃 ) Problème: haute variance des mises à jour et assignation du crédit Tentons d’avoir un objectif intermédiaire qui produit des gradients plus stables pour notre réseau IFT702 Mariane Maynard

82 On se sert de la valeur apprise pour dériver une meilleure politique
On apprend la valeur de la politique (espérance des récompenses futures) On se sert de la valeur apprise pour dériver une meilleure politique La politique est roulée dans l’environnement pour produire des échantillons Les échantillons permettre d’apprendre/mettre à jour la valeur de la politique Question : comment apprendre la valeur (fonction à optimiser?) La « vraie » valeur n’est pas connue (pas d’étiquettes) Sergey Levine

83 Rappel: Apprentissage actif avec Q-learning
Selon la définition de Q(s,a) et l’équation de Bellman, on a Q(s,a) = R(s) + γ Σ s’  S P(s’|s,a) max Q(s’,a’) Q-learning consiste à traduire cette équation en la mise à jour Q(s,a)  Q(s,a) + α ( R(s) + γ max Q(s’,a’) – Q(s,a) ) Autrement dit, on utilise l’égalité ci-haut pour calculer l’erreur d’apprentissage a’ a’ IFT 615 Froduald Kabanza

84 IFT702 Froduald Kabanza

85 IFT702 Froduald Kabanza

86 Ils ne sont pas indépendants (et identiquement distribués)
Les échantillons sont dépendants des échantillons précédents et même pire: dépendants des paramètres du réseau Les paramètres actuels déterminent ce que seront les échantillons suivants Rejouer l’expérience IFT702 Froduald Kabanza

87 IFT702 Froduald Kabanza Initialise la mémoire d’expériences
Initialise les paramètres du réseau Pour chaque épisode (jeu) Initialise l’état initial Pour chaque état du jeu On sélectionne une action aléatoire avec la probabilité epsilon (empêche l’algo d’être trop vorace et encourage l’exploration; on y reviendra) Sinon sélectionner l’action qui maximise notre fonction Q actuelle Exécuter a dans l’émulateur et observer récompense et transition Emmagasiner la transition dans notre mémoire Échantillonner une minibatch de notre mémoire Calculer notre cible (équation de Bellman) Descente du gradient sur la perte (erreur moyenne au carré (MSE) entre la cible et la valeur retournée) On recommence IFT702 Froduald Kabanza

88 Deep Q-learning vs Atari Breakout
IFT702 Froduald Kabanza

89 Autres algorithmes d’apprentissage par valeur
Distinction: on-policy vs off-policy On-policy: on apprend la valeur de la politique Ex. TD-learning: V(s, π)  V(s, π) + α ( R(s) + γ V(s’, π) – V(s, π) ) La valeur dépend donc la politique utilisée Apprentissage passif (politique fixe) OU Apprentissage sans experience replay (ex. SARSA) Pourquoi? Les échantillons générés deviennent désuets à chaque fois qu’on change de politique Off-policy: valeur optimale apprise (équation de Bellman) Ex. (deep) Q-learning Ne dépend pas de la politique utilisée pour générer les échantillons Apprentissage actif/« online » possible (politique mise à jour à chaque passe) Utilisation d’une replay memory possible IFT702 Mariane Maynard

90 Algos d’apprentissage par valeur
Type de valeur apprise V(s) Q(s,a) Off/On-policy Off-policy On-policy ---- Q-learning TD-learning SARSA State-action-reward-state-action Mariane Maynard

91 Problème avec Q-learning c’est qu’il est trop vorace
Balance exploration/exploitation IFT702 Sergey Levine

92 Apprentissage par valeur: résumé
On entraîne un réseau à partir d’échantillons 𝑜 𝑡 , 𝑟 𝑡 générés par une politique 𝜋 Le réseau tente d’apprendre une valeur V 𝑜 𝑡 ;𝜃 (ou Q 𝑜 𝑡 , 𝑎 𝑡 ;𝜃 ) qui respecte une égalité Ex. Q-learning: Équation de Bellman La politique est dérivée/améliorée par les valeurs calculées Problème: balance exploration/exploitation de la politique dérivée durant l’apprentissage Comment obtenir le meilleur des approches vues jusqu’à maintenant? Réponse: reconnaissance de plans IFT702 Mariane Maynard

93 Hybride des 2 précédentes approches:
Policy gradients avec valeur apprise plutôt qu’estimation du retour tirée directement des échantillons Une approche par avantage peut contrôler la variance des mises à jour Apprentissage par valeurs où la politique est dérivée d’un réseau de neurones Beaucoup moins vorace que de dériver la politique optimale Sergey Levine

94 IFT702 Froduald Kabanza

95 IFT702 Froduald Kabanza

96 TD-learning TD-learning IFT702 Froduald Kabanza

97 Peut se faire en parallèle Mise à jour de la critique
𝑄 𝜑 𝜋 𝐬 𝑖 , 𝐚 𝑖 =𝑟 𝐬 𝑖 , 𝐚 𝑖 +𝛾 𝑉 𝜑 𝜋 𝐬 𝑖 Calcul du gradient de la « batch » Mise à jour de l’acteur Acteur: la politique apprise Critique: la valeur apprise Avantages: Réduit la variance du gradient de la politique Moins vorace que Q-learning Design en vigueur: Un réseau avec 2 têtes (sorties) plutôt que 2 réseaux différents Simulé dans plusieurs enviros en parallèle plutôt qu’1 exemple (online) ou plusieurs consécutifs (batch) Ex. A3C, A2C, etc. Sergey Levine

98 ACKTR: un exemple d’algo acteur-critique
IFT702 Froduald Kabanza

99 Apprentissage acteur-critique: résumé
On entraîne un réseau à partir d’échantillons 𝑜 𝑡 , 𝑟 𝑡 générés par notre politique 𝜋 𝜃 (acteur) Le réseau tente également d’apprendre la valeur V 𝑜 𝑡 ;𝜑 qui respecte l’égalité: V(s) = R(s) + γ V(s’) La critique sert à améliorer l’acteur 𝜋 𝜃 Problème: approche encore très spécialisée Nécessite beaucoup d’échantillons Apprentissage ne se transfère pas aisément à d’autres tâches, même dans le même environnement Ex. Le robot qui apprend à aller au point A aura beaucoup de difficulté à apprendre à aller au point B Comment améliorer le transfert d’apprentissages? Réponse: reconnaissance de plans IFT702 Mariane Maynard

100 Par exemple: Value iteration Policy iteration
Par exemple: Value iteration Policy iteration Sergey Levine

101 http://rll.berkeley.edu/deeprlcourse Sergey Levine
On apprend une politique avec notre réseau On exécute la politique dans notre environnement (modéliser par notre modèle de transitions) Au final, on tente de maximiser la somme des récompenses obtenues en moyenne en appliquant la politique dans notre environnement. On tente de trouver les paramètres optimaux qui vont nous permettre d’atteindre cet objectif Sergey Levine

102 http://rll.berkeley.edu/deeprlcourse Sergey Levine
À date, on a ignorer le modèle des transitions Sergey Levine

103 Sergey Levine

104 http://rll.berkeley.edu/deeprlcourse Sergey Levine
2a. Oui, pensez à value iteration ou policy iteration 2b. On pourrait même utiliser les algos de planning vus jusqu’à maintenant (en supposant que le modèle est déterministe) 3. Peut-on les apprendre? 4. Comment dériver les politiques? Sergey Levine

105 Rappel : Approche par programmation dynamique adaptative
Idée derrière la programmation dynamique adaptative (PDA) tirer profit des équations de la fonction de valeur pour estimer U(s) L’approche par PDA n’apprend pas directement U(s), mais apprend plutôt le modèle de transition P(s’|s, a) étant donnée une estimation de P(s’|s, a), on peut résoudre Uπ(s) = R(s) + γ Σ s’  S P(s’|s, π(s)) Uπ(s’) on obtient alors notre estimation de U(s) On peut estimer P(s’|s, a) à partir des fréquences des transitions observées: P(s’|s, a) = Σ 𝑁 𝑠 ′ |𝑠𝑎 essais nb. de transitions de (s,a,s’) dans l’essai Un agent qui utilise la prorammation dynamique adaptative tire parti des contraintes entre les utilités des états en apprenant le modèle de transition qui les relie et en résolvant le processus de décision de Markov à l’aide de la programmation dynamique. Cela revient, pour un agent passif, à insérer le modèle de transition P(s’|s,pi(s)) appris et les récompenses R(s) dans les équation de Bellman. Problème: on a pas accès aux états en tant que tel: Seulement aux observations Comment apprendre les transitions à partir des observations??? 𝑁 𝑠𝑎 nb. de fois que l’action a est choisi dans l’état s dans l’essai somme sur tous les essais IFT 615 Froduald Kabanza

106 Problème avec PDA Problème: on a pas accès aux états 𝑠 𝑡
Seulement aux observations 𝑜 𝑡 Comment apprendre le modèle de transitions dans ce cas? Plusieurs solutions, ex.: apprendre 𝑠 𝑡 à partir de 𝑜 𝑡 Comment évaluer si 𝑠 𝑡 est bon sans le modèle ou des exemples étiquetés? Il existe plusieurs approches, aucune de parfaite Dépassent le cadre du cours IFT702 Mariane Maynard

107 http://rll.berkeley.edu/deeprlcourse Sergey Levine
Comparaison des algorithmes en terme du nombre d’échantillons nécessaires à l’apprentissage Moins on a besoin d’échantillons, plus la solution est transférable à d’autres tâches (transfer learning) avec un minimum de ré-entraînement Ne veut pas dire que c’est moins long en pratique ou que la solution dérivée sera nécessairement optimale Plus long dériver la politique optimale post-entraînement Sergey Levine

108 Étude de cas : AlphaGo Zero
Dans tous les algos présentés, Qu’est-ce qui distingue l’apprentissage par renforcement par rapport à l’apprentissage supervisé? En quoi est-il commun? IFT702 Mariane Maynard

109 Premier lieu: Alpha Go IFT702 Froduald Kabanza

110 Mariane Maynard [Silver et al., Nature, 2016]
IFT702 Mariane Maynard [Silver et al., Nature, 2016]

111 Mariane Maynard [Silver et al., Nature, 2017]
AlphaGo Zero Même idée: on a un réseau (cette fois-ci politique et valeur combinée dans une même architecture acteur-critique à 2 têtes) On se sert de l’acteur pour guider la recherche dans MCTS (politique d’exploration) On se sert de la critique pour l’évaluation des nœuds. Nouveauté: pas de rollout Autre nouveauté: On part tabula rasa, c’est-à-dire, d’un réseau non entraîné et sans supervision humaine Comment le réseau est-il entraîné? On joue des parties avec MCTS et on génères des tuples 𝑠,𝜋,𝑧 pour chaque mouvement, où 𝑠 est l’état du jeu avant le mouvement, 𝜋 la politique choisie par MCTS, et 𝑧 est le résultat d’une partie On échantillonne de cette banque de mouvements et on calcule 𝑝,𝑣 = 𝑓 𝜃 𝑠 (on passe 𝑠 au réseau) On minimise la perte 𝐿= 𝑧−𝑣 2 − 𝜋 𝑇 log 𝑝 (i.e. la sortie du réseau) par SGD De temps à autre, on utilise le nouveau réseau entraîné dans MCTS et on joue de nouvelles parties IFT702 Mariane Maynard [Silver et al., Nature, 2017]

112 Mariane Maynard [Silver et al., Nature, 2017]
AlphaGo Zero Comment le réseau est-il entraîné? On joue des parties avec MCTS et on génères des tuples 𝑠,𝜋,𝑧 pour chaque mouvement, où 𝑠 est l’état du jeu avant le mouvement, 𝜋 la politique choisie par MCTS, et 𝑧 est le résultat d’une partie On échantillonne de cette banque de mouvements et on calcule 𝑝,𝑣 = 𝑓 𝜃 𝑠 (on passe 𝑠 au réseau) On minimise la perte 𝐿= 𝑧−𝑣 2 − 𝜋 𝑇 log 𝑝 (i.e. la sortie du réseau) par SGD De temps à autre, on utilise le nouveau réseau entraîné dans MCTS et on joue de nouvelles parties Le réseau est supervisé par MCTS, qui lui-même est aidé par le réseau AlphaGo Zero est son propre enseignant Résultat: plus la politique 𝑝 s’approche de 𝜋 et les évaluations 𝑣 de 𝑧, meilleures elles deviennent Meilleures sont 𝑝 et 𝑣, plus rapidement MCTS convergera vers 𝜋 ∗ pour chaque joueur Plus 𝜋 est optimale, meilleur la supervision devient, et ainsi de suite. IFT702 Mariane Maynard [Silver et al., Nature, 2017]

113 AlphaGo Zero vs AlphaGo
AlphaGo Zero [Silver et al., Nature, 2017] AlphaGo Fan/Lee (1res versions) [Silver et al., Nature, 2016] Exécuté sur 1 machine avec 4 TPUs Temps d’entraînement: 36h pour battre AlphaGo Lee Entrée: Positions des pierres sur le plateau seulement Aucune supervision humaine Pas de rollouts dans MCTS 1 seul réseau à 2 têtes Exécution distribuée sur 176 GPUs (Fan) puis 48 TPUs (Lee) Temps d’entraînement: plusieurs mois pour AlphaGo Lee Entrée: positions, libertés, taille du atari, « ladder capture/escape » etc. Supervision humaine pour la politique Rollouts + valeur du réseau 2 réseaux distincts pour la politique et la valeur IFT702 Mariane Maynard

114 Résumé L’apprentissage par renforcement permet d’apprendre à « planifier » dans un environnement inconnu L’approche MDP est très attrayante parce qu’elle combine raisonnement probabiliste et optimisation avec élégance Les avancées en apprentissage profond permettent d’apprendre directement des données des senseurs Il existe plusieurs approches à l’apprentissage par renforcement (profond): Apprentissage par imitation Apprentissage par politique Apprentissage par valeurs Apprentissage par modèles L’apprentissage par renforcement vs l’apprentissage supervisé est autonome, i.e. l’agent peut se superviser lui-même Par contre, l’apprentissage par renforcement n’est pas encore mature. Pour un résumé (pessimiste) des récentes avancées: En attendant les véritables percées, les techniques traditionnelles restent encore la meilleure option, surtout en robotique i.e. planification classique IFT702 Mariane Maynard

115 Références MDP : IFT615 - Russel & Norvig. Artificial Intelligence A Modern Approach (2010) Malik Ghallab, Dana Nau & Paolo Traverso. Automated Planning: theory and practice. Morgan Kaufmann, 2004. Matériel du cours IFT615: Matériel du cours CS231n de Stanford: Matériel du cours CS294 de Berkeley: Matériel de Hugo Larochelle: Silver, D. et al. (2016). Mastering the game of Go with deep neural networks and tree search. Nature, 529, pp Silver, D. et al. (2017). Mastering the game of Go without human knowledge. Nature, 550, pp IFT702 Mariane Maynard


Télécharger ppt "IFT 608 / IFT 702 – Planification en intelligence artificielle Apprentissage par renforcement profond (Deep Reinforcement Learning) Mariane Maynard."

Présentations similaires


Annonces Google