La BACK-PROPAGATION - DEEP LEARNING 8

Sdílet
Vložit
  • čas přidán 24. 07. 2024
  • En Deep Learning, la Back-propagation est la technique qui permet de calculer les gradients de tout le réseau de neurone, pour ensuite entraîner celui-ci a l'aide de la descente de gradient. Nous voyons ici comment faire une Back-propagation d'un réseau de neurones a 2 couches, avec les calculs mathématiques complets.
    00:00 : Rappel sur la Forward Propagation
    07:16 : Back-Propagation
    09:05 : Calcul de dZ2
    17:28 : Calcul de dW2
    21:26 : Calcul de db2
    23:38 : Calcul de dZ1
    28:13 : Calcul de dW1
    30:00 : Calcul de db1
    31:00 : Bilan
    ► MON SITE INTERNET EN COMPLÉMENT DE CETTE VIDÉO:
    machinelearnia.com/
    ► REJOINS NOTRE COMMUNAUTÉ DISCORD
    / discord
    ► Me soutenir financierement sur Tipeee ou Utip (et obtenir des vidéos BONUS)
    fr.tipeee.com/machine-learnia
    utip.io/machinelearnia/
    ► Recevez gratuitement mon Livre:
    APPRENDRE LE MACHINE LEARNING EN UNE SEMAINE
    CLIQUEZ ICI:
    machinelearnia.com/apprendre-...
    ► Télécharger gratuitement mes codes sur github:
    github.com/MachineLearnia
    ► Abonnez-vous : / @machinelearnia
    ► Pour En Savoir plus : Visitez Machine Learnia : machinelearnia.com/
    ► Qui suis-je ?
    Je m’appelle Guillaume Saint-Cirgue et je suis Data Scientist au Royaume Uni. Après avoir suivi un parcours classique maths sup maths spé et avoir intégré une bonne école d’ingénieur, je me suis tourné vers l’intelligence artificielle de ma propre initiative et j’ai commencé à apprendre tout seul le machine learning et le deep learning en suivant des formations payantes, en lisant des articles scientifiques, en suivant les cours du MIT et de Stanford et en passant des week end entier à développer mes propres codes.
    Aujourd’hui, je veux vous offrir ce que j’ai appris gratuitement car le monde a urgemment besoin de se former en Intelligence Artificielle.
    Que vous souhaitiez changer de vie, de carrière, ou bien développer vos compétences à résoudre des problèmes, ma chaîne vous y aidera.
    C’est votre tour de passer à l’action !
    ► Une question ? Contactez-moi: contact@machinelearnia.com

