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 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615.

Présentations similaires


Présentation au sujet: "IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615."— Transcription de la présentation:

1 IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615

2 Sujets couverts Apprentissage automatique Apprentissage par renforcement passif méthode par estimation directe méthode par programmation dynamique adaptative (PDA) méthode par différence temporelle (TD) Apprentissage par renforcement actif méthode PDA active méthode TD active méthode Q-learning IFT 615Froduald Kabanza2

3 APPRENTISSAGE AUTOMATIQUE IFT 615Froduald Kabanza3

4 Apprentissage dans un agent Un agent apprend sil améliore sa performance sur des tâches futures avec lexpérience Pourquoi programmer des programmes qui apprennent: il est trop difficile danticiper toutes les entrées à traiter correctement il est possible que la relation entre lentrée et la sortie évolue dans le temps (ex.: classification de pourriels) parfois, on a aucune idée comment programmer la fonction désirée (ex.: reconnaissance de visage) IFT 615Froduald Kabanza4

5 Composantes de lagent concernées par lapprentissage IFT 615Froduald Kabanza 5

6 Types de problèmes dapprentissage Il existe plusieurs sortes de problèmes dapprentissage, 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 (sujet de ce cours) »ex.: reconnaître les âges des personnes à laide des exemples de photos apprentissage par renforcement : le signal dapprentissage correspond seulement à des récompenses et punitions »ex.: Robot qui apprend à naviguer dans un environnement apprentissage non-supervisé : les données ne fournissent pas de signal explicite et le modèle doit extraire de linformation uniquement à partir de la structure des entrées »ex.: identifier différents thèmes darticles de journaux en regroupant les articles similaires (« clustering ») et plusieurs autres! IFT 615Froduald Kabanza6

7 Types de problèmes dapprentissage IFT 615Froduald Kabanza7 Dans ce cours, on va juste introduire lapprentissage par renforcement et lapprentissage supervisé Voir le cours IFT Techniques d'apprentissage pour en savoir plus sur le grand monde de lapprentissage automatique

8 APPRENTISSAGE PAR RENFORCEMENT IFT 615Froduald Kabanza8

9 Idée de base Lapprentissage par renforcement sintéresse au cas où lagent doit apprendre à agir seulement à partir des récompenses ou renforcements IFT 615Froduald Kabanza9 Données du problème dapprentissage: Lagent agit sur son environnement Reçoit une retro-action sous-forme de récompense (renforcement) Son but est de maximiser la somme des recompenses espérés Objectif: Apprendre à maximiser somme des recompenses

10 Exemple Lagent vit dans un environnement représenté par une grille 3 x 4 Des murs bloquent le chemin de lagent Lenvironnement est stochastique Lagent reçoit des récompenses: partout, sauf dans (4,3) où il reçoit +1 et dans (4,2) où il reçoit -1 Lagent ne connait pas à priori le modèle de lenvironnement P(s|s,a) Ni la fonction de récompense R(s) Son but est de maximiser la somme des récompenses IFT 615Froduald Kabanza 10 X ? X XX E N S W

11 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 daction P(s|s, a) ou la fonction de récompense R(s) Nous ne savons pas quelles actions chosir Nous ne savons pas quels états sont bons En fait, il faudra tâtonner (essayer des actions) pour apprendre En résumé, lapprentissage par renforcement vise aussi à trouver un plan optimal, mais sans connaître le modèle de transition de lenvironnement Certains diront que cest la forme la plus pure dapprentissage en IA cest aussi une des plus difficiles à réussir... IFT 615Froduald Kabanza11

12 12 Deux cas considérés Apprentissage passif Lagent a une politique fixe Essaie dapprendre lutilité des états en observant loccurrence des états Similaire à lévaluation dune politique »Sert souvent de composante à lapprentissage active »Inspire souvent des algorithmes dapprentissage active Apprentissage actif Lagent essaie de trouver une bonne politique en agissant dans lenvironnement Similaire à résoudre le PDM sous-jacent à cet environnement »Mais sans avoir le modèle correspondant

13 Dans ce cours... On va se concentrer sur le cas dun environnement parfaitement observé dun environnement stochastique (le résultat dune action nest pas déterministe) où on ne connaît pas lenvironnement (c.-à-d. cest un MDP inconnu) où on peut ne pas connaître la fonction de renforcement R(s) Après ce cours, vous connaîtrez les notions de bases sur apprentissage par renforcement passif apprentissage par renforcement actif dilemme exploration vs. exploitation IFT 615Froduald Kabanza13

