WEBVTT

00:00.610 --> 00:03.190
Bonjour et bienvenue dans ce tutoriel sur Python.

00:03.190 --> 00:09.460
Faisons donc cette boucle en partant de la droite vers la gauche et pour ce faire

00:09.460 --> 00:11.900
nous allons en ajouter quatre

00:11.920 --> 00:17.980
Il s’agit donc d’un VAR itératif qui allait être notre étape car nous allons passer de la dernière

00:17.980 --> 00:21.590
étape à la première étape d’une série de transitions, etc.

00:21.960 --> 00:29.850
Et puis le truc pour aller de droite à gauche est d'utiliser pour pas à pas inversé.

00:30.160 --> 00:35.300
Et maintenant, nous avons juste besoin de saisir une séquence et cette séquence sera bien sûr notre série.

00:35.380 --> 00:41.790
Nous pouvons donc mettre notre série, mais comme vous pouvez le constater dans le document, nous passons de T moins 1 au début.

00:41.950 --> 00:47.760
Donc, nous n'allons pas de la dernière étape qui est la phase terminale mais de l'étape précédente qui consiste à

00:47.800 --> 00:50.380
moins un, mais commencer c'est la première étape.

00:50.430 --> 00:59.090
Et donc, ici, pour ne pas franchir cette étape, nous devons ajouter entre parenthèses la colonne moins un.

00:59.380 --> 01:04.270
Je suis sûr que pour ceux d'entre vous qui ont suivi l'apprentissage de la machine

01:04.560 --> 01:11.050
dans un cours plus approfondi, vous connaissez cette astuce Kollin moins un signifie que vous montez l'élément avant le dernier

01:11.050 --> 01:14.740
élément mais pas jusqu'au dernier la séquence que nous voulons.

01:14.860 --> 01:20.890
C'est ce que nous allons passer de l'élément avant le dernier élément au premier élément et faire les choses

01:20.890 --> 01:23.900
en sens inverse pour aller de droite à gauche.

01:24.160 --> 01:26.810
Très bien, nous sommes prêts à entrer dans la boucle for.

01:27.170 --> 01:29.740
Et donc dans cette boucle pour ce que nous allons faire.

01:29.780 --> 01:32.870
Où allons-nous faire exactement comme dans le papier.

01:32.900 --> 01:39.340
Nous allons mettre à jour la récompense cumulée en la multipliant par le Ghana et en ajoutant le mot atteint dans

01:39.400 --> 01:42.500
l'étape en cours qui est dans l'étape de suivi.

01:42.670 --> 01:45.450
Très bien, faisons cela depuis Python.

01:45.590 --> 01:57.780
Et si nous voulons mettre à jour notre cumul, nous travaillons de la manière suivante en multipliant d’abord son par gamma.

01:57.780 --> 01:58.580
Nous y voilà.

01:58.660 --> 02:07.910
Ici, nous le multiplions par gamma et nous voulons ensuite ajouter la récompense de ce à quoi nous pouvons accéder de cette manière avec

02:07.970 --> 02:09.420
la structure spéciale.

02:09.450 --> 02:13.120
Rappelez-vous que le mot est un attribut de l'objet.

02:13.130 --> 02:15.910
Et donc ici bien sûr nous ajoutons un plus.

02:16.020 --> 02:17.330
D'accord, c'est une récompense cumulative.

02:17.450 --> 02:19.310
Égaux voulons-nous cette étape.

02:19.370 --> 02:25.620
Nous sommes actuellement dans la boucle plus Gahanna fois la récompense cumulée précédente avant qu’elle ne soit un.

02:26.150 --> 02:26.870
Parfait.

02:26.870 --> 02:28.190
Alors maintenant, je pense que nous sommes bons.

02:28.220 --> 02:30.180
Nous suivons à la lettre l'algorithme.

02:30.500 --> 02:32.600
Et maintenant, place aux prochaines étapes.

02:32.840 --> 02:35.090
Eh bien maintenant, ça va devenir assez facile.

02:35.090 --> 02:40.880
Nous revenons au premier suivi parce que cette boucle for consiste simplement à calculer la récompense cumulative sans aller de

02:41.060 --> 02:44.010
droite à gauche en mettant à jour de cette façon.