Komentáře • 160

  • @LaurentD90
    @LaurentD90 Před 2 lety +3

    Le bonbon, la récompense du dimanche matin ! Quel plaisir. Merci Maestro.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Merci pour votre fidélité, ca fait plaisir d'avoir des gens qui regardent un dimanche matin :)

  • @zeldaplace589
    @zeldaplace589 Před 2 lety +3

    Super vidéo ! Comme d'habitude! Merci encore de continuer cette merveilleuse série!

  • @hichchad7309
    @hichchad7309 Před 2 lety +6

    j'ai découvert votre chaîne lors de la préparation de mon PFE qui consistait à travailler avec l'apprentissage automatique .. cela m'a beaucoup aidé.
    Grand merci a toi Mr Giullaume 💯💯👊👊

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Je suis tres heureux de savoir que mes formations ont pu t'aider, bon courage dans tes projets :)

  • @rahmounidjemaa982
    @rahmounidjemaa982 Před 2 lety +5

    Bonjour monsieur, merci à tous pour les cours qui sont d'un excellent niveau. Grâce à vous, j'ai pu comprendre le machine learning et pour vos merveilleuses manières, à vous suivre depuis l'Algérie 👍

  • @nzokoumodes3998
    @nzokoumodes3998 Před 2 lety +4

    Une oeuvre d'art !!!
    Merci encore !!!

  • @poga8sun
    @poga8sun Před 2 lety +4

    Merci beaucoup ! Je comprend et j'ai bien suivit les enchainements, mais je pense pas que je serais capable de le ressortir tout seul en entier, encore du boulot de mon côté ! Merci pour les explications en tt cas, c'est encore du super travail !

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +2

      Comprendre, c’est déja super ! Bravo ! continuer de vous accrocher :) Je suis la pour vous aider et vous motiver !

  • @arnoldmunuana2775
    @arnoldmunuana2775 Před 2 lety

    Merci pour ce cadeau. You are the best

  • @user-ie7be3lw4i
    @user-ie7be3lw4i Před rokem

    Merci pour la video

  • @Manon-4096
    @Manon-4096 Před 2 lety +7

    ah cool :) aujourd'hui c'est mon anniversaire :D merci pour ce cadeau :D

  • @princegedeon362
    @princegedeon362 Před 2 lety +2

    Tellement passionnant 🤖🤓

  • @ablayefofana4882
    @ablayefofana4882 Před 2 lety

    Merci pour cette vidéo professeur

  • @cyrilww3750
    @cyrilww3750 Před 6 měsíci

    ENORME ! BRAVO !!

  • @youssefbentaleb9795
    @youssefbentaleb9795 Před rokem

    Super vidéo

  • @yassineassir2179
    @yassineassir2179 Před rokem +4

    Merci beaucoup Monsieur pour cette formation de très bonne qualité !
    J'ai une question svp, je n'ai pas bien compris les parties où on remplace les produits normaux par des produits matriciels avec transposée ? Et parfois on ne fait pas ce remplacement ? Est-ce que c'est à cause de la somme ?
    Merci d'avance !

  • @oumarkane5585
    @oumarkane5585 Před 2 lety

    Thank you very much dear !!! 💯💯💯💯Remarquable comme toujours. J'avais fait les calculs et je croyais que je m'étais trompé lorsque j'ai trouvé une dimension n[2]xm pour le gradient par rapport à b[2] 😆. Mais enfait c'est tout a fait logique 👍.

  • @Gontran_
    @Gontran_ Před 2 lety

    Merci beaucoup pour cette série . Toujours qualitatif maestro !

  • @otmandarir3036
    @otmandarir3036 Před 2 lety

    merci beucoup :)

  • @sahriyounes2147
    @sahriyounes2147 Před rokem

    Super explication, surtout avec l'utilisation d'animation très très étudié, vraiment chapeau...

  • @mathhack8647
    @mathhack8647 Před 2 lety

    Belle surprise. J ''etais noyé dans un Exercice DL qui refuse de bien se tenir .
    Grand merci pour ce beau cadeau de Valentine day.
    (BTW, vos cours sont meilleurs que ceux de la Sorbonne, )

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Wow carrément ! Merci j'en suis touché, bon courage pour votre exercice ;)

  • @madaragrothendieckottchiwa8648

    toujours aussi heureux je revoir Guillaume , toujours aussi excellent comme d'ab
    merci encore mon Amie , Meilleur tu es !

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Merci beaucoup, content de toujours te voir sur la chaine :D

  • @mohammedmouadji6497
    @mohammedmouadji6497 Před 2 lety

    Merci

  • @yazidnoureni608
    @yazidnoureni608 Před 2 lety

    MERCI Mr Guillaume pour ce travail exceptionnel. J'avais essayé de programmer ce réseau de neurone sur jupyter mais j'avais eu des erreurs de dimension ; c'est clair maintenant. Je vais essayer d'arranger à nouveau mon code. JE VOUS REMERCIE

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Bravo pour tenter de faire l'exercice de programmation vous meme, vous irez loin ! :)

  • @wissalmasmoudi3780
    @wissalmasmoudi3780 Před 2 lety

    Merci bcp pour vos efforts,vraiment c'est magnifique.
    Pouvez vous nous faire une video sur les réseaux de neurones recurrent(modele de NARX)? s'il vous plaît.

  • @souleymadjibrine8492
    @souleymadjibrine8492 Před 2 lety

    Bon soir merci beaucoup

  • @safaelaat1868
    @safaelaat1868 Před 2 lety

    Merci beaucoup Monsieur. S'il vous plaît j'ai une question qui sort un peut du sujet de la vidéo. Où puis-je trouver des statistiques fiables sur les performances du ML et DL sur les différents domaines. Par exemples on entend partout que le Computer Vision a arrivé à de très bonnes performances en IA mais c'est quoi les autres domaines ? et c'est combien ces performances ? En vous remerciant.

  • @EZGVogan
    @EZGVogan Před rokem +1

    Hello, j'ai du loupé quelque chose mais je ne comprends pas pourquoi la dimension de W2 est egale a n1,n2. Cela induirait que W2 possede aussi les poids de la premiere couche ? Merci d'avance, et merci encore pour tout le travail immense.
    EDIT: Je pense avoir saisi, car si la couche 2 a plusieurs neuronnes alors W2 a bien le nombre de neuronne de la couche 1 en colonne et le nombre de neuronne de la couche deux en ligne

  • @marieb6898
    @marieb6898 Před 2 lety +1

    Bonjour ! Déjà merci beaucoup pour les différentes vidéos (que ce soit sur le machine learning ou sur le deep learning). Je trouve que vous avez une façon très pédagogique et très claire d'expliquer les choses, en tout cas je n'ai pas eu de soucis à comprendre jusqu'ici.
    J'ai cependant eu un peu plus de mal dans cette vidéo où on "changeait" les calculs pour que les dimensions des matrices soient les bonnes. Autant dans les vidéos 3 et 4 comme c'était bien détaillé j'avais très bien compris, autant ici j'ai eu un peu plus de difficulté. J'ai pu voir les autres commentaires où vous dites que vous allez sortir un livre sur le Deep Learning bientôt qui expliquera mieux en détail cette partie, je l'attends avec impatience! ^^
    Avez-vous une date en tête (approximativement parlant) ?
    En attendant, je vous remercie pour vos explications et votre travail ! :)

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      définitivement, je vais mieux l'expliquer dans le livre ;)

    • @venancescott5247
      @venancescott5247 Před rokem

      @@MachineLearnia Bonsoir Guillaume. je me doit de te remercier pour cette formation. MERCI BEAUCOUP.
      J'aimerais savoir si le livre est deja publié

  • @issamkoubaa3974
    @issamkoubaa3974 Před 2 lety

    Bonsoir , pouvez vous programmer une petite vidéo expliquant l'utilisation de hadoop ;) merci

  • @samiiks
    @samiiks Před 8 měsíci

    Merci beaucoup M. Guillaume pour vos vidéos. Dans cette vidéo, exactement en 20:38 vous avez remplacé le A par le transposé de A. Mathématiquement parlant, est ce qu'il est logique de faire parachuter ce remplacement (malgré qu'il n'est pas issu d'un calcule) ? Merci pour votre retour en avance :)

  • @johnmichael1295
    @johnmichael1295 Před rokem

    Salut Guillaume, merci pour ta vidéo, comme toujours c'est excellent!
    Petite question, (je ne suis pas certain que ça sera très clair) sais tu s'il y a des règles générales qui permettent de bien formuler les dérivées partielles dans des équations vectorisées ? C'est à dire qui nous permettent de savoir de base où seront les transposées, produits matriciels, etc? Je t'en remercie par avance.

    • @yahia1355
      @yahia1355 Před rokem

      je croie que c'est de la pratique et de simplement bien savoir appliquer : (a,b) . (b,c) = (a,c) , c'est juste comment jouer sur ca ..

  • @nafdance
    @nafdance Před 2 lety +2

    Bonjour, d'abord merci pour tout le savoir et le savoir faire que tu as partagé :), j'ai une petite question concernant la modification des paramètres (W,b),
    dans le cas ou on a dz1=w2*dz2* da1 il faut prendre l'ancien w2 ou le nouveau w2 modifié par la derivee de la 2 eme couche?
    Merci d'avance

  • @ZirTaaah
    @ZirTaaah Před 2 lety

    Saluuut ! Tout d'abord trèss bonnes vidéos comme d'hab je kiff :)))
    Juste petit blocage sur celle ci, les calculs sont un peu bidouillés je trouve :pp Par exemple à 21:22 où même sur le développements de dL/dW en produit de dL/dA * dA/dZ ...
    Voila c'est tout merci encore pour la série elle est incroyable :DD

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +3

      Salut ! Oui, comme on a déja vu tout ca dans la vidéo 3 et 4 je me suis dit que je pouvais faire les choses de facon implicite et non explicite (sinon on m'aurait dit : "bah tu radotes l'ami c'est redondant") Mais il semblerait que j'aurais du plus expliquer cela dans les détails (j'ai donc prévu de le faire dans le petit livre que je vais sortir bientot)

  • @karimben7796
    @karimben7796 Před 2 lety

    Bonjour je n’arrive pas a bien comprendre pourquoi on derive z1 et z2 par rapport a W normalelent on est censé derive z1 par rapport a x et z2 par rapport a A1 non ?

  • @maousalaheddine3929
    @maousalaheddine3929 Před 2 lety

    merci

  • @najouahajali7215
    @najouahajali7215 Před 7 měsíci +4

    Pour le calcul des gradients, comment justifier qu'en remplaçant parfois des matrices par leurs transposées et en utilisant parfois le produit du tableau et non le produit matriciel pour que les dimensions coïncident le gradient ne change pas ? Merci

    • @OizalM
      @OizalM Před 5 měsíci

      Je me pose la même question. Si ses résultats finaux sont justes je pense qu’il doit y avoir des équivalences mathématiques en utilisant notamment les matrices inverses qui amènent au même résultat. Dommage le manque de rigueur sur ces simplifications car le reste des vidéos est limpide.

    • @najouahajali7215
      @najouahajali7215 Před 4 měsíci

      @@OizalM Je vous remercie pour votre réponse. Auriez vous des références qui puissent m'aider à creuser sur ce point? Merci

  • @nadjihouabsoir8434
    @nadjihouabsoir8434 Před 2 lety

    Merci énormément ! je comprend bien tes cours sur python mais je du mal à comprendre la équations Mathématique parce que je suis littéraire. Si possible sa sera bien de faire un tutoriel sur la de rappel sur la mathématique.

  • @noel9335
    @noel9335 Před 2 lety +1

    Bonjour Guillaume,
    J'ai une petite question à propos de cette vidéo. ;-)
    Lors du calcul de la dérivée partielle W[2], tu fais la transposée de la matrice A[1] et tu laisses cette matrice à droite de dZ2.
    Lors du calcul de dZ1, tu fais la transposée de la matrice W[2] que tu permutes avec dZ2 (donc W[2] se retrouve à gauche de dZ2).
    Ce que je ne comprends pas, c'est qu'il n'y a pas eu de permutation de la matrice A[1] lors du calcul de la dérivée partielle W[2].
    Idem pour le calcul de la dérivée W[1] ou tu ne fais pas de permutation de X avec dZ1 lorsque tu fais la transposée de X.
    Merci pour tes éclaircissements.
    A bientôt. ;-)

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      J'essaierais de mieux expliquer ca a l'avenir car j'ai voulu prendre un raccourci (comme on l'a déja expliquer dans la vidéo 3 et 4) ce qui me permettait de gagner bien 10 minutes de vidéos, mais je vois que quelques uns ne comprennentn pas comme toi. J'ai répondu dans les commentaires. Mais j'essaierais d'etre beaucoup plus clair a ce sujet dans le PDF que je vais sortir qui résumera tout ca.

  • @bradleyadjileye1202
    @bradleyadjileye1202 Před 2 lety +2

    Salut, superbe vidéo encore niveau qualité, présentation et explication. Mais j'avoue je suis un peu dégoûté, car j'ai vraiment pris le temps de faire bien et rigoureusement tous les calculs avant de suivre cette vidéo. Je ne comprenais pas trop que cette vidéo ne dure que 31 minutes, au vu du temps que j'ai consacré à faire les calculs.
    Je pense qu'on serait d'accord pour dire que les calculs de dérivées ne sont pas très rigoureuses, on a vraiment l'impression qu'on fait des opérations pour que les trucs marchent (les transposées, le fait d'alterner produit matriciel et produit vectorisé, etc.), mais voilà j'imagine que tu sais où tu vas et que tu fais les calculs en conséquences. Mais j'adore quand même la vidéo car je pense que tu as essayé de présenter de la manière la plus simple possible ces résultats pour faciliter la compréhension de ceux qui regardent, car je pense que si tu devais prendre le temps de faire les choses rigoureusement et dans les détails, la vidéo durerait peut-être le triple du temps que ça a duré, voire plus.
    En vrai, c'est plus du travail d'informaticien, que de mathématicien, et j'adore parce qu'au final c'est rapide et ça marche, et c'est vraiment propre au deep learning. Ce sont des modèles très complexes, on ne cherche pas vraiment à comprendre dans les détails le comportement des différents paramètres, on ne fait pas de l'apprentissage statistique, mais plutôt de l'apprentissage machine, on s'intéresse plus au score de prédiction.
    Au final, quand je confronte avec mes résultats, j'ai les mêmes formules, ça me fait plaisir, je suis content. En plus, grâce à toi, j'ai une manière plus rapide de les avoir, maintenant je n'ai pas peur de rajouter autant de couches que je veux, la backward sera rapide. Je suis plus mathématicien qu'informaticien, donc j'ai du mal à écrire certaines choses (dériver par rapport à des matrices comme ça, c'est quelque chose qui me choque un peu), mais voilà il faut faire un compromis entre rigueur et temps de calcul, surtout en deep learning. D'ailleurs tiens, ça me rappelle certains modèles de régression pénalisée où il faut calibrer un paramètre pour faire un compromis entre biais et variance, calibrage que l'on façon souvent de façon empirique en commençant par utiliser son instinct, l'optimisation théorique et rigoureuse n'étant toujours pas possible.
    Oh la la j'ai écrit un discours, mais bon voilà quoi, j'adore le machine learning ! et j'adore cette série sur le deep learning, franchement !! Bon courage et bonne continuation Guillaume, hâte de voir les prochaines vidéos !!

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +5

      Salut ! J'ai lu ton message en entier et je te remercie pour ton feedback. Tu n'as pas été le seul a me faire ce retour : "un peu décu car on dirait que c'est magique et pas 100% rigoureux".
      Eeeeeh oui je me suis dit pour cette fois "allez tu vas prendre un risque : tu vas un peu plus vulgariser, car on a déja vu les dérivées des gradients simples dans la vidéo 3, et la vectorisation dans la vidéo 4." Je pensais que ca donnerait une vidéo plus "courte" et plus sympa pour les gens, plutot que de refaire encore des choses qu'on a déja vu. En fait, je pensais qu'en détaillant tout, les gens se diraient que ca tourne en rond, voila pourquoi j'ai pris le risque d'aller "plus vite".
      En fait, il n'y a rien de magique, j'avais a l'époque fait une vidéo tipeee qui durent bien 1h30 pour montrer tout cela. Mais je trouvais la vidéo longue a regarder, voila pourquoi j'ai voulu faire un effort de synthese car je pensais que vous préfereriez. Mais j'ai retenu la lecon et je veux faire plaisir a la minorité des gens qui ont eu un peu de "mal" avec cette vulgarisation. dans le résumé que je vais écrire par livre, tout sera détaillé, sans passer par des matrices, puis en vectorisant les résultats pour que les gens comprennent ce concept avec les matrices dans un second temps.

  • @dadylle
    @dadylle Před 2 lety

    Instructif

  • @hichemamh5624
    @hichemamh5624 Před 2 lety

    merci vous allez faciliter mon PhD

  • @abdellahelwarraki5177
    @abdellahelwarraki5177 Před 2 lety

    Merci bcp, formation très intéressante. Pouvez vous svp me dire l'outil que vous utiliser pour faire les présentations (dans vos vidéos précédents)

  • @a.a.d.t7505
    @a.a.d.t7505 Před 2 lety

    Bonjour, je vous remercie d’abord pour toutes ces informations incroyablement intéressantes que vous offrez sur votre chaîne. Ma question : est ce que rien qu’avec une certification coursera par exemple en Data science je pourrais avoir un travail en data science? Sachant que mon domaine de base na rien à avoir avec la data science!? Merci 🙏

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Bonjour, et merci.
      Non ca sera compliqué aujourd'hui de trouver du travail avec juste un certificat provenant de Coursera, meme si les cours y sont bien. Il vous faut de la maitrise, travailler sur de nombreux projets perso et etre solides sur les connaissance, autrement dit, il vous faut du travail et du temps. Mais je suis la pour aider ! :)

  • @kevinansard2119
    @kevinansard2119 Před 2 lety

    Super vidéo, étant développeur d'application j'ai toujours voulu m'initier au maching learning et au deep Learning

  • @statproacademy
    @statproacademy Před 2 lety

    merci bcq Guillaume pour ces tous ces contenus très intéressant. J'aimerai savoir quel logiciel tu utilises pour écrire et le nom de ton microphone.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Je fais mes vidéos avec Python, Latex, Premiere Pro, et After Effects. Mon micro c'est un perception 120

  • @electroniqueembarquee3422

    Bonjour, je viens de découvrir votre chaîne tant attendue. Je vous félicite pour ce travail crucial. Je suis partant pour la formation, je veux savoir quel laguage de programmation qu'on va utiliser pour les projets à venir.
    Merci

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Bonjour et bienvenue. On code en Python, mais grace a ce que je vous montre, ca vous donne un avantage compétitif car vous pouvez ensuite le coder dans n'importe quel langage !

    • @electroniqueembarquee3422
      @electroniqueembarquee3422 Před 2 lety

      @@MachineLearnia merci à vous

  • @GaylordNdemboNDATORO
    @GaylordNdemboNDATORO Před 2 měsíci

    que faire au cas ou tout les couches n'ont pas la meme fonction d'activation?

  • @aliouali1009
    @aliouali1009 Před rokem +1

    Bonjour,. Juste une petite remarque sur ton excellent travail. A 18:30, tu derive un produit matriciel (A*X) comme un produit dans R( a*x). Il me semble que la formule pour deriver ce genre de produit est un peu different. Ceci peut expiquer pourquoi, tu change un matrice par sa transposée pour retomber sur le bon résultat ( ce qui n'est pas tres mathematique :)

  • @jaimesastre6393
    @jaimesastre6393 Před 2 lety

    Bonjour,
    Petite question générale sur le coût log loss:
    Pour le moment on est sur une fonction sigmoid, type 1/(1+e**-x)
    Qu'en serait il de la fonction ReLU, type max(0, X).
    Qu'en pensez-vous ?
    J'ai pu lire qu'elle donnait de meilleurs résultats en réduisant l'effet d'estompage du gradient, lors de la rétropropagation de couche en couche.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Bonjour, oui nous allons les voir bientôt. La fonction coût ne change pas quant à elle

  • @labydamarocamara5874
    @labydamarocamara5874 Před 2 lety

    Vraiment merci beaucoup Guillaume pour tes vidéos qui nous aident énormement dans ce domaine!
    Au je suis sur mon PFE qui consiste à développer une application:
    1. authentification faciale,
    2. catégoriser les produits à travers l’image et leurs caractéristiques c’est-
    à-dire sa taille, sa couleur, modèle, ….
    Je sollicite votre aide pour savoir comment pourrais-je procéder pour l'authentification faciales c'est à dire quel package utilisé ou est mieux adapté à ce cas d'utilisation. Merci.

  • @thierryouandji6158
    @thierryouandji6158 Před rokem

    Bonsoir Guillaume, très belle vidéo comme toujours 😀. J'ai une question ( le fait d'effectuer un transposition pour obtenir le résultat que tu veux ou de retirer la somme et la remettre quand tu veux n'est pas un problème, parce que pour moi c'est comme si on forçait le résultat 😅)

    • @nady2296
      @nady2296 Před rokem

      J'ai le même problème. Je trouve qu'on fait un peu ce que l'on veut pour que ça matche au niveau des dimensions. Y-a-il des règles plus précises de calcul que Machine Learnia ne nous aurait pas présenté pour simplifier la vidéo ?

  • @guzmanpierre2085
    @guzmanpierre2085 Před 2 lety

    Merci pour le contenu.
    Si vous pouvez nous faire une petite démo d'une approche Hybride ( ANFIS, ou du K-means couplé au MLP)...

  • @Elta305
    @Elta305 Před 2 lety

    Bonjour, tout d'abord, merci encore une fois de nous partager cette formation ! J'ai une question pas trop en rapport avec la vidéo mais sur les études en informatique. Recommanderiez-vous des écoles d'ingénieurs privées comme Epita ou d'autres ? Je suis actuellement à la fac mais j'ai vu que les diplômes d'ingénieurs valaient plus et me pose la question de s'il serait intéressant d'aller en école d'ingénieur après ma L2 ou L3. Un ami en prépa me conseille de me préparer à fond pour essayer d'entrer dans une grande école mais le nombre de places étant extrêmement faible et la concurrence rude, ces écoles privées semblent être un intermédiaire, malheureusement je ne connais pas vraiment cet univers d'écoles privées et ai peur de perdre pas mal d'argent vu le prix de ces écoles. Auriez-vous quelques conseils ?

    • @mikaelpecyna5307
      @mikaelpecyna5307 Před rokem

      Salut, bon la réponse est surement trop tard, mais dans mon expérience, fuit ce genre d'ecole. C'est des merdes qui te font cracher de la thune pour un diplome "reconnu par l'etat" (diplome reconnu par le ministère du travail en général qui malgré ce que les écoles diront, sont moins bien que les ecoles d'ingénieur public, et ce ne sont pas des diplomes d'etat (diplome reconnu par l'etats =/= diplome d'etats)), tout ce que tu verras sur internet par rapport à ces ecoles sont des projet obligatoires des élèves pour faire de la propagande. Y'aurait pas de choses a dire sur ces merdes mais je pense que j'ai bien resumé partiellement

    • @Elta305
      @Elta305 Před rokem

      @@mikaelpecyna5307 Merci pour ta réponse, ce n'est pas trop tard heureusement ! Je suis en L2 actuellement et je pense m'inscrire à CyTech qui est une école d'ingénieurs publique (et gratuite pour les boursiers ce qui est mon cas). Ayant pas mal d'ingénieurs dans mon entourage, ils m'ont vivement recommandé d'aller en école d'ingé mais comme ce que tu as dis, j'ai entendu plusieurs personnes critiquer Epita, du coup je pense définitivement ne pas y aller, ou alors en 3ème choix après CyTech et la Sorbonne. (Ce sont les 3 rares écoles/université en ile de france à proposer un cursus en traitement et synthèse d'images)

  • @ric00998
    @ric00998 Před 6 měsíci

    Bonjour Guillaume. Merci pour ces vidéos. Vous parlez d'un livre sur le deep learning. Est-ce que c'est toujours d'actualité ou bien vous avez abandonné le projet ?

  • @mohammedelghandouri5713

    The best.

  • @akramkssiri2642
    @akramkssiri2642 Před rokem

    Bonjour , d'abord je vous remercie pour l'effort et le savoir partager dans cette formation fabuleuse. j'ai un peu de soucis de compréhension de la partie de forward propagation , ma question est la suivante : est ce que chaque neurone recoit tous les valeurs de dataset? Si oui quelle sera l'effet sur les paramètres w?

    • @mikaelpecyna5307
      @mikaelpecyna5307 Před rokem

      SI j'ai bien compris, seuls les neurones de couche 1 reçoivent les x1, x2,...xm de base. Ceux sdes couches 2,3,... recoivent des x qui ont été transformé par les neurones de la couche n-1

  • @benisonsimao688
    @benisonsimao688 Před 2 lety

    ce gars est un génie je ne suis pas un grand lecteur de livres mais vu ta manière d'expliquer si tu sors un livre je vais quand meme achéter

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Wow merci beaucoup ca me touche vraiment, et oui je vais sortir un résumé de toutes ces vidéos par écrit.

  • @irinam.7075
    @irinam.7075 Před 2 lety

    Bonjour, merci pour cette explication très détaillée des formules. On ne voit pas très bien les formules en bleu foncé, mais sinon c'est très bien. Avez-vous fait une vidéo avec l'explication de la rétropropagation du gradient sans formules, de la façon, dont c'était fait pour la propagation du gradient, avec une analogie de montagne ?

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Oups je vois votre commentaire avec beaucoup de retard ! Je vais songer a ne plus utiliser de bleu, et je vais essayer de faire une analogie poru la back-prop a l'avenir :)

    • @irinam.7075
      @irinam.7075 Před 2 lety

      @@MachineLearnia merci!

  • @martonroux9608
    @martonroux9608 Před 2 lety

    Bonjour! super vidéo comme d'habitude, mais j'ai une petite question: je ne comprends pas pourquoi on a fait disparaitre la somme allant de i=1 jusqu'à m de la formule de dZ2. On a gardé le 1/m en le rajoutant à chaque fois derrière dZ2, mais on n'a jamais fait réapparaitre cette somme, au contraire on l'a remplacée par la somme sur l'axe 1 mais uniquement à quelques endroits. Qu'en est-il de la somme qu'on avait au départ? Faudra-t-il l'ignorer aussi lorsqu'on mettra ces calculs sous forme de code?

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Bonjour, désolé pour ce manque de clareté. J'y ai répondu a plusieurs reprises dans les commentaires. Si tu ne le trouves pas, pas de panique, je vais mieux l'expliquer dans le livre que je vais bientot sortir sur le Deep Learning

    • @martonroux9608
      @martonroux9608 Před 2 lety

      @@MachineLearnia super merci!

  • @emjizone
    @emjizone Před 2 lety

    20:30 Aucun doute que faire "s'envoler les m" (cui, cui, cui... flap, flap, flap...) s'avère bien pratique.
    Néanmoins, pourrait-on expliciter la validité de ce remplacement d'un produit direct par un produit matriciel avec une transposée ? Qu'est-ce que ça représente en terme de dérivée ? J'essaye de me le représenter en termes plus géométriques mais ça ne me semble pas couler de source.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Bonjour, meme réponse que pour l'autre commentaire, je ferai a l'avenir une démonstration non vectorisée, puis je montrerai comment vectoriser le tout, et la il n'y a plus d'ambiguité

  • @aminemohamedannidam9621

    Salam pouvez vous m'aider pour faire scraping avec beautifulsoup

  • @naxos2662
    @naxos2662 Před 2 lety

    Bonjour, super vidéo. À plusieurs moments dans la vidéo tu changes l'ordre des termes et tu fais des transposition. J'ai du mal à comprendre comment ces changements ne modifie pas le sens des formules. Sinon tout est très clair et merci du travail qualitatif que tu fournis.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      C'est une question tres importante : Si je change l'ordre et que j'effectue des transposées, c'est justement pour que le "sens" des formules (pour repdrendre tes termes) soit le bon. Tu vois ce que je veux dire ? Sinon continue de me poser des questions

    • @naxos2662
      @naxos2662 Před 2 lety

      @@MachineLearnia oui je pense voire ce que tu dis. Pour vérifier les dimensions à droite et à gauche de l'égalité. De la même manière que l'on vérifie les unités en physique . Merci de ta réponse

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      @@naxos2662 Voila tout a fait !

  • @korosife
    @korosife Před 2 lety

    Quoi de mieux pour terminer dimanche 😊

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Ca fait bien plaisir :)

    • @korosife
      @korosife Před 2 lety

      @@MachineLearnia tout le plaisir est pour moi ❤️🙏🏿 un jour quand tout mes code seront opérationnelle , je te montrerai tout ce que tes vidéos mon apporter 😊
      Merci encore 🙏🏿❤️🕉️

  • @noel9335
    @noel9335 Před 2 lety +1

    Hello Guillaume,
    Désolé c'est le jour des questions : je dois être fatigué aujourd'hui. ;-)
    J'aimerai juste comprendre pourquoi le -1/m (négatif) devient 1/m (positif) dans les résultats.
    Merci pour ta réponse.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      je passe juste le m de l'autre coté de la somme.

  • @pierretizemha899
    @pierretizemha899 Před 2 lety

    Merci pour cette vidéo Guillaume. Tu restes toujours le meilleur. Je voudrais demander s'il est possible de faire sortir aussi des formules générales en utilisant RMSE et MSE comme fonctions coûts. Qu'est-ce qui est plus performant entre Log_loss et RMSE/MSE en terme de cost function?

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Hello ! il n'y a pas de plus performant. Log loss c'est pour les classification et MSE c'est pour les regressions

    • @pierretizemha899
      @pierretizemha899 Před 2 lety

      D'accord. Si je comprends maintenant lorsque je veux développer un modèle ANN pour des données ayant une évolution polynomiale, il est conseillé d'utiliser le MSE/RMSE. Mais dans le cas où mes données sont reparties en groupes, je dois utiliser la fonction Log_loss; merci beaucoup !

  • @yassinehmidy8435
    @yassinehmidy8435 Před 2 lety

    Salut, il n'y a pas d'histoire de broadcasting de y dans le calcul de dZ2 car la sortie d'un réseau de neurones doit toujours avoir la même dimension que la target.. ce qui est la cas également ici car n2 vaut 1, et non pas 3 comme tu le dis pour justifier le broadcasting de y. Merci pour tes vidéos ça doit te prendre beaucoup de temps de preparer tout ça :)

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      je n'ai plus ma vidéo en tete, je cros avoir déja répondu a cette question, et je crois que tu as raison en effet.

  • @pulsorion
    @pulsorion Před 2 lety +1

    ✔✔

  • @TheLeosa99
    @TheLeosa99 Před 2 lety

    J’ai bcp de mal à comprendre ce que contient la matrice de la dérivé de z2 par rapport à a1 précisément. Sachant que z2 n’est qu’une somme pondéré par différentes entrée et poids.

  • @abdelhafiddahhani2514
    @abdelhafiddahhani2514 Před 2 lety

    Je n'est pas compris pourquoi vous avez éliminer la somme au niveau dz2 et dz1, Si tu peux me donner un exemple concret svp :D

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      la dimension de dz1 et dz2 c'est n1, m et n2, m. Alors il ne faut pas faire de somme a ces endroits ( si tu fais une somme ca réduit forcément la taille)

  • @Hidensoul1
    @Hidensoul1 Před rokem

    Ça devient compliqué mais les explications sont irréprochables. Pédagogie +++. Merci pour cette série

    • @Hidensoul1
      @Hidensoul1 Před rokem

      J'aurais une question d'optimisation. Ici on génère une matrice de données X de dim(n°,m) avec n° le nombre de variables de nos données, et m le nombre de données. Cela peut représenter un nombre élevé de données stockées dans la mémoire vive. Ne faudrait il pas couper nos données X par paquets P, de manière à limiter cette sollicitation, en effectuant k apprentissages pour chaque paquet, tel que X=somme des Pi(n°,m/k), i allant de de 0 à k ?

  • @sidalibourenane5377
    @sidalibourenane5377 Před 2 lety

    quand va être sortir la 9 éme vidéo s'il vous plait ???

  • @herve952
    @herve952 Před 2 lety +1

    Je suis un peu perdu quand tu passe d'un produit "normal" entre deux matrice à un produit matriciel juste pour faire correspondre les dimensions, j'ai compris que la somme était retirée puis implicitement remise lors du passage au produit matriciel mais l'explication que tu nous donne semble incohérente.
    En plus, les étapes intermédiaires paraissent fausses pour moi, lors de la conversion de dz2 dans le calcul de dz1 tu passe en produit matriciel donc la somme et rajoutée, mais après lors de l'utilisation de dz1 dans le calcul des gradiants un nouveau produit matriciel est introduit donc une nouvelle somme et je ne comprends pas d'où tout ca sort.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      J'aimerais bien t'aider a mieux comprendre ce que j'ai fait, pour ca pourrais-tu me donner l'exemple de l'endroit exact que tu ne comprends pas ?
      Essaie de lire ma réponse a Doryann GARTNER, elle apporte beaucoup de précisions sur tout ca

  • @khadijazenai7194
    @khadijazenai7194 Před rokem

    👏👏❤❤🙏🙏🙏🙏

  • @issamkoubaa3974
    @issamkoubaa3974 Před 2 lety

    mon souhait, est que mon fils devient un jour comme vous :) pour moi c'est trop tard. ...

    • @MachineLearnia
      @MachineLearnia  Před 2 lety

      Eh bien je ne sais quoi dire ! je suis honnoré ! Je vous souhaite tout le succes que vous méritez.

  • @karimel-mesbahi8534
    @karimel-mesbahi8534 Před 2 lety

    Je veux vous contacter
    Pouvez vous me donner un outil pour vous contacter et merci monsieur.

  • @doryanngartner2660
    @doryanngartner2660 Před 2 lety +1

    Salut !
    J’avoue que je suis perdu dans ce que tu fais sur plusieurs truc 😵‍💫
    Déjà, j’avais fais l’exo et j’avais trouvé la même chose que toi sur dZ2 (sauf que j’ai pas retiré la somme) donc je comprend pas pourquoi tu la retire, on a le droit de faire ça ? Mathématiquement c’est plus bon, si ?
    Ensuite, j’ai du mal avec la distinction de somme et de produit matricielle ou terme à terme ; on a pas le droit de faire un produit « terme à terme » sur des matrices, si ? Si tu as des liens pour ça, je suis preneur
    De même tu rajoute des transposé sur les valeurs pour faire correspondre aux dimensions mais il me semblais qu’on avait pas le droit d’ajouter des opérations comme ça, ça change les calculs 😵‍💫😵‍💫
    Idem, pour dZ1, tu change l’ordre entre W2 et dZ2, or le produit matricielle n’est pas commutatif, pourquoi ça marche ?
    Désolé de te bombarder de question comme ça, mais je suis largué sur tout ça. Je me doute que ce n’est pas juste une question de rigueur puisqu’autrement les dimensions ne correspondent pas mais là j’ai l’impression que c’est des changements un peu sortis de nulle part.
    A part ça, merci beaucoup pour cette vidéo, toujours autant de qualité 👍

    • @doryanngartner2660
      @doryanngartner2660 Před 2 lety

      Aussi (désolé d’en rajouter 😭) mais quand tu fais la somme pour dL/db2, tu dis que c’est sur l’axe 1 mais ce n’est pas sensé être la somme des matrices unes à unes ?

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +4

      Salut ! Désolé si tout n'a pas été clair. Je vais tenter de repondre a toutes tes questions.
      1) Si tu fais la somme des élements de dZ2, réfléchis a la dimension du tableau que tu obtiens : soit tu fait la somme de tout le tableau, donc tu obtiens un nombre réel (or Z2, et donc dZ2 ne sont pas des nombres réels, ce sont des tableaux de nombre). Si tu fais la sommes sur les lignes, pareil tu obtiens un tableau plus petit que dZ2, et de meme pour la somme des colonnes.
      2) C'est ce qu'on appelle le produit de Hadamard (regarde sur google). Et pour le faire, il faut que tes matrices aient la meme dimension.
      3) On peut parfaitement mettre une transposée parce que de base notre calcul est FAUX, donc on l'arrange pour qu'il soit correct. En réalité, j'aurais peut-etre du vous montrer le contenu des matrices dW1, dW2, dZ1, dZ2 pour que vous voyez qu'en fait on y retrouve les différents éléments (par exemple le tableau A qui est transposé etc). Je l'avais fait dans la vidéo 4 et je pensais que ca irait pour celle-ci mais apparemment non ^^
      4) pour dZ1 = W2T . dZ2 x A1 x (1-A1) c'est la meme chose qu'au dessus. C'est la le calcul exact. Certe le produit matriciel n'est pas commutatif, mais en réalité celui des dérivées l'est (et c'est la le piege) : Par exemple on écrit dL/dW2 = dL / dA2 x dA2 / dZ2 x dZ2 / dW2, Cependant qui dit que cet ordre est le bon ? On peut tres bien échanger commuter les termes de cette multiplication, tu vois ce que je veux dire ?
      5) Pour ta derniere question (dL/db2) On fait la soustraction terme a terme entre A2 et y, Et ENSUITE on fait la somme des colonnes du résultat de cette soustraction, tu vois le truc ?
      T'inquiete pas pour tes questions, elles sont bonnes. C'est dommage qu'on puisse avoir l'impression que les résultats sortent de nul part, car en fait ils sont tout a fait correct et il n'y a aucune magouille dans tout ca, J'ai juste tenté de garder la video simple mine de rien (pas qu'elle dure 2 heures non plus en montrant le contenu de chaque matrice, car je l'ai déja fait dans la vidéo 4)

    • @doryanngartner2660
      @doryanngartner2660 Před 2 lety

      @@MachineLearnia Merci BEAUCOUP pour toutes ces explications, c’est vraiment très gentil à toi d’avoir pris du temps pour me répondre ☺️
      Je t’avoue maintenant que certaines de tes réponse m’amène une dernière question (désolé 😭) : Comment sait-on ? Comment sait-on qu’à tel moment on fait un produit matricielle ou un produit Hadamard ? Comment sait-on qu’une somme s’effectuera entre les colonnes et non terme à terme sur les matrice ? Pour le reste (la commutativité, le « droit » de faire tel ou tel chose, je crois avoir compris qu’il était nécessaire de faire un travail en amont sur les dimensions tant que notre calcul le permettait)

    • @doryanngartner2660
      @doryanngartner2660 Před 2 lety

      Pour la somme, je suis bête je crois 🤦
      Je me suis laissé avoir par le fait qu’il s’agisse de la somme des éléments allant de i=1 jusque m. J’étais parti sur la somme globale entre les matrices 🤦

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      @@doryanngartner2660 Pas de probleme. On le "sait" en regardant ce qu'on cherche a obtenir (comme dit dans mon message du dessus) -> Tu veux une matrice dW2 Qui contient toutes les dérivée partielle de L par rapport a W2. A quoi est égale cette matrice, si tu développes tous les éléments a l'intérieur ? et bien on aura ca :
      (dans le cas d'un seul neurone dans la couche 2, pour faire simple) :
      1 / m * sum_i (a[2]_i - y_i ) * w[2]_11
      1 / m * sum_i (a[2]_i - y_i ) * w[2]_12
      1 / m * sum_i (a[2]_i - y_i ) * w[2]_13
      1 / m * sum_i (a[2]_i - y_i ) * w[2]_14
      .....
      1 / m * sum_i (a[2]_i - y_i ) * w[2]_1n[1]
      A partir de la tu décomposes le calcul comme je l'ai fait dans la vidéo 4.

  • @emjizone
    @emjizone Před 2 lety +1

    16:41 Cette histoire d'"extraire" la somme puis de la "réinjecter", c'est quand même un peu fumeux d'un point de vue explicatif, non ? (même si valide en pratique).
    En privé, je me permet d'expliquer ça avec:
    - Une équation entre une somme de dérivées et une dérivée de somme.
    - La distributivité du produit sur l'addition
    ... et espère ne pas me fourvoyer tout en regrettant une explication vraiment mathématique.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +2

      le seul moyen que je vois, c'est de refaire le tout sans passer par la vectorisation dans un premier temps, pour ensuite montrer aux gens comment revectoriser le résultat. C'est donc ce que j'ai prévu de faire dans le livre que je vais sortir et qui résumera toutes mes vidéos

    • @emjizone
      @emjizone Před 2 lety

      @@MachineLearnia Très bonne initiative.
      Je prend ça comme un exercice dont votre livre sera un corrigé. :)

    • @pkparceque3485
      @pkparceque3485 Před rokem

      Hello@@MachineLearnia merci pour ton travail. Ton livre est-il sorti ?

  • @abellematheux7632
    @abellematheux7632 Před 2 lety

    Petit message pour les gens de l'espace commentaire : il (Mr Guillaume, si c'est bien son nom) lit les commentaires pour y répondre, donc je pense que c'est une bonne idée de ne pas commenter inutilement la vidéo afin d'alléger son travail.

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +2

      Bonjour et merci pour votre préoccupation, mais j'aime répondre vraiment a tous les commentaires, meme s'il n'y a pas de question dedans. D'autant plus que si personne ne mettait de merci sous cette vidéo, il n'y aurait presque aucun commentaire, j'en serais bien triste ^^

    • @abellematheux7632
      @abellematheux7632 Před 2 lety

      @@MachineLearnia D'accord, c'est noté.

  • @nhproduction4376
    @nhproduction4376 Před 2 lety +1

    Alors autant je comprends pourquoi tu transposes les matrices, autant je trouve ca un peu bizarre et incongru de "retirer", puis "remettre" tranquillement la somme la ou tu le veux... et je découvre aussi que maintenant on peut faire le produit matriciel ou une simple multiplication terme par terme, comme ca nous arrange selon le cas... J'avoue que tu m'as perdu sur cette vidéo :/
    De base j'avais carrément développé les expressions et j'étais parti loin ! genre j'avais des matrices inverses et tout. En soi j'ai eu juste sur la première et je comprends aussi pourquoi W2 et A1 apparaissent, mais pour le reste je suis largué

    • @MachineLearnia
      @MachineLearnia  Před 2 lety +1

      Vous avez été 2-3 a ne pas tout comprendre a ce que j'ai fait, donc tu n'es pas le seul, j'ai peut-etre été trop rapide ici. Je t'invite a lire le commentaire que j'ai laissé qui parle de tout ca en détail, systematiquement les gens ont compris apres ca.

  • @Coco83-wi3ul
    @Coco83-wi3ul Před rokem +1

    Bravo pour ces cours et tout le travail que cela représente ! Ils sont très bien faits, vous êtes fort sympathique et très pédagogue ! Si l'on pouvait noter sur 20, je vous donnerais 18 ou 19. Malheureusement, dans cette vidéo n° 8, j'ai trouvé vos développements mathématiques un peu bricolés avec un manifeste manque de formalisme : mélange entre les types de produits, des sommes qui disparaissent, des transpositions miraculeuses, bref, sans vouloir pinailler, je n'ai pas retrouvé de rigueur mathématique... Ne pouvant vous donner 18 ou 19/20, j'ai été obligé de mettre un pouce vers le bas pour attirer votre attention !