14 RAPPEL IFT 615Froduald Kabanza14

15 Rappel: 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 s 0 ) un ensemble dactions possibles Actions(s) (ou A(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 plan (politique) π est un ensemble de décisions qui associe un état s à une action a = π(s) IFT 615Froduald Kabanza 15

16 Rappel: processus de décision markovien La fonction de valeur (utilité) U(s) dun plan π est donnée par les équations U π (s) = R(s) + γ Σ s S P(s|s, π(s)) U π (s) où γ est un facteur descompte donné On note parfois U(π,s) ou U π (s) NOUVEAU: on va supposer lexistence détats terminaux lorsque lagent atteint cet état, la simulation est arrêtée on sintéresse à la somme des récompenses jusquà latteinte dun état terminal »ex.: au tic-tac-toe, létat terminal est une grille de fin de partie (c.-à-d. une grille complète ou une grille où un des joueurs a gagné) IFT 615Froduald Kabanza 16

17 Utilité dun plan R(s): récompense pour létat s U(π,s): utilité (valeur) du plan π à létat s U(π,s) = R(s) + γ Σ s S P(s|s, π(s)) U(π, s) γ: facteur descompte (0 γ 1), indique limportance 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 IFT 615Froduald Kabanza 17 récompense actuelle somme des récompenses futures espérée

18 Équations de Bellman pour la valeur optimale Les équations de Bellman nous donnent lutilité dun état (c.à-d., lutilité des plans optimaux dans un état) U(s) = R(s) + max γ Σ s S P(s|s,a) U(s) s S Si nous pouvons calculer U, nous pourrons calculer un plan optimal aisément: il suffit de choisir dans chaque état s laction qui maximise U(s) (c.-à-d. le argmax) a IFT 615Froduald Kabanza 18

19 utilities of states: Exemple : Utilité dun plan P(s|s,a) : 0.8 succès; 0.1 à angle droit à lopposé de la direction prévue R(S) : R(s)= partout, sauf R((4,3))=+1 et R((4,3))=+1 et R((4,2))=-1 Facteur descompte = 1

20 Rappel : Itération de la valeur Idée: Commencer avec U 0 (s) = 0 Étant donné U i, calculer les valeurs de tous les états pour litération i+1: U(s) = R(s) + max γ Σ s S P(s|s,a) U(s) a Cet étape est mise à jour de la valeur ou la mise à jour de Bellman Répéter jusquà la convergence Théorème: va converger aux valeurs optimales 20

21 Exemple: Rappel itération de la valeur Les valeurs se propagent à rebours vers tous les états. Éventuellement chaque état a la valeur exacte. Facteur descompte = 0.5 V1V1 V2V

22 Exemple: Itération de la valeur V2V2 V3V Les valeurs se propagent à rebours vers tous les états. Éventuellement chaque état a la valeur exacte. Facteur descompte = 0.5

23 APPRENTISSAGE PASSIF Introduction IFT 615Froduald Kabanza23

24 24 Rappel Apprentissage passif Lagent a une politique fixe Essaie dapprendre lutilité des états en observant loccurrence des états Similaire à lévaluation dune politique

25 Apprentissage passif Définition: soit un plan π donné, apprendre la fonction de valeur sans connaître P(s|s, a) Exemple illustratif: déplacement sur une grille 3 x 4 plan π illustré par les flèches R(s) = partout sauf aux états terminaux lenvironnement est stochastique lagent arrête aux états terminaux on suppose γ=1 IFT 615Froduald Kabanza 25 états terminaux

26 Apprentissage passif Définition: soit un plan π donné, apprendre la fonction de valeur sans connaître P(s|s, a) Puisquon ne connaît pas P(s|s, a) on doit apprendre à partir dessais 1. (1,1) -.04 (1,2) -.04 (1,3) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (4,3) (1,1) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (3,2) -.04 (3,3) -.04 (4,3) (1,1) -.04 (2,1) -.04 (3,1) -.04 (3,2) -.04 (4,2) -1 Comment estimer la fonction de valeurs U(s) à partir de ces essais? Trois approches: Estimation directe Programmation dynamique adaptative Différence temporelle IFT 615Froduald Kabanza 26

27 APPRENTISSAGE PASSIF Approche par estimation directe IFT 615Froduald Kabanza27

28 Approche par estimation directe Approche la plus simple: calculer la moyenne de ce qui est observé dans les essais Essais 1. (1,1) -.04 (1,2) -.04 (1,3) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (4,3) (1,1) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (3,2) -.04 (3,3) -.04 (4,3) (1,1) -.04 (2,1) -.04 (3,1) -.04 (3,2) -.04 (4,2) -1 Estimation de U π ( (1,1) ) dans lessai 1, la somme des récompenses à partir de (1,1) est 0.72 dans lessai 2, on obtient également 0.72 dans lessai 3, on obtient plutôt lestimation directe de U( (1,1) ) est donc ( )/3 = IFT 615Froduald Kabanza 28

29 Approche par estimation directe Approche la plus simple: calculer la moyenne de ce qui est observé dans les essais Essais 1. (1,1) -.04 (1,2) -.04 (1,3) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (4,3) (1,1) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (3,2) -.04 (3,3) -.04 (4,3) (1,1) -.04 (2,1) -.04 (3,1) -.04 (3,2) -.04 (4,2) -1 Estimation de U π ( (1,2) ) dans lessai 1, létat (1,2) est visité deux fois, avec des sommes de récompenses à partir de (1,2) de 0.76 et 0.84 dans lessai 2, on observe 0.76 lessai 3 ne visite pas (1,2) lestimation directe de U π ( (1,2) ) est donc ( )/3 = IFT 615Froduald Kabanza 29

30 Approche par estimation directe Essais 1. (1,1) -.04 (1,2) -.04 (1,3) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (4,3) (1,1) -.04 (1,2) -.04 (1,3) -.04 (2,3) -.04 (3,3) -.04 (3,2) -.04 (3,3) -.04 (4,3) (1,1) -.04 (2,1) -.04 (3,1) -.04 (3,2) -.04 (4,2) -1 Lestimation directe ignore les liens entre les états: elle manque doccasion dapprentissage Par exemple, bien que lessai 1 dit rien sur (3,2), elle nous apprend que (3,3) a une valeur élevée On pourrait également déduire que (3,2) a une valeur élevée, puisque (3,2) est adjacent à (3,3) Autrement dit, on ignore les contraintes entre les utilités des états, telles que donnée par léquation U π (s) = R(s) + γ Σ s S P(s|s, π(s)) U π (s) IFT 615Froduald Kabanza 30

31 APPRENTISSAGE PASSIF Approche par programmation dynamique adaptative IFT 615Froduald Kabanza31

32 Approche par programmation dynamique adaptative Cest lidée derrière la programmation dynamique adaptative (PDA) tirer profit des équations de la fonction de valeur pour estimer U(s) Lapproche par PDA napprend 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: IFT 615Froduald Kabanza 32 P(s|s, a) = Σ essais Σ nb. de transitions de (s,a,s)dans lessai nb. de fois que laction a est choisi dans létat s dans lessai somme sur tous les essais

33 Approche par programmation dynamique adaptative IFT 615Froduald Kabanza 33 Fonction qui résout U π (s) = R(s) + γ Σ s S P(s|s, π(s)) U π (s)

34 Approche par programmation dynamique adaptative Exemple (avec état terminal) MDP à 3 états: S = {s 0, s 1, s 2 } Fonction de récompense: R(s 0 ) = -0.1, R(s 1 )= -0.1, R(s 2 ) = 1 Le facteur descompte est γ=0.5 s 2 est un état terminal, s 0 est létat initial Plan suivi: π(s 0 ) = a 1, π(s 1 ) = a 3 IFT 615Froduald Kabanza 34 a2a2 1 a1a1 0.2 a2a2 a4a a1a1 a2a2 s2s2 s1s1 s0s a3a3 a3a3

35 Approche par programmation dynamique adaptative Initialement, on suppose aucune connection entre les états IFT 615Froduald Kabanza 35 s2s2 s1s1 s0s0

36 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 U(s 0 ) = -0.1 U(s 1 ) = -0.1 U(s 2 ) = 1 IFT 615Froduald Kabanza 36 s2s2 s1s1 s0s0

37 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 (s 0 ) -0.1 U(s 0 ) = U(s 0 ) U(s 1 ) = -0.1 U(s 2 ) = 1 IFT 615Froduald Kabanza 37 s2s2 s1s1 s0s0 1/1 = 1 a1a1

38 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 U(s 0 ) = (0.5 U(s 0 ) U(s 1 ) ) U(s 1 ) = -0.1 U(s 2 ) = 1 IFT 615Froduald Kabanza 38 s2s2 s1s1 s0s0 1/2 a1a1 a1a1

39 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 U(s 0 ) = (0.5 U(s 0 ) U(s 1 ) ) U(s 1 ) = U(s 0 ) U(s 2 ) = 1 IFT 615Froduald Kabanza 39 s2s2 s1s1 s0s0 1/2 1/1 = 1 a1a1 a3a3 a1a1

40 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 U(s 0 ) = ( U(s 0 ) + U(s 1 ) ) U(s 1 ) = U(s 0 ) U(s 2 ) = 1 IFT 615Froduald Kabanza 40 s2s2 s1s1 s0s0 1/3 2/3 1/1 = 1 a1a1 a3a3 a1a1

41 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 2 ) 1 U(s 0 ) = ( U(s 0 ) + U(s 1 ) ) U(s 1 ) = (0.5 U(s 0 ) U(s 2 ) ) U(s 2 ) = 1 IFT 615Froduald Kabanza 41 s2s2 s1s1 s0s0 1/3 2/3 1/2 fin de lessai a1a1 a3a3 a3a3 a1a1

42 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 2 ) 1 U(s 0 ) = ( U(s 0 ) + U(s 1 ) ) U(s 1 ) = (0.5 U(s 0 ) U(s 2 ) ) U(s 2 ) = 1 IFT 615Froduald Kabanza 42 s2s2 s1s1 s0s0 1/3 2/3 1/2 fin de lessai À tout moment, on peut calculer les U(s) a1a1 a3a3 a3a3 a1a1

