et bonjour bonsoir tout le monde j'espère que vous allez bien on est parti ce soir pour voir ensemble la deuxème partie de la carte de Lia regardez ça comme elle est belle on s'est vu ensemble vendredi ah c'était la folie vous étiez incroyable vous étiez plus de 1700 en simultané ah oui oui oui oui vous allez bien bonsoir bonsoir tout le monde oui oui je vous vois dans le chat vous en faites pas il y AEL quelqu'un qui a dit qu'il venait du Mexique je trouve ça absolument incroyable dites-moi dans le chat d'où vous venez
c'est parce que le Mexique c'est c'est quandme c'est quand même loin quoi je sais pas exactement quelle heure il est chez lui mais chez lui c'est pas le soir donc il y a tout le monde qui dit bonsoir bref racontez-moi tout ça dans le chat moi je vais vous rappeler en effet où est-ce qu'on s'en était arrêté la dernière fois alors on avait vu ensemble tout le monde des algorithmes ou des modèles plutôt paramétriques et non paramétriques sur ce sur ce schéma et puis on avait tellement tellement été nombreux et et dans un tel dans
une telle folie que j'ai pas vu le temps passer moi parce que je pensais qu'on arriverait à faire tout ça en en une heure mais bon apparemment je me suis complètement trompé il nous fallait une heure de plus donc c'est ce qu'on va faire ensemble ce soir on va découvrir la deuxième moitié de cette carte al ou je vois je vois beaucoup de gens euh Maroc Paris France Sénégal Sénégal Algérie ah bah ça me fait très plaisir quelqu'un de Nantes ah oui oui bah ça c'est pas loin de là où je viens moi je viens
de de Strasbourg à la base euh non Nant non ben non je confonds je confonds Nantes et NANC moi bref écoutez je suis extrêmement chaud et heureux d'être là comme vous pouvez le constater mais on va pas perdre de temps puisque on a beaucoup de choses à faire ensemble ce soir mais vous savez quoi avant juste avant juste avant qu'on se lance il y a une chose que j'ai constaté lors du dernier live de vendredi c'est que vous étiez quand même un certain nombre à me découvrir et oui parce que ça fait longtemps que je
n'ai pas sorti de vidéo sur Youtube donc une petite présentation s'impose n'est-ce pas pour ceux qui ne me connaîtrai pas donc je m'appelle Guillaume ou je pense que beaucoup de gens le savent déjà ça et je vis en réalité au Royaume-Uni donc je trouve ça intéressant de savoir d'où est-ce que vous venez euh voilà il y a quelqu'un qui dit qu'il vient de Londres dans le chat et bien moi je vis depuis 10 ans au Royaume-Uni depuis 2014 c'est là que j'ai commencé mon mon premier job de machine learning euh j'ai vécu des moments absolument
géniaux dans ma carrière de Data scientist donc mon job à moi c'est vraiment de créer des algorithmes un petit peu aujourd'hui comme ceux qui font tourner les modèles comme chat GPT voilà je fais je travaille sur D LLM et tout ce genre de choses et vous voyez un petit peu ici qu'est-ce qui m ce qui m'est arrivé durant les les 10 dernières années donc j'ai travaillé très longtemps en en recherche et développement dans l'Aérospatial et puis ensuite j'ai travaillé dans des start-ups en 2019 j'ai créé la chaîne Youtube machine lornia euh il y en a
un certain nombre ici qui euh qui connaissent depuis le début hein comme on l'a pu euh comme on a pu le constater euh vendredi pas hier soir mais vendredi soir et euh depuis depuis quelques temps j'ai aussi créé ma propre entreprise dans lequelle je vis dans laquelle je vis des des aventures absolument géniales c'est aussi pour cette raison que j'ai pas été vraiment présent depuis ces derniers temps j'étais tell ement occupé par par toutes les T tous les projets tous les produits qu'on a développé mais il est temps que je revienne pour vous raconter tout
ça donc voilà comme ça les présentations sont faites vous me connaissez un petit peu mieux ainsi que ma carrière mais maintenant on va on va passer au vif du sujet ce qui nous intéresse vraiment ce soir c'est ce tour d'horizon de l'intelligence artificielle qu'on a là hop donc la dernière fois on avait vu ensemble les modèles linéaaires les modèles baesiens les arbres les modèles ensemblistes la réduction de dimension les niras neighbor le clustering les support vecteur machines et les modèles d'autorégression ce qu'on va voir ensemble ce soir c'est ce qui se cache sous cette deuxième
partie la partie bleue et vous avez déjà un indice là-haut ce sont tous les modèles qui qui sont des déclinaisons des réseaux de neurones artificiels les neural networks alors c'est parti on va commencer par déballer le paquet qu'on a ici au centre Booum qu'est-ce qu'on a là et bien on a la base des artificial neural networks Ann qu'on peut aussi appeler fit forward neural network alors c ces types de modèles ils sont en fait assez vieux puisque leur origine vient de 1943 grâce à ces deux scientifiques Walter Pitz et Warren Melock que je présente sur
la chaîne YouTube dans une vidéo que vous êtes un certain nombre à connaître puisqu'elle a quand même 1 million vue et dans cette dans cette dans cette période de de l'histoire 1943 et bien Walter Pitz et Warren Melock ont sont venus en réalité avec le concept même du du réseau de neurone comment est-ce qu'on peut tenter de modéliser le fonctionnement d'un neurone biologique en considérant qu'en fait un neurone biologique c'est un ensemble d'entrées et puis au milieu il se passe quelque chose et puis après le tout est envoyé vers d'autres neurones bah ils se sont
dit on va créer une fonction voilà qui prend des entrées qui fait une sorte de calcul et qui envoie ce calcul vers le reste du réseau et ce qu'il était ce qui s'était rendu compte à l'époque dans leur article que je présente dans dans ma vidéo Youtube c'est que en enchaînant comme ça plusieurs neurones les uns avec les autres et ben on était capable de modéliser presque n'importe quel problème c'est ce qui c'était dit en tout cas dans leur papier d'origine alors ça a donné suite à travers le temps à un un autre modèle extrêmement
connu celui du perceptron créé par frankck rosenblat en 1957 donc on fait quand même un bon de pas mal d'années hein là plus de 10 ans alors le perceptron c'est en fait la la continuité du modèle de Warren mellock et Walter Pitz puisque Frank Ronen blat qui n'était pas vraiment un mathématicien ou un un un un informaticien si à l'époque vous savez on travaille sur des très gros ordinateurs donc on peut pas vraiment parler de de développeur en fait Frank rosenblad c'était un un quelqu'un qui travaillait en tant que psychanalyste ou psych euh non euh
psychologue enfin il étudiait le cerveau je sais plus s'il était psychanalyste ou psychologue euh quelque chose comme ça et il s'était dit qu'en fait une façon assez convenable de modéliser ou d'affiner le le modèle de Walter pits et de Warren mckelock c'était d'y rajouter une fonction échelon en tant que fonction d'activation ici euh en deuxième partie de la partie qui va faire l'agrégation des entrées qui est ici en fait un modèle linéaire comme celui qu'on a vu dans le live de vendredi soir vous voyez ici là on a un modèle linéaire et bien on s'était
dit avec euh Fran euh Franck rossenvlat enfin on s'était dit moi j'étais pas allé avec lui hein mais Frank rosenblat et et son équipe s'était dit qu'en passant le résultat de cette fonction linéaire dans une fonction échelon et bien on pouvait activer ou désactiver un neurone et cet algorithme a connu quand même un un petit succès jusqu'à ce qu'on se rende compte quelques années plus tard qu'il était pas capable de résoudre des problèmes assez simples en fin de compte les problèmes Exor donc les les problèmes de porte de ou exclusif mais c'est la raison pour
laquelle on a eu un un donc un hiver c'est-à-dire un une très longue période d'inactivité dans la dans dans l'histoire de Lya jusqu'à la création du perceptron multicouche par Jeff qui est encore encore vivant aujourd'hui et il travaille toujours c'est c'est c'est en fait le père du Deep learning vraiment et et le le le père de toute l'ya moderne que l'on a aujourd'hui on lui doit énormément à Jeff Hinton et donc ce qu'il a créé c'est une version améliorée du perceptron dans laquelle il rassemblait comme ça plusieurs couches ensemble alors je dis il il faut
quand même donner crédit à toutes les personnes qui ont travaillé avec lui donc lui et son équipe sont venus avec une version améliorée de ce modèle dans laquelle bien on voit ici le fonctionnement si vous avez deux variables X1 et X2 avec un jeux de données qui qui sont représenté dans ce graphique et bien vous fournissez ces variables en entrée du réseau de neurone dans lesquel vous allez créer des copies de ce modèle de perceptron et puis les données X1 et X2 vont rentrer à chaque fois dans une cellule dans laquelle vous allez faire donc
l'agrégation linéaire des entrées comme ce qu'on a vu jusqu'à présent puis vous allez avoir une fonction d'activation qui n'est pas nécessairement la la fonction d'activation échelon qu'avait utilisé Frank rosenblat et puis l'information va ainsi circuler de gauche à droite dans le réseau de neuron jusqu'à produire une réponse une sortie par exemple la courbe orange ici qui a pour but en réalité en réalité de de séparer ces deux ces deux classes de POS donc là on a des carrés et des ronds bon apparemment elle fait pas un très bon job alors actuelle la courbe hein n
on préférerait peut-être avoir une courbe qui ressemble à ça voilà euh qui permet de séparer ces deux espaces et pour ça donc on va avoir un algorithme de Back propagation qui va permettre de comprendre comment régler touses les petites euh paramètres tous les petits paramètres que l'on a dans les neurones de notre réseau de neuron alors ça c'est un algorithme assez compliqué on peut pas l'expliquer comme ça en 2 minutes mais c'est la raison pour laquelle j'avais fait une vidéo à ce sujet que vous retrouverez sur ma chaîne YouTube dans la série de Deep learning
que vous êtes un un certain nombre à connaître donc on a là vraiment le l'algorithme de base qui va poser vraiment la la structure de tout ce qui de tout ce qui existe aujourd'hui tout ce qui existe aujourd'hui on va le voir dans ce live repose sur cette architecture il y a des chos qui englobent C architecture vous allez la voir mais cette architecture là vous allez la retrouver dans tout ce qu'on va voir ensemble dans l'heure qui suit donc c'est vraiment celle qui pose le la base quoi pour moi c'est c'est magnifique ce ce
réseau de neurone alors dedans on peut trouver plusieurs fonctions d'activation celle qui était utilisée à la base par Frank rosenblat c'est la fonction échelon qu'on a là mais à l'époque de l'invention du percepon multicouche Jeff Hinton avait compris que la fonction échelon n'était pas une fonction qui permettait en réalité d'apprendre au réseau de neurone en utilisant une descente de gradient euh stochastique pourquoi et bien parce qu'en réalité on a dans dans cette fonction échelon lorsqu'on veut calculer des dérivées là je je rentre dans des termes excusez-moi lorsqu'on veut calculer des dérivées afin de comprendre où
est-ce qu'il faut aller pour minimiser notre fonction coût bah ces dérivées sont en réalité Nules puisque la fonction échelon est constamment euh horizontal pour utiliser des termes de de de très grande vulgarisation donc donc aujourd'hui on utilise beaucoup d'autres fonctions d'activation en rité on utilise plus du tout cette fonction échelon parmi elles on utilise la fonction sigmoïde lorsqu'on cherche à résoudre des problèmes de classification binaire on peut utiliser la fonction rectified linear unit ou c'est déclinaisons qui est extrêmement populaire dans beaucoup de domaines la fonction tangente hyperbolique elle aussi très très utile notamment pour les
réseaux de neurones récurrents la fonction soft max lorsqu'on veut résoudre des problèmes de classification non binaire c'est-à-dire avec plusieurs plusieurs classes il y en a vraiment tout un tas ici je donne les les plus fréquentes que vous êtes sans doute un certain nombre à connaître si vous avez déjà fait du Deep learning et dans le monde des réseaux de neuron artificiel dans cette dernière grande petite bulle ce qu'on peut bien sûr dire c'est qu'il existe d'autres algorithme d'optimisation que simplement la descente de gradient qu'on a pu voir ensemble dans le premier live puisqueen réalité cette
descente de gradient elle peut-être décliné en différentes petites familles par exemple on a la famille Adam ou le type de dessin de gradient Adam qui pour faire simple consiste à faire des grands pas au tout début avec un concept qu'on appelle le momentum et qui ralentit au fur à mesure que l'on s'approche du minimum celui qu'on recherche et dans la même idée un petit peu on a un autre algorithme qui s'appelle l'algorithme du RMS prop dans laquelle la taille des pas s'adapte vraiment avec la pente c'est un petit peu comme si vous dévalez une montagne
et plus ça descend plus ça descend fort bah plus vous allez descendre vite et plus c'est plat bah moins vite vous allez descendre c'est c'est un petit peu ça l'idée hein là c'est c'est vraiment vulgarisé de manière très très générale mais ça vous permet de comprendre un petit peu ces deux grandes familles d'algorithmes alors avec ça on a découvert ce que sont les Ann qui sont vraiment comme je viens de vous le dire la la pierre angulaire le le les fondations de tout ce qui existe aujourd'hui alors je vous propose tout de suite de voir
de voir de voir de voir le deuxième paquet qu'on a là-dedans qui est en réalité les réseaux de neurones convolutionnels les CNN alors les CNN c'est une architecture de réseaux de neuron qui vous permet de travailler sur tout ce qui concerne la le traitement d'image le traitement de vidéo et ce genre de choses alors la base l'idée de base c'est la suivante quand on a une image ici on a plein de pixels dans une image et ces pixels sont des nombres donc ils sont ils peuvent être représ par des variables X1 X2 X3 alors il
y a très longtemps on pouvait se dire bah on va donner ces ces variables ici en entré X1 X2 X3 X4 X5 et cetera et cetera sauf qu'en faisant ça et bien on ne donne aucune structure en entrée de notre réseau de neurone en soit c'est comme si le pixel X1 et le pixel qui est ici tout au bout là et bien ils étaient l' à côté de l'autre ce qui n'est pas le cas c'est pas le cas ces pixels ont une structure il y a une sorte de d'ordre de séquence donc c'est là qui'est
venue l'idée des CNN dans lesqueles on va traiter ces pixels par groupe afin d'en tirer quelque chose d'intéressant et voici en clair l'idée derrière les réseaux de neurones à convolution dans lesquels on retrouve deux grands types d'opérations les les convolutions et les opérations de pooling alors pour bien comprendre ce qu'elle représente une convolution c'est un petit peu comme si on appliquait un filtre sur une image un filtre qui va détecter des angles des des contours tout ce genre de choses l'idée de base c'est la suivante donc on prend notre image on y applique un filtre
qu'on appelle aussi un kernel ou un noyau donc là vous avez un exemple de filtre vertical c'est-à-dire qu'il va prendre votre image ici et il va en ressortir toutes les toutes les lignes tous les éléments verticaux de cette image voilà alors il y a aussi des filtres horizontaux il y a des filtres vraiment de tout type vous pouvez en avoir autant que votre imagination peut aller mais l'idée principale de l'IA ou du machine learning c'est de laisser la machine c'est de laisser votre programme trouver lui-même quels sont les filtres les plus pratiques pour faire son
opération qu'on lui demande de faire par exemple si on lui dit tiens voici une base de données avec plein de photos de chien et toi ce que tu dois trouver c'est si c'est un chien ou non donc là par exemple il nous dit oui oui c'est un chien à 98 % et bien il va lui-même trouver quels sont les filtres les plus intéressants à apprendre à l'intérieur de ça pour faciliter son travail d'apprentissage donc ça c'est le principe de la convolution et après un autre principe qui est très important c'est celui du pooling dans lequel
et bien on va découper le notre image en en section en zone encore une fois et il y a deux types vraiment de pooling le max pooling et le average pooling dans lequel soit on va prendre le maximum voilà le maximum de ces quatre nombres c'est TR B bah on résume cette ce bloc de quat pixels en un seul pixel dans lequel on dit 3 ou alors on peut prendre la moyenne de tous ces pixels donc ici euh on a 6 / 4 ça nous donne 1,5 voilà donc on résume ces quatre blocs en un
seul en disant que ça vaut 1,5 ce qui est absolument génial c'est qu'en combinant ces deux principes vraiment ensemble comme ça et en les en créant une chaîne d'opération sur le temps enfin sur le temps on crée une chaîne d'opération qui se répète tout simplement on arrive à créer des algorithmes de de réseau de deod qui sont extrêmement efficaces pour la vision par ordinateur donc comprendre ce qui se passe sur une image ou bien sur une vidéo tout ce genre de choses alors à travers le temps les CNN ils ont beaucoup évolué le premier de
l'histoire il a été développé entre 1989 et 1998 et c'est une architecture qui porte le nom de son inventeur Yan Lequin qui est un peu le champion national que l'on a en France en ce qui concerne l'a le machine learning le Deep learning et tout ce genre de choses yen Lequin qui avait qui avait d'ailleurs travailler avec Jeff Hinton c'est un de ses un de ses mentors on va dire avait donc créé cette première architecture dans les années 90 qui lui a permis à l'époque de résoudre un problème connu sous le nom de emnist qui
est un problème dans lequel il s'agit de détecter des chiffres sur une image et ce réseau de neurone fonctionnait extrêmement bien c'était un réseau de neurone vraiment de base avec des convolutions simples mais très efficace il a évolué à travers le temps vous voyez depuis la fin des années 90 jusque début des années 2000 10 il y a eu beaucoup de recherchees effectué qui ont mené vers un modèle très illustre très très connu le modèle d'alexnet qui a vraiment vraiment été un un une une une Milestone énorme dans le monde du Deep learning alors en
soit c'est un modèle qui suit encore une fois la même architecture on a on a une image ensuite on a des convolutions du pooling des convolution du pooling et à la fin on se retrouve avec un réseau de neurone classique comme celui qu'on a là donc vraiment quelque chose de très classique la grande différence c'est qu'on avait des convolutions plus larges donc au lieu de faire des filtres de 3 par 3 ou de 5 par 5 on faisait des des filtres de 11 par 11 dans alexnet puis quelques années plus tard on a vgg1 qui
est un un autre type encore de de de réseau de neuron convolutionnel dans lequel on a des convolutions des empilements de plusieurs convolutions comme on peut le voir là et ce qu'on constate vraiment c'est qu'à partir de 2012 il y a une accélération des choses ensuite toutes les tous les 2 ans ou tous les ans on a des nouveaux modèles qui arrivent et qui sont vraiment illustres euh ce qu'on a ensuite c'est resnet alors resnet 50 c'est qu'une version du resnet il en existe tout plein des versions de resnet dans lequel on a encore une
fois le même concept de convolution et de pooling avec entre deux hop si vous voyez bien entre deux des fonctions d'activation rectifi line unit et cetera mais ce qu'on a aussi c'est un concept de couche résiduelle d'où le nom de resnet puis vient le modèle Inception en 2015 un autre modèle très très puissant également en 2015 on a le la première version de l'algorithme Yolo qui permet de faire de la détection d'objets et la liste continue comme ça on a on a les modèles de segmentation qui nous vient également de méta comme segment anything model
des modèles très très puissants mais qui sont toujours toujours toujours basés sur la même idée celle d'enchaîner des convolutions avec du pooling et de terminer par un réseau de neurone artificiel comme celui qu'on a vu au début ça va vous suivez toujours parce que là il y a des choses à montrer ce soir hein donc ce soir ce soir je vais vous laisser choisir lequel de ces deux vous préférez prendre ici alors je vous laisse voter dans le chat est-ce que vous voulez voter pour le bleu clair ou le bleu foncé le clair le foncé
le clair le foncé allez-y je vous laisse choisir mais il faut se dépêcher ah le live le live chat le live le chat lag le chat lag ça met du temps à si les réponses arrivent Leclair ok Lecler les gens veulent le clair c'est évident c'est le CLA ouais allez hop le le le ce n'est même pas la peine de continuer on ouvre tout de suite le CLER dans lequel on va découvrir les réseaux de neurones récurrents qui sont eux aussi des modèles assez vieux assez anciens puisque les premiers articles de recherche qui qui les
mentionnent datent de 1986 donc c'est pas c'est pas c'est pas récent tout ça euh et le concept même euh d'unun réseau de neuron récurrent c'est tout simplement un réseau de neurones qui reboucle sur lui-même alors vous le voyez très souvent tracé comme ça sur Internet voilà on a on a un un sorte de de de carré comme ça ou de rectangle qui reboucle sur lui-même on a les entrées X et là les sorties y et on se demande mais qu'est-ce que c'est que ce truc ici qui qui fait ça et bien ça c'est simplement l'activation
du réseau de neuron qui rentre dans le réseau de neuron parce que ce réseau de neurone on peut le dupliquer à l'infini et Il est extrêmement efficace pour traiter tout ce qui est série temporelle ou simplement problèmes dans lesquels il y a des séquences à traiter on va voir un exemple quand vous avez un réseau de neurone quand vous avez un problème un jeu de données dans lequel ici vous avez le temps c'est-à-dire des des éléments qui qui qui varie dans le temps et là vous avez la valeur de ces éléments et bien encore une
fois vous pourriez vous dire bah ce que je vais faire c'est que je vais prendre ces choses-là et je vais les envoyer à mon réseau de neurone en entrée X1 X2 X3 X4 X5 sauf qu'en faisant ça on détruit complètement l'idée de structure sous-jacente aux données tout comme ici pour les images on avait une certaine une certaine logique entre les différents pixels voilà les pixels forment des groupes euh si ici il y a un pixel noir et ben fort probable que le pixel juste à côté il est la même couleur on va pas passer du
noir au blanc au gris au violet comme ça sinon au final ça devient juste du bruit et bien euh l'idée des CNN des RNN c'est de de de donner cette structure au réseau de neurone afin de pouvoir lui faire rentrer étape par étape les différents éléments du jeu de données dans le temps en tout cas donc voici à quoi ça ressemble on va donc prendre la première étape de nos données le le premier point de nos données dans le temps par exemple il peut s'agir d'un mot dans une phrase ou bien d'un signal temporel comme
un signal financier peu importe et cette donnée là va pénétrer dans un réseau de neurone artificiel comme celui qu'on a vu encore une fois au tout début de cette vidéo ça va toujours être je vous le dis la base de tous ces réseaux de neurones donc on a ici l'entrée X et elle peut nous produire une sortie y comme par exemple là ça peut être une température et on va on va prédire si la température est bonne ou mauvaise est-ce qu'elle est chaude ou trop chaude et ça à chaque instant T voilà lorsque x lorsque
T est égal à 0 lorsque T est égal à 1 et cetera et cetera donc en fait un réseau de neurones récurrent c'est un réseau de neurones qui reboucle et au sein duquel on a donc un empilement de couches un empilement de couches et ces couches on peut les dupliquer à l'in fini dans le temps et ça nous donne cette structure là alors des architectures de rnal il en existe vraiment plein pour plusieurs applications on a le one to many c'està-dire on fait une entrée et ça nous produit plusieurs sorties alors l'exemple historique qu'on va
donner dans les dans les dans les cours de machine learning ou de Deep learning c'est voilà on lui dit tiens est-ce que tu peux me faire une musique de jazz et il nous dit ouais pas pas de problème je vais te générer ça nous produisant une série de notes sol fado et cetera et cetera ça c'est l'architecture one to many on fait une entrée et il nous produit plusieurs sorties ensuite on a l'architecture one Toone eu qui est très utilisé lorsqu'on veut faire vraiment de l'analyse temporelle de série de signal par de signaux par exemple
vous avez ici une une entrée X0 et pour chaque entrée vous voulez prédire vous voulez convertir cette entrée en un autre en une une autre valeur par exemple vous voulez convertir une pression en température ou ce genre de chose donc vous allez avoir quelque chose peut-être comme ça pour pour chaque pour chaque valeur et cetera ensuite vous avez la l'architecture many to many qui est très utilisé depuis longtemps dans tout ce qui concerne la traduction de texte voilà si vous dites je m'appelle Guillaume et ben je vais traduire ça par My name is Guillaume voilà
où je suis et cetera et cetera alors on pourrait se dire bah on peut aussi faire ça avec une architecture comme ça en face de chaque mot on dit le mot qui lui correspond la réponse est non puisqueen réalité si vous faites ce genre de chos et bien vous pouvez vous retrouver avec des mots qui ne sont qui ne correspondent pas à leur traduction donc ça n'a pas vraiment de sens en plus il est très fréquent que dans un dans une langue on a plus de mots dans la traduction que dans la version originelle ou
vice-va donc le M to man c'est quelque chose de très utilisé pour tout ce qui est traduction et on a le mone to one qui est une bonne application du sentiment analysis donc je suis content ça nous retourne quelque chose qui nous dit oui la personne est contente donc vraiment l'idée des RNN c'est d'encoder un signal séquentiel et de pouvoir faire si vous voulez voyager à travers le temps les informations qui préviennent des cellules précédentes parce que pour prédire ce qui se passe ici on va prendre plutôt pour prédire cette valeur là la valeur qu'on
aurait ici en sortie et bien on va prendre en compte X3 c'estàdire la valeur qu'on a ici au 3è moment de notre de notre série temporelle mais on va aussi prendre en compte tout l'historique passé et c'est de cette manière qu'on arrive donc à traiter des problèmes séquentiels alors le problème des RNN tel que je vous le montre ici c'est que lorsqu'on a une très très longue séquence et bien ces modèles là peuvent avoir tendance à oublier ce qui s'est passé au tout début voilà si vous imaginez qu'ici vous avez énormément de blocs et bien
ils vont probablement avoir oublié la réponse que vous l'aviez les données que vous lui avvez fourni au tout début X0 X1 X2 et c'est la raison pour laquelle on est venu avec des architectures comme lstm et Gru lstm qui est une très vieille architecture qui qui signifie en réalité long short term memory qui est donc une une cellule de mémoire court terme et long terme qui vous en avez une une description ici mais on va pas rentrer dans les détails hein mais qui vous permet donc d'avoir euh un un historique et de garder en mémoire
des des éléments vraiment très très loin en arrière et ça ça fait ça rend vos réseaux de neurones récurrents très très puissant et voilà donc en gros cette autre branche du Deep learning qu'on appelle les réseaux de neurones récurrents qui existe depuis très longtemps déjà aujourd' aujourd'hui elles ont été un petit peu détrôné par un autre type de modèle qu'on est sur le point de dévoiler puisque c'est le modèle qui se cache derrière cette chose là est-ce que vous le voyez venir dans le chat est-ce que vous le sentez venir celui-là je pense que oui
là il y a des gens qui ont déjà mentionné ce modèle là c'est le modèle qui a tout changé hein je vous donne un indice il date il date de 2017 voilà là je pense que les gens là les gens leent là les gens le savent c'est parti c'est le transformeer le transformeer c'est un type de réseau de neuron artificiel qui a vraiment tout changé depuis les 7 dernières années j'ai j'ai surtout envie de dire depuis les 5 dernières années mais déjà déjà en 201728 moi je l'ai découvert en 2018 le transformer je je me
rendais pas encore compte à l'époque du potentiel du de la best de la de la bestiole mais c'était ass assez incroyable puisque le transformer est venu complètement révolutionner le monde de l'intelligence artificielle aujourd'hui tous les algorithmes qu'on a chat GPT et aussi les générateurs d'images c'est pas que les LLM fonctionnent grâce à cette architecture là alors le but d'un transformer le premier but déjà ou c'est pas le but mais un de ses grands avantages c'est de paralléliser les entrées d'un modèle par exemple de type RNN le problème quand vous avez un RNN c'est que vous
devez fournir les données les unes après les autres donc vous allez fournir cette entrée il va faire ses calculs il va produire une réponse il va envoyer la réponse dans la cellule suivante qui va prendre l'entrée suivante qui va faire les calculs qui va produire une réponse qui oh là là là là là là waouh et ben dis donc le réseau de neurone j'espère qu'il a pris un bon petit déjeuner là le matin enfin plutôt l'ordinateur parce que il a du boulot hein quand il doit faire tout ça bref c'est pas forcément un algorithme euh
les RNN ne sont pas forcément des algorithmes très performants très rapides pour cette grande première raison c'est que ils ne sont pas faciles à paralléliser or c'est là l'architecture euh c'est là tout le point vraiment essentiel déjà du transformeer c'est qu'on peut lui fournir poup toutes les choses d'un coup de par son architecture alors il y a d'autres avantages au transformer par exemple le papier d'origine de 2017 parle vraiment d'un mécanisme qui s'appelle celui de l'attention qui est lié à ce concept de parallélisation et on va en parler un tout petit peu plus en détail
là dans un instant ensemble mais avant de rentrer dans les détails voyons un tout petit peu à quoi ressemble un modèle de transformer lorsqu'on le regarde comme ça de très loin et bien en fait un modèle de transform il est vraiment décomposé en deux parties on a d'un côté je vois que vous posez beaucoup beaucoup de questions dans le chat vous en faites pas je je vois un peu d'un coin de lœil ces questions et il y a quelqu'un de mon équipe qui est en train de de faire une sélection de toutes les questions donc
n'hésitez pas à poser des questions si vous avez besoin mais revenons rapidement sur ce que j'étais en train de dire dans le transformer il y a vraiment deux grands blocs l'encodeur et le décodeur j'en ai un petit peu parlé dans mon livre apprendre le machine learning en une semaine dans lequel je vous explique vraiment ces deux parties là et ce qu'on retrouve dans l'encodeer et dans le décodeur c'est à la fois ce mécanisme d'attention dont on parle ici ainsi qu'un concept d'embedding dont on va parler juste en dessous et encore une fois des fit forward
c'est-à-dire qu'à l'intérieur de votre réseau de neurone vous allez encore une fois retrouver cette AR architecture de base c'est toujours la même je vais tellement la surligner ou l'encadrer d'ici la fin de ce live que ça va devenir le truc le plus gros de l'image vous verrez mais voilà en gros ce qu'on retrouve dans un transformer un décodeur un encodeur et au milieu de tout ça un embembedding une attention on va voir ce que de quoi il s'agit et un réseau de neurone conventionnel en soit c'est très simple c'est très très simple comme architecture elle
semble compliquée vu comme ça mais c'est très simple simple alors on va la voir en détail vous avez vu il y a du contenu là donc on va prendre un exemple pour bien comprendre comment ça fonctionne sous le sous le capot si on fournit une phrase en entrée de notre modèle this food is good I love it première chose à dire cette cette chose là rentre dans notre encodeur PAF alors elle a pas besoin de rentrer mot par mot contrairement à RNN classique on peut tout fournir d'un coup c'est le grand c'est le grand principe
ou avantage des des Transformers on peut tout rentrer làdedans et la première chose qui va se passer c'est qu'on va faire passer ça dans un embeddings une embeddings c'est une une une matrice qui va vraiment venir transformer vos mots pour leur donner un sens qui peut-être parfois représentable dans des graphques comme ce que vous avez ici c'estd que à travers le temps les embedding ça existe depuis très longtemps les les premiers modèles sont des modèles qui date de des années 2010 dans lesquels on a des modèles comme Word TVEC ou glove word tovec glove vous
vous avez vous avez peut-être déjà entendu parler de ces chosesl ce sont des modèles qui vous permettent de projeter un mot comme le mot ordinateur dans un vecteur dans un espace vectoriel ici qui va rapprocher ce mot des autres mots très ess semblant dans son lexique ou dans son utilisation voilà ordinateur écran imprimante sont des mots qui qui se ressemblent quand même très très bien et ils sont très différents d'autres mots comme basse piano guitare et cetera et pu on retrouve des fois des mots qui se situent un petit peu entre les deux parce qu'un
clavier ça peut à la fois appartenir à ce champ lexical et à celui-ci donc la première chose qui se passe lorsque vous utilisez un modèle comme chatjpt ou tous ces modèles là c'est que vos votre Prom vos phrases d'entrée passent dans une embedding qui va vraiment placer ce mot dans un champ lexical pour pouvoir le placer dans un contexte ensuite alors couplé au positional encoding tout ça va être envoyé dans le concept de multihead attention le concept de multihead attention déjà c'est lié au concept d'attention qui va simplement comprendre ou plutôt j'aime pas employer ce
terme parce que sinon on dirait vraiment qu'on parle d'intelligence artificielle restons dans des termes techniques avec le Deep learning ça va en fait analyser plutôt que comprendre ça va analyser le la proximité entre chaque mot et ses voisins dans la phrase ou dans le prompte que vous pourriez lui fournir et il va faire ça simplement en analysant en observant encore et encore et encore plein de données donc il va se dire ah tiens this c'est associé au mot food c'est aussi associé au mot it this food is good I love it qu'est-ce que c'est it
bah c'est food et il va faire ça pour tous les mots qu'il a dans son prompt il va en fait comprendre le la proximité le contexte qu'il y a entre chacun de ces mots les liens logiques et ça c'est le concept de base qu'il y avait dans le papier de Google de 2017 attention is all you need le concept d'attention alors qu'est-ce que le concept de multihead attention et bien c'est le fait de produire plusieurs fois ce genre d'opération un petit peu comme lorsqu'on avait des CNN ici et bien on se disait qu'on allait produire
plusieurs filtres photos voilà je vous avais dit qu'il y avait des filtres horizontaux on peut faire des filtres verticaux il y a une infinité de filtres possibles plus on en a bah plus on aura des choses intéressante à découvrir dans notre jeu de données et bien là c'est la même chose on va créer plusieurs filtres plusieurs couches si vous voulez plusieurs têtes puisque le terme c'est multihead plusieurs têtes d'attention donc il y a peut-être certaines attentions qui ce qui se rendront compte que good c'était associé à food ou bien good c'est associé à Love voilà
d'autres têtes se rendront compte de chaque tête se rendra compte un petit peu de d'autres choses une fois qu'on a ça et bien c'est là qu'on envoit tout simplement le résultat dans un fit forward neural network un réseau de neurones classique comme celui que je vous ai dessiné au début dans lequel on a vraiment euh une fonction qui fait l'agrégation des entrées donc il va prendre le résultat de toutes ces ses attentions il va les fournir dans tous ces différents neurones tac tac tac tac tac les neurones ils vont faire leur petit calcul ils vont
s'activer avec une fonction d'activation ça peut être une rectifi Linar unit ça peut être une tangente hyperbolique en réalité c'est pas vraiment une tangente hyperbolique dans ce genre de de réseau de neurones et ils vont ensuite envoyer le résultat qu'on a ici tout au bout là le résultat qui est envoyé là ce résultat là où est-ce qu'il est envoyé et bien le voit il est envoyé tac tac tac dans le décodeur qui va faire un travail très semblable dans lequel on va retrouver des attention des fit forward Network et donc après avoir encodé un signal
on va pouvoir en faire quelque chose comme par exemple décoder en générant du texte voilà alors chat GPT fonctionne pas exactement comme ça dans chat GPT il n'y a pas d'encodeur vous allez voir dans un instant euh on va en parler mais voilà d'une manière très très rapide et quand même avec pas mal de détails je pense comment fonctionne l'encodeur et le décodeur d'un transformer vous avez vraiment ces trois grand principes l'embedding la tension et le fit forward qu'on a déjà vu ensemble donc comme on a des encodeurs et des décodeurs et bien en réalité
le modèle du transformer il peut être utilisé de trois façons différentes soit en tant qu'encodeur soit en tant que décodeur soit en tant qu'encodeur décodeur c'estàd que il existe aujourd'hui depuis pas mal d'années des modèles qui sont à la fois tout ça en même temps et d'autres modèles qui sont juste cette partie et d'autres modèles encore qui sont juste cette partie là donc commençons par les encodeurs alors certaines personnes conna connaissent peut-être Bert un modèle qui est aujourd'hui un petit peu tombé dans l'oubli enfin c'est pas tout à fait vrai mais il est de moins
en moins utilisé c'est vrai que moi je ne vois pas aujourd'hui dans la littérature scientifique de modèles Bert dans lesquels la taille des poids continue à augmenté parce que il y a des équipes qui travaillent activement dessus avec des milliards d'investis non c'est dommage parce que c'était un super bon modèle il est disponible Open Source donc vous pouvez vous pouvez vous en servir c'est un super modèle et c'est un modèle d'encodeur donc un modèle extrêmement efficace pour prendre un grand prompte comprendre la beding c'està-dire le le la syntaxe de tous les mots leur champ lexical
comprendre leur contexte et ensuite créer une passer tout ça dans un fit forward afin de créer ici ce qu'on veut en sortie ça peut être on peut faire une régression si on veut on peut faire une classification on peut faire un clustering mais d'une manière générale on va encoder un signal pour simplement le résumer dans un tout petit espace après si cet espace c'est par exemple une classe et bien bien c'est ce qu'on va appeler du sentiment analysis par exemple on va prendre en entrée une phrase comme j'ai super bien mangé dans ce restaurant par
contre le temps d'attente était un peu long et puis bon la nourriture elle était un peu froide mais grosso modo c'était quand même super bien et ben peut-être que le modèle Bert va dire ouais bah la personne elle est moyennement contente mais d'une note de 0 à 10 elle mettrait peut-être 8 voilà ça berth est extrêmement efficace pour le faire et toutes les j'ai vu quelqu'un qui parle de camber dans le dans le chat évidemment oui parce que je vous ai dit je regarde le chat je vois ce que vous écrivez donc camber oui c'est
la version française de Bert et c'est vraiment un modèle qui peut être encore aujourd'hui très très efficace je vous conseille quand même de jeter un œil à ces modèles là avec toutes leur t tous les toutes les déclinaisons comme Roberta qui une version un petit peu améliorée Albert qui est une version plus légère et cetera et cetera ensuite on a les décodeurs donc les modèles qui vont pas forcément encoder un signal d'entrée mais qui vont simplement se focaliser sur le fait de produire une sortie et cette sortie ils la remettent à l'intérieur pour reproduire une
sortie qui remett à l'intérieur et cetera et cetera et cetera et la star de tous tout le monde la connait c'est GPT ah c'est le gérative pretrained transformer voilà alors gpt1 GPT 2 gpt3 ils étaient très peu connus du grand public je me rappelle je me rappelle en 2019 j'avais quelqu'un de mon entourage qui m'avait envoyé un un message disant oui euh dans la silicone vallée chat GPT n'existait pas hein personne connaissait ça euh à part ceux qui faisaient du machine learning et du Deep learning les gens connaissaient déjà GPT euh sans doute beaucoup de
gens du de la communauté machine lornia connaissait déjà ces modèles comme moi euh mais j'avais trouvé amusant le fait d'avoir un message de de quelqu'un de mon entourage qui me disait oui dans la silicone vallée il y a un modèle les gens ont très peur que euh ça soit un scénario à la Terminator j'ai dit oui oui je je sais de quoi tu parles oui c'est pas mal c'est pas mal c'est c'est pas mal c'était GPT en l'occurrence mais la personne ne le savait pas bref on a ici un historique de l'évolution de ces modèles
en partant de gpt1 gpt2 gpt3 et la fameuse sortie de chat GPT qui aujourd'hui quand même reste le plus connu de tous hein c'est la star chat GPT même si il a quand même il y a beaucoup de soucis qui se passent chez Opena et tout ce genre de chose on va pas en parler ici mais bon si vous demandez à des à des gens dans la rue de vous citer un un modèle di il vont dire t j'ai PT donc j'ai décidé quand même de le mettre en orange parce que c'est un modèle qui
a un petit peu déclencher beaucoup de choses puis depuis toutes ces années on en a vraiment plein d'autres ici vous reconnaissez sans doute des noms Lama CLA Gimini et cetera et cetera Mistral nos amis français euh donc tous ces modèles sont en fait des décodeurs allez on enchaîne avec les encodeurs décodeurs qui ont eu leur moment de gloire euh un petit peu au début ensuite donc dans les années euh 2017 à 2000 ouais plutôt 2018 jusqu'à 2021 il y avait quelques tentativ puis il y a pas eu grand-chose parce que énormément de gens se sont
intéressés à tout ce qui se passe ici avec les encodeurs et depuis quelqu temps on a d'autres modèles qui sortent comme UL2 T5 et cetera qui sont des modèles qui peuvent être assez intéressants mais ce qui reste quand même le plus puissant aujourd'hui dans leur enfin puissant je ne sais pas vraiment si c'est le bon terme mais ce qui a le plus d'atention pour le coup j'ai fait un jeu de mot à l'heure actuelle c'est bien les modèles de Transformers qui sont des décodeurs clip c'est quel type super bonne question on va en parler de
clip dans un instant donc ah bah voilà on va parler de clip tout de suite on va ouvrir cette cette petite boîte ici vous avez il nous en reste pas beaucoup hein cette fois-ci on va vraiment tenir tenir l'heure donc ouvrons la nouvelle boîte de notre carte de Lia dans laquelle on va retrouver les modèles de Gans de diffusion et ce genre de choses qui sont il faut le dire une combinaison de beaucoup de choses dans ces modèles là on va retrouver des réseaux de neuron classiques comme on les a vu là on va retrouver
des Transformers évidemment on va retrouver beaucoup de concepts on va retrouver des concepts de CNN on va retrouver vraiment beaucoup de concepts dans ce genre de chose mais tout démarre un petit peu en 2014 avec un super un super chercheur ultra cool jeune il est génial il s'appelle Ian Goodfellow et il a écrit un super livre d'ailleurs qui s'appelle deep learning tout simplement lui il se casse pas la tête et il a créé en 2014 cette architecture là qui est très simple c'est très simple deep learning en soi des fois il suffit d'avoir une idée
simple et très souvent ce sont les idées les plus simples qui réussissent dans laquelle il s'est dit mais tiens une bonne façon de générer des images c'est de créer deux réseaux de neurones qui sont en compétition l'un avec l'autre on va avoir un premier réseau de neuron qui est un générateur qui va à partir de bruit générer une image ça peut être une image de de voiture lui son job c'est de générer des images il doit produire une image qui semble la plus vraie possible pourquoi parce qu'il va être en compétition avec son copain qui
est un qu'on appelle le discriminateur qui lui va avoir comme mission c'est un réseau de neuron très simple à convolution justement dans lequel il va faire une classification binaire pour dire laquelle de ces deux images est vraie et laquelle est fausse donc il va recevoir une image qui a été générée par le générateur une image de voiture et on va lui montrer une autre image une vraie image de voiture ou une image de vraie voiture les deux en m en fait une vraie image de vraie voiture et donc le job du discriminateur ça va être
de dire quelle image est la vraie et laquelle est la fausse et ils vont travailler comme ça en compétition l'un avec l'autre afin de s'améliorer dans le temps jusqu'à obtenir des super résultats parce que les Ganes dès les années 2014 nous offrait des super générateurs d'images très peu connu du grand public euh mais on avait des des Ganes qui étaient spécialisés pour créer des faux visages pour créer des personnages de manga pour créer des Pokémon pour créer vraiment énormément de choses mais le souci des Ganes c'est qu'on ces modèles là ne prennent pas en entrée
imprompte il y a pas d'encodeur là dedans vous pouvez pas écrire oui je voudrais que tu me fasses une image de personne qui de la salsa en Espagne non unan ne fait pas ça un Gan il est simplement entraîné pour créer un type d'image c'est tout mais c'était un super modèle et à partir de là on a eu alors beaucoup de tentatives j'ai retrouvé des images extrêmement amusant amusant des des premiers modelles qui tentaient de de d'inclure des systèmes de diffusion et cetera ou des système un peu semblable à la diffusion on peut pas tout
de suite parler de ce genre de mécanisme mais là vous avez ici des des vieilles images qui étaient sur qu'on avait partagé avec des des membres de mon discord il y a 3 ans quelque chose comme ça de Dali mini la version mini alors c'est pas vraiment Dali c'était même encore autre chose un modèle qui était disponible sur the hugging face et et regardez la qualité d'image c'est extrêmement drôle mais moi ces images là me faisaient extrêmement rire quand je les ai revu tout à l'heure j'étais j'étais vraiment plié de rire voilà faire un scanner
IRM de Dark adore c'est c'est ridicule mais le chemin a été immense entre ça et ça qui est aujourd'hui la version de d qu'on va voir dans un instant c'est quand même incroyable sachant d'autant plus que la différence de date entre ces deux choses c'est environ 18 mois alors là c'est quand même bluffant qu'est-ce qui a changé c'est ça la grande question qu'on veut se poser c'est qu'est-ce qui a changé pour passer de ça à ça est-ce que on a on a on a inventé un nouvel algorithme un nouveau modèle on fait des réseaux de
neurones plus compliqué non c'est toujours cette chose-l toujours couplé à ce mécanisme on la retrouve simplement làdedans voilà ici voilà c'est il est là mon réseau de neurone avec une attention un mbeding tout ce genre de choses dans lequel d'année en année on rend on crée des modèles juste de plus en plus gros alors il y a des petites subtilités les modèles ne sont pas juste simplement plus gros il y a aussi euh parfois des des variations au niveau des fonctions des fonctions coût ou bien des fonctions d'activation il y a des petites spécificités qu'on
va voir ensemble mais d'une manière générale les fondations sont toujours resté les mêmes elles sont les mêmes depuis euh 50 ans pour les réseaux de neuron et depuis 7 ans pour les Transformers donc le modèle de Dali qui est un des modèles parmi tant d'autres mais ils se ressemble tous un petit peu c'est en réalité un encodeur de texte puis donc un encodeur tel que celui que je vous ai montré tout à l'heure avec le modèle du transformer c'est un encodeur il y a un embedding il y a une attention un réseau de neurones donc
on se retrouve au final avec un un espace un petit peu résumé de notre prompte qui est ici une illustration en noir et blanc d'un panda dans une mongollefière et au centre de tout ça on a un autre modèle également développé par open ai qui est un modèle clip qui est un modèle d'embedding d'image dans lequel alors on a les détails qui sont donnés là mais clip c'est un modèle d'encodor également qui vient chercher plein d'images et qui compare leur distance cosinus donc il va essayer de comprendre comment est-ce que les images se ressemblent en
utilisant une fonction cosinus tout simplement et grâce à ça ensuite il décode donc on a un décodeur de diffusion dont on va parler dans un instant et ça nous fournit l'image c'est très simple c'est ultra simple en réalité c'est c'est bon il faut comprendre vraiment les les concepts de base il faut le mieux c'est vraiment de très très bien comprendre ça de comprendre que les données on peut pas toujours les entrer comme ça en mode X1 X2 X3 dans des neurones parce que ça n'a pas de sens donc il faut parfois leur ajouter des convolutions
traiter les choses par paquet ou bien il faut parfois leur rajouter une un concept historique donc les faire rentrer comme ça séquence après séquence ou plutôt élément après élément le concept du transformeer permet de paralléliser tout ça et après on a juste un élément d'Encod d'encoding un élément de décoding de décodeur et puis c'est tout c'est vraiment ça la base de tout alors ensuite on a eu stable diffusion encore une fois on a l'encodeur ici j'utilise toujours les mêmes couleurs ici vous voyez le orange ici c'est un encodeur qui va donc prendre un un prompt
donc il passe à travers notre transformer c'est-à-dire les étapes qu'on a vu ici donc notre prompt il passe par le input embedding le positioning le multihead attention et cetera et cetera et puis il il envoie le résultat de tout ça dans le mécanisme de diffusion qui est un mécanisme itér dans lequel on va à l'aide d'un réseau de neuron qu'on appelle unet qui va donc prendre au départ une matrice aléatoire et progressivement construire l'image qui trouve être la plus la plus représentative du prompt la plus adaptée au prompt plutôt que représentative la plus adaptée au
prompt c'est pour ça que quand vous utilisez midjourny ou des outils comme ça midjourné fonctionne pas avec sty diffusion enfin c'est pas tout à fait la même chose mais vous avez souvent quelque chose d'itératif vous lui demandez vous lui envoyez un et puis vous voyez que l'image elle se construit au fur et à mesure bah c'est exactement ce que vous avez là en réalité et puis ensuite vous avez une matrice un décodeur et ça vous donne le résultat final Anto a raison de le dire midjournée n'est pas Open Source donc on ne connaît pas exactement
l'architecture ni l'archit alors on a des indices on sait plus ou moins certaines choses qui qui qui fonctionnent voilà on a un mécanisme itératif comme ça quand on dit que c'est pas open source on sait surtout aussi que les les les poids ne nous sont pas donnés comme ça aussi c'est-à-dire les valeurs de différents paramètres qu'on a dans le réseau de neurone mais vous avez ici donc la la l'avant-dernière branche vraiment des différents modèles de neural network donc on va découvrir ensemble ce qui est la dernière je vous laisse deviner dans le chat tac roulement
de tambour mais moi je vais l'ouvrir avant parce que le chat il lagu un peu là ce soir il y a un décalage donc je l'ouvre j'ai oublié ce que c'est ah non je me rappelle ce sont les auto-encodeur voilà on en a pas parlé jusqu'à présent mais les auto-encodeur sont des modèles ou des architectures de réseau de neurone qui sont très simples très très simples et qui consistent simplement à dire bon et ben ce que tu dois prédire pardon ce que tu dois prédire en sortie ici c'est la même chose que ce qu'on t'a
donné en entrée c'est un réseau de neuron vous lui montrez une image de chat vous voulez qui vous sorte la même image de chat alors vous vous dites mais pourquoi à quoi ça sert ça alors ceux qui en ont déjà qui s'en ont déjà servi vous vous le savez hein mais ce qu'on va retrouver c'est au centre de tout ça un espace latent c'est-à-dire un espace de plus petite dimension qui va être une représentation très très fidèle de ce que vous avvez vu en entrée afin de le reconstruire en sortie et oui parce que si
vous ignorez un instant ce qu'il a sur la gauche de cet écran et que vous vous dites que à partir simplement de h1 et de H2 notre réseau de neurone est capable de reconstruire tout ça ça veut dire que H1 et H2 est une très très bonne représentation de ce qu'on a en entrée ah ouais et bien c'est là le principe général d'un auto-encodeur tenter de reproduire en sortie ce qu'on avait en entrée afin d'avoir au milieu un espace L temp avec lequel on va pouvoir faire des applications parmi elles on a de la réduction
de dimension du clustering de la détection d'anomalie beaucoup de choses qu'on avait vu ensemble vendredi lors du premier live mais là si on a donc H1 et H2 on peut peut-être se rendre compte que E mais l'espace il se sépare en deux parties en réalité chose qu'on voyait pas forcément lorsqu'on avait ici toutes ces valeurs en entrée toutes ces variables en entrée donc voilà le principe des auto-encodeurs et ça ça peut être décliner de plein de façons différentes on a les variational auto encoders dans lesquels au lieu de simplement résumer euh les choses en de
neurones et bien ce qu'on va vraiment apprendre ce sont les paramètres d'une distribution comme par exemple une loi normale ou une loi de Poisson ce genre de chose ça peut être extrêmement utile dans des applications de clustering de détection d'anomalie ou ce genre de chos on peut avoir les spars autoencodeur dans lesquels il y a certains neurones qui sont désactivés c'est pas le plus intéressant mais on a aussi des des auto-encodeurs convolutionnels dans lesquels on peut prendre une image et apprendre à leur reconstruire en sortie les autoencodeur c'est des modèles vraiment très très chouettes euh
qu'il faut vraiment connaître dans l'espace du du du monde de Lia il vous permettent aujourd'hui de de créer beaucoup de choses ce qui est très intéressant par exemple c'est de prendre euh d'entraîner un réseau de neuron à s'encoder sur quelque chose puis après l'utiliser pour décoder autre chose euh c'est comme ça qu'en réalité les algorithme de Deep fake fonctionne depuis très longtemps mais ça je n'explique pas comment les développer parce que c'est pas du tout des des choses éthiques en revanche c'est intéressant de savoir comment il fonctionne pour ensuite savoir comment mieux les détecter et
combattre les di fake chose que beaucoup de labo essayent de faire depuis longtemps et voilà avec ça on a vu ensemble le tour d'horizon de Lia sauf que non il nous manque encore une toute petite partie en bas la partie rouge alors cette partie là je l'ai réservé pour la toute toute fin puisque pour bien la comprendre on va pas rentrer dans trop de détails puisque on arrive au terme mais pour bien la comprendre il faut avoir à explorer en fait un peu tout ce qu'on a vu depuis le début parce que cette partie là
elle englobe pas mal de choses pas mal de concepts alors qui sont à la fois très différents de tout ce qu'on a vu depuis le début mais qui utilisent des principes des réseau neurone des modèles paramétriques des modèles non paramétriques et tout ce genre de choses alors ces deux choseslà sont les algorithm d'apprentissage par renforcement et les algorithme génétique alors il y a pas énormément de choses à dire en comme ça 5 minutes mais on va quand même vous dévoiler les choses les plus intéressantes à savoir sur tout ça l'apprentissage par renforcement j'en ai écrit
un chapitre sur mon livre apprendre le machine learning par en une semaine et c'est vraiment un un paradigme très spécial du machine learning dans lequel votre agent comme toujours on revient au tout début va apprendre à partir de donné sauf que ces données c'est lui qui va c'est lui-même qui va se les générer ce sont en réalité des expériences il va développer un modèle en général ce qu'on appelle une politique d'action en se basant sur une mesure de performance qui va chercher à maximiser ou minimiser ça c'est la même chose donc dans l'apprentissage par renforcement
on a encore une fois ces quatre grands principes qui opèent donc très traditionnellement on présente les choses comme ça on a un agent qui va entreprendre des actions dans un environnement et celui-ci va obtenir donc un nouvel état ainsi qu'une récompense positive ou négative vous pouvez par exemple prendre une voiture qui peut soit tourner à gauche à droite avancer ou reculer l'environnement c'est la rue et ensuite son état bah ça va être la position dans laquelle elle est dans la rue et sa récompense ça va être la distance qu'elle a déjà parcouru jusqu'à sa destination
c'est-à-dire que si elle se rapproche de saette destination c'est plutôt positif si elle s'éloigne c'est pas très bon et puis c'estc des piétons au passage c'est pas bon du tout voilà donc là on a l'idée au cœur même de l'apprentissage par renforcement mais dans l'apprentissage par renforcement on a vraiment deux grandes branches pour résoudre ce type de problème c'estd comment développer une politique d'action qui nous permet d'obtenir les meilleurs résultats c'estd qui maximise les reward ah oui comment faire pour aller pour faire en sorte que la voiture autonome aille le plus rapidement possible jusqu'à sa
destination et bien il y a deux façons de traiter ce problème soit euh avec des algorithmes value based soit avec des algorithmes policy based les algorithmes value based ce sont des algorithmes qui vont se dire tiens ce qu'on va chercher à faire c'est de prédire quelle est la valeur donc la la value based quelle est la valeur dans un état donné de prendre une certaine action je vous donne un exemple vous êtes en train de conduire votre voiture pour aller au travail ou bien si vous avez pas de voiture votre vélo ou bien vous prenez
le métro et cetera vous êtes à un moment donné à un embranchement ou bien à une station de métro peu importe et vous savez qu'en général depuis ce point-l il vous faut 15 minutes pour aller à votre travail mais là il y a des bouchons ou bien la rame de travaux elle est elle est bloquée un truc comme ça alors là vous avez un choix devant vous soit vous attendez soit vous prenez une autre route le but de ce genre d'algorithme va être d'apprendre à prédire la valeur de votre décision qu'est-ce qui est mieux faire
à votre avis c'est super dur à savoir d'autant plus qu'il y a énormément de hasard là-dedans et donc ce qu'il va devoir faire c'est développer une matrice qui lui permet donc à travers le temps de comprendre qu'est-ce qu' vaut mieux faire dans telle et telle et telle situation c'est ce qu'on appelle le learning c'est vraiment la branche la plus populaire la plus connue la plus simple à apprendre elle est très efficace aussi je la c'est celle que j'explique dans mon livre apprendre le machine learning en une semaine euh il y a d'autres méthodes comme sarsa
mais là vous avez vraiment l'idée de base des algorithmes value based des méthodes value based apprendre à prédire euh la valeur d'une action que vous pourriez prendre en contraste il y a aussi tout simplement les algorithmes policy based dans lesquelles au lieu d'apprendre à prédire la valeur de vos actions bah vous apprenez à prédire les actions qui sont bonnes tout simplement le premier algorithme qui qui a qui a vraiment existé dans l'histoire c'était l'algorithme qui s'appelait reenforce qui a justement donné son nom au domaine de reinforcement learning c'est un algorithme totalement oublié de nos jours
il sert plus à rien enfin désolé pour celui qui l'a inventé j'ai oublié son nom j'ai oublié son nom mais ça va peut-être me revenir parce que je connais très bien les noms des gens qui enfin j'essaie en général de les retenir mais c'est un algorithme qui aujourd'hui est un petit peu tombé à l'eau face à toutes les techniques qui peuvent être utilisé et donc là vous avez justement d'autres de ces techniques A2C A3C sont des très bonnes techniques que j'essayerai de vous expliquer très très bientôt sur machine learner parce que le l'apprentissage par renforcement
c'est vraiment très très chouette et puis on a aussi le copain de l'apprentissage par renforcement qui est l'ensemble des algorithme génétique alors là on peut résumer tout ça en fait en une simple image derrière il y a beaucoup de méthodes ou de de de de petites choses qui peuvent être qui découlent des algorithmes génétiques mais l'idée est très simple on prend une population de modèles voilà ça peut être des modèles qui apprennent à à conduire une voiture encore une fois et ils ont un comportement plutôt aléatoire bon certains ils vont faire n'importe quoi ils vont
rentrer dans le mur et cetera et cetera donc ce qu'on va faire c'est qu'on va leur faire jouer des expériences il y a des modèles on va mesurer leur performance et notre algorithme de minimisation va être le suivant il va être simplement de tuer comme des comme des brutes les modèles qui avaient de mauvaises performances et de garder les modèles qui en avaient de bonnes mais on va pas s'arrêter là on va pas simplement se dire bon bah toi tu avais des bonnes performances hop on te garde euh merci ça doit être tout simplement Richard
Sutton qui avait lui-même créé reinforce bien sûr Richard Sutton c'est euh c'est quelqu'un qui a créé énormément de choses de du du monde dans le monde du du l'apprentisage par renforcement il a aussi créé les algorithmes de Q learning mais oui voilà merci à la personne dans le chat à Sami Sami kartou qui pour pour la réponse ça doit être vraiment suon qui a créé aussi l'algorithme re force donc les algorithmes génétiques qui n'ont pas été créés par Richard saton ça par contre je ne crois pas vont consister à garder les les modèles qui ont
eu de bonnes performances donc ceux qui sont par par exemple rentrés le moins de fois dans un mur ou ce genre de chose mais on va pas se contenter de dire bon bah c'est bien on garde ces modèles là non on a envie de les faire se développer donc ce qu'on va faire c'est qu'on va un tout petit peu changer leurs paramètres et pour ça il y a plein il y a plein de méthodes différentes on peut on peut suivre une méthode de mutation on peut suivre une méthode de mélange comme un accouplement en génétique
dans lesquels on va mélanger un petit peu les attributs d'un modèle et d'un autre tout ce genre de choses bref c'est comme ça que fonctionnent vraiment les algorithmes génétiques et ils ont été pendant longtemps un petit peu délaissés parce qu'on se disait ouais l'idée elle est sympa mais dans la pratique ça sert un peu à rien moi je les vois de plus en plus revenir à travers ces dernières années pour des applications qui sont très intéressantes et qui vont au-delà des petites applications qu'on pourrait voir parfois sur Internet comme le fait de faire des jeux
vidéos ou ce genre de choses c'est très très amusant c'est très sympa moi-même j'ai envie de vous montrer des des cas comme ça parce que c'est génial hein je trouve que les gens qui font des des des des expériences comme ça c'est trop bien on s'amuse vraiment super bien mais il y a des applications très tangibles très concrètes qui peuvent apporter de la valeur aussi dans le monde professionnel j'en ai vu euh euh récemment que je veux je tenterai de vous parler et voilà le tour d'horizon de liya en 1h5 minutes le Paris est tenu
bravo non mais moi j'ai adoré faire ça c'était extrêmement amusant c'était extrêmement amusant extrêmement intéressant de de pouvoir vous montrer ce genre de choses parce que aujourd'hui on en a dans tous les sens tout le monde parle d'IA sur internet depuis la sortie de chat GPT moi j'en ai encore jamais parlé depuis la sortie de chat GPT donc je me suis dit ce que les gens ont peut-être besoin c'est de faire un petit récapitulatif des grandes techniques qui existent on n'est pas forcément rentré à fond dans les détails c'est normal on peut pas le faire
simplement en 1 heure et ça j'aurais plaisir à le faire puisque ça a toujours été ce que j'aime faire sur cette chaîne Youtube de vous montrer avec dans en allant jusqu'au détail le plus précis comment est-ce que les choses fonctionnent réellement dans d'un point de vue mathématique ça c'est ce que j'adore faire donc je vous laisse poser quelques questions parce que j'ai promis que je répondrai à à deux trois questions euh avant de conclure mais moi j'espère que ça vous a plu j'ai j'ai vraiment passé un super bon moment avec vous ça je peux le
dire j'ai vu j'ai vu beaucoup de questions dans le chat ah il y a de nouveau Clara je suis content de revoir Clara il y a des gens que je connais il y a Clara c'est une élève à moi lorsque j'ai donné une formation euh comment ça s'appelle nouveau c'était affilié Microsoft enfin voilà VO je me rappelle plus exactement mais je suis content de te voir là Clara alors est-ce qu'il y a des questions à tout hasard alors j'ai vu une question j'ai vu une question qui m'a été beaucoup posée hier euh comment faire voilà
c'est ça on l'avait noté il y a deux questions qu'on m'a vraiment posé je vais je vais déjà répondre à ces deux questions quelqu'un m'a demandé hier enfin plus qu'une personne mais comment faire pour devenir un un expert en machine learning aujourd'hui alors il y a d'autres personnes qui demandaient simplement comment faire pour apprendre le machine learning mais euh vraiment dans les détails voilà pour pour pas simplement être le gars qui a appris le machine learning un peu comme ça sur Internet parce que je comprends je comprends la question c'est c'est vrai qu'aujourd'hui on peut
se former euh à beaucoup d'endroits euh il y a beaucoup de livres il y a des vidéos sur youtube il y a beaucoup de choses euh mais euh ça ne ça ne suffit pas forcément pour ensuite pouvoir exploiter exploiter son son vrai potentiel donc ça c'est une bonne question comment faire en fait pour devenir vraiment quelqu'un de bon de solide vous voyez quelqu'un de H super solide en data science en machine learning en deep learning alors je pense que euh il faut en fait si moi-même je devais recommencer si moi-même je devais tout recommencer il
vous faut déjà des alors il vous faut des super bonnes fondations en mathématiques mais mais ne commencez pas nécessairement par ça parce que ce qu'il vous faut c'est une carte une road map un un plan parce qu'en fait on peut pas apprendre un domaine aussi compliqué de soi-même alors si en fait on peut moi je l'ai fait durant longtemps je me suis autoformé j'avais des bases puisque j'étais j'ai un diplôme d'ingénieur à l'origine mais euh quand vous vous autoformez on voit souvent ça sur Internet les gens disent faut s'autoformer et cetera et cetera oui c'est
bien mais si vous vous autoforez vous prenez le vous faites la décision vous acceptez le choix de perdre du temps d'aller explorer des choses qui vont servir à rien et ça parfois pendant des semaines voire des mois apprendre des choses ne pas comprendre vous poser des questions perdre du temps perdre beaucoup de temps donc si le temps c'est important pour vous et j'espère que ça allit euh il est bon de ne de ne pas simplement que s'autoformer c'est pour ça que les gens finissent par quand même acheter des livres suivre des formations même regarder une
série de vidéos YouTube comme celle que j'ai pu sortir de 30 vidéos elle vous donne quand même déjà une très très grosse roadmap il y a énormément de gens depuis toutes ces années qui qui ont dit à quel point ça les a aidé pour même trouver du travail pour pour pour beaucoup coup d'entre vous donc moi j'étais flatté je ne vousurais jamais imaginé tout ça à la base mais d'abord il vous faut comprendre quel est la carte qu'il vous faut suivre ensuite il vous faut savoir quels sont les 20 % de choses à apprendre qui
vont déjà vous apporter 80 % de résultats et ça vous pourrez pas l'apprendre de vous-même je pense même qu'il y a pas beaucoup de formations ou de formateurs qui vous le montent vraiment j'en sais rien parce que j'ai pas moi-même suivi toutes les formations du monde mais c'est difficile de savoir c'est comme avoir un coach un bon coach en sport vous avez un bon un bon coach un bon entraîneur au tennis ou ce genre de chos quand vous avez un bon coach un bon entraîneur il va vous dire non laisse tomber cette technique tu vas
perdre ton temps tu vas beaucoup beaucoup travailler dessus ça va pas forcément t'apporter beaucoup de résultats à la place on va travailler ce ce ce type de coup droit ou de revers ou ce genre de chose donc premièrement vous devez connaître la road map à suivre avec les 20 % de choses qui vous apportent 80 % de résultats ensuite c'est là que vous pouvez commencer à plonger dans les détails et là si vous voulez devenir vraiment bon il faut devenir très bon en math en probas en statistique et en algebre linéaire en algebre linéaire les
les gens délaissent parfois ça en se disant non mais ça c'est pas important dans la pratique ah si si si ah si alors ça dépend si vous voulez devenir un Data scientiste quelconque ou un très bon data scientiste malheureusement je je pense que aujourd'hui il y a beaucoup de gens sur Internet qui ont un peu de mal à trouver du travail c'est c'est c'est dommage mais ou alors d'autres qui peuvent se dire oui non mais data scientist ça sert à rien de faire des maths oui mais bon ne va pas dire ça à quelqu'un qui
travaille dans une gafame qui qui qui a des salaires énormes et cetera c'est je réponds vraiment à la question comment faire pour devenir très très bon voilà et j'ai envie aussi de vous dire un truc c'est pas difficile comme beaucoup de choses c'est pas for difficile il suffit d'avoir la bonne méthode la bonne méthode donc voilà je résume il vous faut une carte d'apprentissage en sachant quelles sont les choses les plus efficaces à apprendre au début pour vous apporter les plus les meilleurs résultats travaillez les maths et comprenez tous les algorithmes qu'on a vu ou
peut-être pas tous mais choisissez vraiment les algorithmes les plus efficaces de cette carte là avec les méthodes les plus efficaces il y a pas que des des algorithmes à utiliser bosssez à dessus à fond et là vous obtiendrez des supers résultats ensuite quel niveau fautil il y avait quelqu'un qui m'avait demandé quel niveau mathématique faut-il avoir pour commencer le machine learning alors j'ai une super bonne nouvelle à vous donner baccalauréat ça suffit même moins si vous avez ensuite un bon prof quelqu'un qui vous amène là-dessus euh voilà donc mais mais c'est pas la peine d'avoir
un master ou une thèse ou non vous pouvez apprendre ces choses au fur et à mesure et ceux qui ont suivi ma chaîne Youtube depuis le début ou déjà depuis longtemps avec la série sur le Deep learning se sont rendu compte en regardant les vidéos de Deep learning ah mais ah une dérivée ah ouais ah c'est ah ça permet de faire ça c'est chouette waouh attends on va faire les calculs ah mais les calculs sont pas compliqués en fait il faut juste se replonger dans quelques souvenirs quand on les a pas bah moi je suis
là pour donner les réponses donc le niveau en mathématique la barrière à l'entrée elle est elle est petite si encore une fois vous savez par où aller que vous avez la bonne méthode d'apprentis donc le bon prof ou le bon livre tout ce genre de choses euh il a une autre question comment peut-on attendez il y a quelqu'un qui me l'a écrit dans le il y a quelqu'un qui m'aide en fait comment peut-on définir un Data scientist quelle est la différence avec un Data engineer ah ça c'est une bonne question voilà alors un Data scientiste
c'est le complément d'un data engéier on voit aujourd'hui des fois des gens qui disent qu' font les deux ou bon attention les recru ils aiment bien avoir des gens spécialisés hein donc un Data scientiste c'est très utile si vous êtes data scientiste et que vous êtes aussi data engéer que vous pouvez quand même faire les deux hein mais il faut vaut mieux se spécialiser ça c'est important par exemple moi je sais quand même faire les deux même si mon mon ma spécialité c'est le la data science c'est important pour moi d'être capable de faire aussi
le travail data engéer donc quelle est la différence entre ces deux choses alors un Data scientist c'est vraiment celui qui va développer les modèles développer le Data Insight euh donc comprendre faire des statistiques comprendre comment euh tirer de la valeur des données le Data engéer c'est celui qui va créer la pipeline qui va te fournir qui va fournir au data scientist les données donc c'est quelqu'un qui va beaucoup travailler avec les technologies euh de Big Data Spark euh il faut être très bon en python SQL tout ce genre de choses quel est le nom de
la catégorie des boîtes roses de la carte euh et bien c'est l'apprentissage par renforcement et l'apprentissage euh puis les algorithmes génétiques voilà euh est-ce qu'il y a encore d'autres questions euh maintenant euh parce que là j'ai pris les questions qui revenaient le plus souvent les mon de transfarence la création écoutez vous posez vraiment vraiment encore beaucoup de questions je ne pourrais pas répondre à toutes ces questions parce que là maintenant ça fait 1h15 qu'on est ensemble ce que je vous propose de faire c'est euh de de me poser les questions Paris email si vous avez
besoin ou alors ou alors si vous voulez euh si vous voulez vous-même entrer dans les formations que je fais parce qu'il y a aussi beaucoup de gens donc qui me posent des questions sur les formations parce que oui je donne des formations depuis longtemps par exemple Clara c'est une personne que j'ai formé euh et bien il y a un lien on va vous on va vous donner le lien vers la page sur laquelle je je la page d'inscription simplement si vous posez des questions sur cette page j'y répondrai voilà VO donc je je c'est aussi
l'occasion pour vous d'aller euh d'aller poser vos questions et oui comme Antonin le dit venez sur discord pour poser les questions voilà on va plutôt faire comme ça alleer sur discord pour poser les questions c'est plus simple c'est beaucoup mieux et si jamais tout ce que je pu vous dire là ça vous intéresse euh euh il y a une personne qui a demandé comment sortir du lot lorsqu'on l'on veut travailler en tant que data scientiste tout ce genre de choses j'y réponds en beaucoup plus de détails sur tout le programme que je fais en général
quand j'aide les gens à vraiment devenir meilleur dans le domaine euh donc est-ce qu'il y a encore une dernière question non bah non celle-là on y a répondu voilà si vous voulez poser des questions allez sur le discord vous pouvez aussi les poser en commentaire de cette vidéo Youtube je vais euh je vais euh répondre à ses commentaires comme le dit le louche Lisez la FAQ du discord de préférence il a raison euh pour bien poser vos questions et moi j'espère que ce live vous a plu je vous dis à très bientôt euh pour de
nouveaux lives et de nouvelles vidéos YouTube allez au revoir