02:44.030 --> 02:50.930
En suivant l'algorithme et maintenant, comme vous vous en souvenez, l'objectif est de préparer nos entrées et nos objectifs pour

02:50.930 --> 02:55.950
que nous puissions minimiser la différence au carré entre les deux pour la formation.

02:55.950 --> 03:01.020
Et donc pour le moment, la seule chose que nous devons faire est de préparer ces entrées et les toilettes sont prêtes.

03:01.220 --> 03:08.410
Faisons donc ceci en premier. Ce que nous devons faire est d’ajouter la première date de la série dans notre liste de pièces.

03:08.510 --> 03:11.460
Jusqu'à présent, cet état fait partie de notre objectif.

03:11.480 --> 03:14.100
C'était juste pour calculer la sortie.

03:14.270 --> 03:19.370
Nous allons donc obtenir cet état d'entrée de la première étape séparément car c'est exactement ce dont

03:19.370 --> 03:21.320
nous avons besoin dans notre liste.

03:21.380 --> 03:23.340
Alors obtenons ceci séparément.

03:23.360 --> 03:25.910
Par conséquent, nous allons appeler cela un état.

03:26.000 --> 03:32.930
Et exactement comme ici, nous pouvons le comprendre de cette façon en prenant le premier index de la série qui contient

03:32.930 --> 03:38.300
la première transition et en ajoutant ensuite cet état pour obtenir l'état de cette première transition.

03:38.330 --> 03:44.390
C’est donc le site dont nous avons besoin pour indiquer ensuite que nous obtiendrons séparément les cibles associées à

03:44.840 --> 03:46.830
cette étape de la transition.

03:46.880 --> 03:53.450
Et donc une nouvelle variable intéressante ici cible qui sera égale à la valeur de la première étape.

03:53.540 --> 03:59.990
Et puisque la valeur Q est renvoyée par le réseau de neurones, son contenu et sa sortie et que

04:00.070 --> 04:07.370
les sorties sont la sortie associée à cette entrée qui contient bien la première de la transition, nous pouvons obtenir cette

04:07.370 --> 04:12.830
valeur q de la première date en prenant simplement la sortie en prenant l'indice zéro.

04:13.100 --> 04:20.630
Et ensuite, nous ajoutons ces données qui nous obtiendront simplement la valeur Q de l'état d'entrée de la première transition et

04:21.050 --> 04:22.310
c'est exactement l'heure.

04:22.320 --> 04:30.080
Q Donc, de cette manière, nous allons mettre à jour cette variable cible, mais uniquement pour l'action sélectionnée lors de

04:30.080 --> 04:35.680
la première étape de la série et pour accéder à cette première étape.

04:35.870 --> 04:42.710
Nous devons prendre la première série 0, car c’est exactement la première étape d’une série 3 0.

04:42.970 --> 04:50.290
Et pour accéder à l'action correspondant à cette première étape de la série, nous devons ajouter ici cette action qui

04:50.380 --> 04:57.340
correspond à cette structure d'attribut que nous utilisons, vous savez que l'action est un attribut de la première

04:57.340 --> 04:58.900
étape de la série.

04:58.900 --> 05:04.570
Il s’agit de la première transition de la série car chaque transition de la série

05:04.720 --> 05:11.350
a le mot d’action état suivant: elle est exécutée. Ainsi, action ici cette action attribut signifie ici que nous

05:11.500 --> 05:14.150
obtenons simplement l’action de cette première date.

05:14.330 --> 05:21.320
La cible de cette action spécifique de la première étape est donc exactement ce qui doit être mis à jour

05:21.410 --> 05:22.850
par la communauté mondiale.

05:22.850 --> 05:29.490
Donc, fondamentalement, ici, nous allons simplement écrire cette cible associée à l'action qui a été jouée.

05:29.630 --> 05:35.810
La première étape de la série est cette récompense cumulative que nous venons de calculer.

05:36.130 --> 05:44.780
Très bien et maintenant nous sommes enfin prêts à mettre à jour notre contribution en ajoutant ce premier séjour ici et ce premier est

05:44.780 --> 05:46.770
là pour la première heure.