43 Approche par programmation dynamique adaptative On a vu comment résoudre le système déquations des U(s) dans le cours sur les MDP on peut écrire le système sous forme b = A x, et calculer x = A -1 b Cette opération peut être coûteuse à répéter après chaque observation inverser la matrice A est dans O(|S| 3 ) IFT 615Froduald Kabanza 43

44 Approche par programmation dynamique adaptative Approche alternative: méthode itérative, similaire à value iteration 1.Répéter (jusquà ce que le changement en V soit négligeable) I.pour chaque état s calculer: U(s) = R(s) + γ Σ s S P(s|s,π(s)) U(s) II.si |U- U| tolérance, quitter III. U U Plutôt quinitialiser U(s) à 0, on peut linitialiser à sa valeur précédente, avant la nouvelle observation une seule observation peut avoir un impact minime sur la nouvelle valeur de U(s) qui en résulte lapproche itérative + initialisation à la valeur précédente devrait donc converger rapidement IFT 615Froduald Kabanza 44 sans le max p/r à laction

45 Approche par programmation dynamique adaptative Approche alternative: méthode itérative, similaire à value iteration 1.Répéter (jusquà ce que le changement en V soit négligeable). I.pour chaque état s calculer: U(s) = R(s) + γ Σ s S P(s|s,π(s)) U(s) II.si |U - U| tolérance, quitter III. U U Autres accélérations borner le nombre ditérations (c.-à-d. ne pas attendre datteindre le seuil) balayage hiérarchisé (prioritized sweeping) »on garde un historique des changements |U(s)- V(s)| »on priorise les états s avec une grande valeur précédente de |U(s)- V(s)| Permet de résoudre des problèmes où |S| est beaucoup plus grands IFT 615Froduald Kabanza 45

46 Approche par programmation dynamique adaptative Contrairement à lestimation directe, lapproche par PDA peut apprendre après chaque observation, c.-à-d. après chaque transition dun essai pas besoin de compléter un essai pour obtenir une nouvelle estimation de U(s) Parfois, la fonction de récompense nest pas connue lagent ne fait quobserver la récompense à chaque état, et na pas accès directement à la fonction R(s) par contre on a besoin de R(s) dans les équations de la fonction de valeur dans ce cas, on initialise notre estimation R(s) à 0, et on la met à jour lorsquon atteint létat s pour la première fois IFT 615Froduald Kabanza 46

47 Approche par programmation dynamique adaptative IFT 615Froduald Kabanza 47

48 Approche par programmation dynamique adaptative Un problème avec lapproche par PDA est quon doit mettre à jour toutes les valeurs de U(s), pour tout s, après chaque observation très coûteux en pratique si le nombre détats est grand (ex.: exponentiel) inutile pour un état s qui nest pas atteignable via létat de la nouvelle observation On doit résoudre les équations de U(s) parce quon estime U(s) seulement indirectement, via notre estimation de P(s|s, a) Serait-il possible destimer directement U(s) et tenir compte des interactions entre les valeurs, sans avoir à passer par P(s|s, a)? IFT 615Froduald Kabanza 48