05:46.970 --> 05:53.090
Nous avons seulement besoin de mettre à jour la première étape de la série car vous savez que nous entraînons l'IA sur 10 étapes.

05:53.090 --> 05:56.000
Par conséquent, l'entrée est la première étape des dix étapes.

05:56.180 --> 06:01.400
Et nous obtenons également la cible dans cette première étape, mais nous n’obtenons aucune entrée ni aucune toilette

06:01.400 --> 06:06.310
dans les étapes suivantes des 10 étapes car, fondamentalement, l’apprentissage se fait par 10 étapes.

06:06.500 --> 06:11.380
C’est pourquoi, pour le moment, nous n’obtenons que l’état et la cible de la première étape de la série.

06:11.840 --> 06:16.820
Il est donc important de comprendre cela et donc, si nous comprenons que nous comprenons maintenant que

06:16.820 --> 06:20.590
nous devons les entrer dans notre liste d’entrées et notre liste d’objectifs.

06:20.660 --> 06:21.560
Alors faisons ceci.

06:21.560 --> 06:25.140
Premièrement, annexons les états à nos entrées.

06:25.190 --> 06:33.680
Donc, nous prenons notre liste d'entrées et nous utilisons la fonction append pour ajouter l'état qui rappelle l'état d'entrée de la première

06:33.680 --> 06:41.030
étape de la série, puis nous allons ajouter la cible à la première étape à notre liste d'objectifs et

06:41.120 --> 06:47.270
le faire nous prenons notre liste de cibles et disons que nous utilisons la fonction append

06:47.270 --> 06:49.460
pour annexer cette première cible.

06:49.490 --> 06:50.360
Nous y voilà.

06:50.540 --> 06:56.750
Nous avons presque terminé et nous devons maintenant renvoyer les dernières choses qui sont bien sûr ce dont nous avions besoin, comme nous

06:56.840 --> 07:01.760
l'avons dit au début de ce didacticiel, les entrées et les objectifs qui sont maintenant mis à jour.

07:02.090 --> 07:07.580
Nous allons donc ajouter ici à chaque tour et obtenir nos entrées d’abord,

07:07.580 --> 07:14.660
mais c’est ensuite que nous devrons les convertir en un tableau de nombres puis faire une conversion de type

07:14.660 --> 07:21.710
pour nous assurer que nous avons un type unique avec vous égale et qui flotte 32 le même.

07:21.890 --> 07:28.520
Et ensuite, nous convertissons cela en tenseur de la flamme, car nous travaillons bien sûr avec une torche

07:28.730 --> 07:29.540
totalement obligatoire.

07:29.570 --> 07:36.040
Et donc j'utilise à nouveau le flambeau d'une fonction non thaïlandaise.

07:37.180 --> 07:39.000
Et cela nous donne nos intrants.

07:39.130 --> 07:39.590
Parfait.

07:39.590 --> 07:42.460
Et maintenant, faisons la même chose pour les cibles.

07:42.520 --> 07:44.620
Maintenant, nous pouvons utiliser cette astuce qui est plus rapide.

07:44.710 --> 07:50.950
Nous allons empiler les cibles ensemble et pour cela, nous devons commencer par notre

07:50.950 --> 07:57.230
bibliothèque de flambeaux, car nous allons utiliser la fonction stack par flambeau pour empiler les cibles.

07:57.250 --> 07:57.550
D'accord.

07:57.550 --> 08:04.030
Et donc cette ligne de code renvoie essentiellement les entrées et les toilettes qui viennent d'être mises à

08:04.030 --> 08:07.100
jour via cet algorithme de trace d'éligibilité Sarsour.

08:07.180 --> 08:10.710
Ou nous pouvons l'appeler et intervenir et envoyer nos félicitations.

08:10.780 --> 08:16.540
Nous étions prêts à effectuer la formation finale parce que, fondamentalement, la formation consiste à minimiser

08:16.540 --> 08:20.950
les différences carrées entre les prévisions de nos entrées et des toilettes.

08:21.160 --> 08:22.870
Alors, soyons intelligents.

08:22.870 --> 08:25.150
Il deviendra intelligent et le prochain son.

08:25.210 --> 08:26.980
Et jusque-là, profitez de l'IA.