49 Apprentissage par différence temporelle Si la transition s à s avait lieu tout le temps, on sattendrait à ce que U(s) = R(s) + γ Σ s S P(s|s, π(s)) U(s) = R(s) + γ U(s) Plutôt que dattendre la fin de lessai pour mettre à jour notre estimation de U(s), on pourrait la rapprocher de R(s) + γ U(s): U(s) (1-α) U(s) + α (R(s) + γ U(s)) où α est un taux dapprentissage, entre 0 et 1 On obtient la règle dapprentissage par différence temporelle (temporal difference) ou TD U(s) U(s) + α ( R(s) + γ U(s) – U(s) ) IFT 615Froduald Kabanza 49

50 Apprentissage par différence temporelle IFT 615Froduald Kabanza 50 Utile si on veut varier le taux dapprentissage

51 Approche par programmation dynamique adaptative Exemple (avec état terminal) MDP à 3 états: S = {s 0, s 1, s 2 } Fonction de récompense: R(s 0 ) = -0.1, R(s 1 )= -0.1, R(s 2 ) = 1 Le facteur descompte est γ=0.5 s 2 est un état terminal, s 0 est létat initial Plan suivi: π(s 0 ) = a 1, π(s 1 ) = a 3 IFT 615Froduald Kabanza 51 a2a2 1 a1a1 0.2 a2a2 a4a a1a1 a2a2 s2s2 s1s1 s0s a3a3 a3a3

52 Apprentissage par différence temporelle Initialisation U(s 0 ) = 0 U(s 1 ) = 0 U(s 2 ) = 0 On va utiliser α = 0.1 IFT 615Froduald Kabanza 52 s2s2 s1s1 s0s0 si on connaît R(s), on peut tout initialiser U(s) à R(s)

53 Apprentissage par différence temporelle Observations: (s 0 ) -0.1 U(s 0 ) -0.1 U(s 1 ) = 0 U(s 2 ) = 0 On va utiliser α = 0.1 IFT 615Froduald Kabanza 53 s2s2 s1s1 s0s0 parce que s 0 est visité pour la première fois

54 Apprentissage par différence temporelle Observations: (s 0 ) -0.1 (s 0 ) -0.1 U(s 0 ) U(s 0 ) (R(s 0 ) U(s 0 ) - U(s 0 ) ) = ( ) = U(s 1 ) = 0 U(s 2 ) = 0 IFT 615Froduald Kabanza 54 s2s2 s1s1 s0s0 U(s) U(s) + α ( R(s) + γ U(s) – U(s) )

55 Apprentissage par différence temporelle Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 U(s 1 ) -0.1 U(s 0 ) U(s 0 ) (R(s 0 ) U(s 1 ) - U(s 0 ) ) = ( ) = U(s 1 ) = -0.1 U(s 2 ) = 0 IFT 615Froduald Kabanza 55 s2s2 s1s1 s0s0 parce que s 1 est visité pour la première fois U(s) U(s) + α ( R(s) + γ U(s) – U(s) )

56 Apprentissage par différence temporelle Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 U(s 0 ) = U(s 1 ) U(s 1 ) (R(s 1 ) U(s 0 ) - U(s 1 ) ) = ( ) = U(s 2 ) = 0 IFT 615Froduald Kabanza 56 s2s2 s1s1 s0s0 U(s) U(s) + α ( R(s) + γ U(s) – U(s) )

57 Apprentissage par différence temporelle Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 U(s 0 ) U(s 0 ) (R(s 0 ) U(s 1 ) - U(s 0 ) ) = ( ) = U(s 1 ) = U(s 2 ) = 0 IFT 615Froduald Kabanza 57 s2s2 s1s1 s0s0 U(s) U(s) + α ( R(s) + γ U(s) – U(s) )

58 Apprentissage par différence temporelle Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 2 ) 1 U(s 2 ) 1 U(s 0 ) = U(s 1 ) U(s 1 ) (R(s 1 ) U(s 2 ) - U(s 1 )) = ( ) = U(s 2 ) = 1 IFT 615Froduald Kabanza 58 s2s2 s1s1 s0s0 fin de lessai parce que s 2 est visité pour la première fois U(s) U(s) + α ( R(s) + γ U(s) – U(s) )

59 APPRENTISSAGE ACTIF IFT 615Froduald Kabanza59

60 Apprentissage par renforcement actif Dans le cas passif, le plan à suivre est pré-déterminé peu utile si on ne connaît pas le plan optimal à suivre Dans le cas actif, lagent doit aussi chercher le plan optimal lagent doit simultanément chercher le plan optimal et sa fonction de valeur U(s) est maintenant une estimation de la fonction de valeur du plan optimal Dans le cas PDA, deux changements sont à faire on applique value iteration au MDP estimé (afin de résoudre les équations pour la politique optimale) laction choisie par lagent devient π(s) = argmax Σ s S P(s|s,a) U(s) IFT 615Froduald Kabanza60 a A(s)

61 Appentissage actif avec PDA IFT 615Froduald Kabanza61 ACTIVE-GLOUTON argmax Σ s S P(s|s,a) U(s) a A(s) Résoudre système déquations U(s) = R(s) + max γ Σ s S P(s|s,a) U(s) Optimal-Policy(U,mdp)

62 Appentissage actif avec PDA Rappel de lexemple On a des actions possibles différentes, pour chaque état A(s 0 ) = {a 1, a 2 } A(s 1 ) = {a 2, a 3 } A(s 2 ) = {} IFT 615Froduald Kabanza 62 a2a2 1 a1a1 0.2 a2a2 0.8 a1a1 a2a2 s2s2 s1s1 s0s a3a3 a3a3

63 Approche par programmation dynamique adaptative Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 U(s 0 ) = max{ 0.5 U(s 0 ) U(s 1 ), 0 }U(s 0 ) = -0.1 U(s 1 ) = max{ 0, U(s 0 ) }U(s 1 ) = -0.1 U(s 2 ) = 1 U(s 2 ) = 1 Pour choisir quelle action prendre, on compare Σ s S P(s|s,a 2 ) U(s) = 0 (puisque P(s|s,a 2 ) pas appris encore pour a 2 ) Σ s S P(s|s,a 1 ) U(s) = 0.5 U(s 0 ) U(s 1 ) = -0.1 Laction choisie par lagent est donc a 2 IFT 615Froduald Kabanza 63 s2s2 s1s1 s0s0 1/2 1/1 = 1 a1a1 a3a3 a1a1 value iteration a1a1 a1a1 a3a3

64 Dilemme exploration vs. exploitation Lapproche précédente est dite vorace (gloutonne) elle met à jour le plan suivi par celui qui est optimal maintenant en dautres mots, elle exploite le plus possible linformation recueilli jusquà maintenant Les approches voraces trouvent rarement le plan optimal elles ne tiennent pas compte du fait que linformation accumulée jusquà maintenant est partielle en dautres mots, elles ne considèrent pas la possibilité dexplorer lenvironnement plus longuement, pour amasser plus dinformation sur celui-ci Un parallèle similaire existe entre le hill-climbing et le simulated annealing en recherche locale IFT 615Froduald Kabanza64

65 Dilemme exploration vs. exploitation Exemple: cas où laction « » na jamais été exécutée à létat (1,2) Lagent ne sait pas que ça mène à (1,3), qui mène à un chemin plus court! IFT 615Froduald Kabanza65 Courbe dapprentissage Plan découvert

66 Dilemme exploration vs. exploitation Trop exploiter mène à des plans non optimaux Trop explorer ralentit lapprentissage inutilement Trouver la balance optimale entre lexploration et lexploitation est un problème ouvert en général Des stratégies dexploration/exploitation optimales existent seulement dans des cas très simples voir le cas du n-armed bandit dans le livre, p. 841 IFT 615Froduald Kabanza66

67 Dilemme exploration vs. exploitation On se contente donc dheuristiques en pratique Exemple: introduction dune fonction dexploration f(u,n) cette fonction augmente artificiellement la récompense future dactions inexplorées Lapproche par PDA basée sur value iteration ferait les mises à jour U(s) = R(s) + max γ f( Σ s S P(s|s,a) U(s), N(s,a) ) où N(s,a) est le nombre de fois que laction a a été choisie à létat s et f(u,n) = Garantit que a sera choisie dans s au moins N e fois durant lapprentissage IFT 615Froduald Kabanza67 R + si n < N e usinon estimation optimiste de récompense future (hyper-paramètre)

68 Appentissage actif avec PDA IFT 615Froduald Kabanza68 ACTIVE argmax Σ s S P(s|s,a) U(s) a A(s) Résoudre système déquations R(s) + max γ f( Σ s S P(s|s,a) U(s), N(s,a) ) Optimal-Policy(U,mdp)

69 Apprentissage actif par différence temporelle Dans le cas de lapprentissage actif TD, la règle de mise à jour demeure la même que dans le cas de lapprentissage passif U(s) U(s) + α ( R(s) + γ U(s) – U(s) ) La différence entre TD passif et TD actif est au niveau du choix de laction. Le choix de laction dans TD actif se fait comme dans PDA actif IFT 615Froduald Kabanza69

70 Apprentissage actif avec Q-learning Il existe une variante de la méthode TD, nommée Q-learning, qui apprend la fonction action-valeur Q(s,a) on napprend plus U(s), soit la somme espérée des renforcements à partir de s jusquà la fin pour la politique optimale on apprend plutôt Q(s,a), soit la somme espérée des renforcements à partir de s et lexécution de a, jusquà la fin pour la politique optimale le lien entre Q(s,a) et U(s) est que U(s) = max Q(s,a) Le plan de lagent est alors π(s) = argmax Q(s,a) IFT 615Froduald Kabanza70 a

71 Apprentissage actif avec Q-learning Selon la définition de Q(s,a), on a Q(s,a) = R(s) + γ Σ s S P(s|s,a) max Q(s,a) Comme pour lapproche TD, on traduit cette équation en la mise à jour Q(s,a) Q(s,a) + α ( R(s) + γ max Q(s,a) – Q(s,a) ) On voit la similarité avec lapproche TD initiale U(s) U(s) + α ( R(s) + γ U(s) – U(s) ) IFT 615Froduald Kabanza71 a a

72 Apprentissage actif avec Q-learning Initialisation: Q(s 0,a 1 ) = 0Q(s 0,a 2 ) = 0 Q(s 1,a 2 ) = 0 Q(s 1,a 3 ) = 0 Q(s 2,None) = 0 On va utiliser α = 0.5, γ = 0.5 IFT 615Froduald Kabanza 72 s2s2 s1s1 s0s0

73 Apprentissage actif avec Q-learning Observations: (s 0 ) -0.1 On ne fait rien (on a besoin dun triplet (s, a, s) ) Action à prendre π(s 0 ) = argmax{ Q(s 0,a 1 ), Q(s 0,a 2 ) } = argmax{ 0, 0 } = a 2 (arbitraire, ça aurait aussi pu être a 1 ) IFT 615Froduald Kabanza 73 s2s2 s1s1 s0s0

74 Apprentissage actif avec Q-learning Observations: (s 0 ) -0.1 (s 0 ) -0.1 Q(s 0,a 2 ) Q(s 0,a 2 ) + α ( R(s 0 ) + γ max{ Q(s 0,a 1 ), Q(s 0,a 2 )} - Q(s 0,a 2 ) ) = ( max{ 0, 0} - 0) = Action à prendre π(s 0 ) = argmax{ Q(s 0,a 1 ), Q(s 0,a 2 ) } = argmax{ 0, -0,05 } = a 1 (changement de politique!) IFT 615Froduald Kabanza 74 a2a2 a2a2 s2s2 s1s1 s0s0

75 Apprentissage actif avec Q-learning Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 Q(s 0,a 1 ) Q(s 0,a 1 ) + α ( R(s 0 ) + γ max{ Q(s 1,a 2 ), Q(s 1,a 3 )} - Q(s 0,a 1 ) ) = ( max{ 0, 0} - 0) = Action à prendre π(s 1 ) = argmax{ Q(s 1,a 2 ), Q(s 1,a 3 ) } = argmax{ 0, 0 } = a 2 (arbitraire, ça aurait aussi pu être a 3 ) IFT 615Froduald Kabanza 75 a2a2 a1a1 a1a1 s2s2 s1s1 s0s0

76 Apprentissage actif avec Q-learning Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 Q(s 1,a 2 ) Q(s 1,a 2 ) + α ( R(s 1 ) + γ max{ Q(s 0,a 1 ), Q(s 0,a 1 )} - Q(s 1,a 2 ) ) = ( max{ -0.05, -0.05} + 0) = Action à prendre π(s 0 ) = argmax{ Q(s 0,a 1 ), Q(s 0,a 1 ) } = argmax{ -0.05, } = a 1 (arbitraire, ça aurait aussi pu être a 2 ) IFT 615Froduald Kabanza 76 a2a2 a1a1 a2a2 a2a2 s2s2 s1s1 s0s0

77 Apprentissage actif avec Q-learning Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 Q(s 0,a 1 ) Q(s 0,a 1 ) + α ( R(s 0 ) + γ max{ Q(s 1,a 2 ), Q(s 1,a 3 )} - Q(s 0,a 1 ) ) = ( max{ , 0 } ) = Action à prendre π(s 1 ) = argmax{ Q(s 1,a 2 ), Q(s 1,a 3 ) } = argmax{ , 0 } = a 3 (changement de politique!) IFT 615Froduald Kabanza 77 a1a1 a2a2 a1a1 a3a3 a1a1 s2s2 s1s1 s0s0

78 Apprentissage actif avec Q-learning Observations: (s 0 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 0 ) -0.1 (s 1 ) -0.1 (s 2 ) 1 État terminal: Q(s 2,None) = 1 Q(s 1,a 3 ) Q(s 1,a 3 ) + α ( R(s 1 ) + γ max{ Q(s 2,None) } - Q(s 1,a 3 ) ) = ( max{ 1 } + 0) = 0.2 On recommence un nouvel essai... IFT 615Froduald Kabanza 78 a3a3 a2a2 a1a1 a3a3 a1a1 s2s2 s1s1 s0s0 a3a3

79 Apprentissage actif avec Q-learning Supposons quon puisse aussi faire laction a 4 à létat s 1, pour mener à s 3 tel que R(s 3 ) = 1000 Puisque Q(s 1,a 4 ) = 0 à linitialisation, et que Q(s 1,a 3 ) > 0 après un essai, une approche vorace nexplorera jamais s 3 ! Demo: IFT 615Froduald Kabanza 79 s2s2 s1s1 s0s0 s3s3 ? a4a4

80 Généralisation à laide dapproximateur de fonction Dans des applications réelles, on ne peut visiter tous les états Trop détats à visiter dans les essaies dapprentissage Mémoire limitées pour enregistrer les valeurs Q(s,a) correspondant Par contre, on peut généraliser en utilisant un représentants les caractéristiques (features) des états plutôt que les états eux-mêmes: Apprendre les caractéristiques des états à partir des échantillons dentrainement. Généraliser aux états similaires 80

81 Exemple: Pacman Supposons que nous apprenons durant les essais que cet état est mauvais (U(s) trop bas). Avec lapproche Q-Learning naïve telle que décrite, on ne peut rien déduire de cet état ou de sa valeur Q: Pas plus que pour celui-ci! 81

82 Approximateur de fonction ( représentation des états basés sur leurs caractéristiques ) Décrire un état en utilisant un vecteur de caractéristiques Les caractéristiques sont des fonctions réelles (souvent 0/1) qui capturent les propriétés saillants des états Exemples de caractéristiques: »Distance au fantôme le plus proche »Distance à la nourriture la plus proche »Nombre de fantômes »1 / (distance à la nourriture) 2 »Pacman proche dun fantôme ? (0/1) »etc. Peut aussi décrire un état-Q (s, a) avec des caractéristiques (ex. laction permet met pacman de la nourriture) 82

83 Approximateur de fonction linéaire 83

84 Conclusion Lapprentissage par renforcement permet dapprendre dans un environnement séquentiel lapprentissage supervisé souvent limité aux environnements périodiques Cest un domaine de recherche très actif il y a de plus en plus dapplications impressionnantes mais nous sommes loin dune IA réelle Lapprentissage par renforcement est plus difficile lorsque la récompense est lointaine (ex.: à la toute fin dune partie) problème dassignation de crédit (credit assignment) »est-ce que ma victoire est due à mon premier coup? mon dernier? les deux? on ajoute parfois des renforcements positifs intermédiaires appropriés »désavantage: demande de lexpertise IFT 615Froduald Kabanza84

85 Objectifs du cours IFT 615Froduald Kabanza85 agents intelligents agents intelligents recherche heuristique recherche heuristique recherche locale recherche à deux adversaires recherche à deux adversaires satisfaction de contraintes satisfaction de contraintes Algorithmes et concepts raisonnement probabiliste raisonnement probabiliste processus de décision markovien processus de décision markovien apprentissage par renforcement apprentissage par renforcement

86 Apprentissage par renforcement: pour quel type dagent? IFT 615Froduald Kabanza86 Simple reflex Model-based reflex Goal-based Utiliy-based Actif Passif

87 Vous devriez être capable de... Distinguer lapprentissage par renforcement passif vs. actif Algorithmes passifs: savoir simuler lestimation directe savoir simuler la programmation dynamique adaptative (PDA) savoir simuler la différence temporelle (TD) Algorithmes actifs savoir simuler PDA actif savoir simuler Q-learning Savoir comment on traite le dilemme exploration vs. exploitation IFT 615Froduald Kabanza87


Télécharger ppt "IFT 615 – Intelligence artificielle Apprentissage par renforcement Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift615."

Présentations similaires


Annonces Google