PYTHON NUMPY BROADCASTING (13/30)

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 พ.ย. 2024

ความคิดเห็น • 201

  • @ayoubalimoussa4689
    @ayoubalimoussa4689 ปีที่แล้ว +4

    je ne sais pas comme à vous remercier, mais je tiens vraiment à vous dire merci. ce que vous nous présentez est très intéressant pour tout les étudiants en ingénierie informatique.

  • @adrienalbarazi8340
    @adrienalbarazi8340 4 ปีที่แล้ว +4

    "Si ça c'est pas un belle line! " j'adore :)
    Merci Guillaume pour votre travail et votre temp. votre façon d'expliquer vos idées est irreprochable
    vous avez rendu l'apprentissage de Machine Learning accessible à tous. Merci

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Merci beaucoup, ca me fait très plaisir de lire vos compliments :)

  • @MachineLearnia
    @MachineLearnia  5 ปีที่แล้ว +9

    Timecode de la vidéo:
    00:32 Qu'est ce que c'est le Broadcasting ? Pourquoi Numpy est si PUISSANT ?!
    01:46 Les règles du broadcasting: meme dimensions ou dimension = 1
    05:19 Mini exercice de broadcasting
    07:27 Exemple en Machine Learning (DANGER)
    10:49 Corrigé exercice de la dernière vidéo
    12:45 BILAN sur NUMPY

  • @2msynergygroup
    @2msynergygroup 2 ปีที่แล้ว

    Excellent formateur. Merci beaucoup

  • @pierrebruzac6908
    @pierrebruzac6908 3 ปีที่แล้ว +6

    Merci pour cette vidéo de qualité. C'est toujours avec plaisir que je te regarde ! (On sent le passionné qui est en toi !!!)

  • @master-tech1815
    @master-tech1815 4 ปีที่แล้ว

    Voilà un Monsieur Qui maîtrise bien ce qu'il fait, vous êtes mon meilleur

  • @OuahibaBOUGLIMINA
    @OuahibaBOUGLIMINA 6 หลายเดือนก่อน

    Vraiment ! un grand travail. excellente méthodologie d'expliquer les choses .you are the best teacher

  • @melodie6948
    @melodie6948 4 ปีที่แล้ว +5

    J'adore le super acteur à 03:40 :) :)
    Merci bcp pour toutes ces vidéos! J'ai remplacé Netflix par cette série de vidéo!!!!! :)

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +2

      Ahaha ! J'avais oublié ça ! Mettre de coté les distractions pour se consacrer à son développement personnel ! BRAVO ! tu iras loin ;)

    • @melodie6948
      @melodie6948 4 ปีที่แล้ว

      @@MachineLearnia Mercii!! Je l'espère !! :) :)

  • @REN_CODE56
    @REN_CODE56 6 หลายเดือนก่อน +1

    Salut jai 14ans je suis en 3eme j'adore le code et l'ia ce que tu fais est super intéressant ça me permet d'apprendre ce que j'adore et pouvoir m'améliorer tu expliques super bien ! Merci beaucoup

  • @maryemroussafi4598
    @maryemroussafi4598 9 หลายเดือนก่อน

    merci pour cette formation vraiment grace a toi j'ai compris beaucoup de chose

  • @s.k.8615
    @s.k.8615 ปีที่แล้ว

    Juste incroyable, j'ai envie de taper à la main mille merci après chaque vidéo...

  • @hubertorhant8884
    @hubertorhant8884 ปีที่แล้ว +6

    Encore un record de clarté pédagogique ! Jusqu'où iras tu ? Mils mercis 💥

  • @zakariabougassa3092
    @zakariabougassa3092 2 ปีที่แล้ว

    Merci infiniment pour ces videos de grande qualité

  • @mohammedbellahcene9508
    @mohammedbellahcene9508 3 ปีที่แล้ว

    merci pour ce cours qui est très bien expliqué et félicitation pour cette intervention de très haut niveau

  • @souery6280
    @souery6280 3 ปีที่แล้ว +1

    Je vous adore et j'adore énormément tous vos vidéos, sachez que vous êtes génial !

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว +2

      Merci beaucoup ca me fait tres plaisir :)

  • @sohaibeboss
    @sohaibeboss 2 ปีที่แล้ว

    What a great course. This content shouldn't be free

  • @darkmessiah8087
    @darkmessiah8087 ปีที่แล้ว

    Merci beaucoup pour ces explications très limpides et cette approche pédagogique, excellente vidéo !

  • @jean-louissornay2756
    @jean-louissornay2756 2 ปีที่แล้ว

    bonjour, merci pour cette vidéos qui me permet de progressé dans mon apprentissage du machine learning. je suis à la retraite mais je me passionne pour cette technologie depuis quelques temps, merci encore pour ton aide.

    • @MachineLearnia
      @MachineLearnia  2 ปีที่แล้ว

      Merci pour le message. Je suis ravi de voir que des gens qui sont a la retraite s'intéresse a cela ! (vous n'etes pas le premier dans ce cas sur la chaine youtube!)

  • @florianraulet8910
    @florianraulet8910 4 ปีที่แล้ว

    Salut Guillaume, avec mon pote d'école d'ingénieur (une ccp comme la tienne) on voulait apprendre le machine learning pour un projet qu'on a en commun, sans trop savoir par quoi commencer, et grâce à toi on se découvre une nouvelle passion pour la chose, après avoir toujours eu l'impression de s'être farci maths sup/spé pour ne jamais voir d'utilisation concrète de toutes ces connaissances. Et maintenant c'est enfin le cas. AU fur et a mesure qu'on apprend avec tes vidéos on pense tous les deux de plus en plus à se "réorienter" dedans tellement c'est passionnant. Donc merci pour tout, et on espère que tu vas continuer à nous apprendre des trucs parce que faire sans tes vidéos maintenant ça serait un sacré contre-temps, et merci pour cette incroyable pédagogie, j'ai partagé tout ça autour de moi ! :D

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Merci beaucoup Florian ! Je me reconnais un peu dans ton histoire : quand j'ai découvert le Machine Learning en prépa j'ai tout de suite accroché et ça m'a permit de mieux comprendre certaines choses comme les valeurs propres et les vecteurs propres.

    • @florianraulet8910
      @florianraulet8910 4 ปีที่แล้ว

      @@MachineLearnia c'est pour ça que t'as l'air déjà si qualifié et expert à seulement 26 ans?

  • @jamesmaxwell_it
    @jamesmaxwell_it 3 ปีที่แล้ว

    J'ai commencé en écrivant du code en hexadécimal et avec les mémoires ne dépassant pas le mégaoctet.. je crois qu'il y a autant d'écart avec l'actuelle puissance de python que les lances des premiers hommes et la tsar Bomba ... excellente vidéo , très intéressant..et j'arrive à peu près a comprendre c'est très plaisant pour mon âge canonique....j'imagine dans seulement 10 ans .....merci pour votre travail

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      Bonjour et merci pour votre commentaire, c'est un honneur de recevoir un message de la part d'une personne avec autant d'expérience ! :)

  • @gazdallahamira2765
    @gazdallahamira2765 3 ปีที่แล้ว

    J'ai jamais vu un formateur aussi cool comme vous!!
    Je suis in love avec votre méthode d'explication.
    Pouvez vous faire un vidéo d'un projet de machine learning ?
    Merci beaucoup pour votre effort!

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      Merci, je suis flatté ^^
      Oui j'ai fait des projets dans la suite de la série.

  • @amidunet
    @amidunet หลายเดือนก่อน

    Merci , explications géniales ! bravo ! Il est indiqué en début de vidéo qu'en C++ on serait obligé de faire une boucle for pour additioner deux tableaux, mais si on utilise une librairie comme Eigen on peut tout à fait faire A + B.

  • @ld2037
    @ld2037 ปีที่แล้ว

    j aime beaucoup votre chaine tres instructive et j aime aussi votre musique d intro et de conclusion

  • @pulsorion
    @pulsorion 5 ปีที่แล้ว +3

    Super intéressant comme d'hab !

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +1

      Merci, c'est une bonne nouvelle ! :)

  • @amyd.2840
    @amyd.2840 5 ปีที่แล้ว +3

    Merci pour cette vidéo, super qualité comme toujours :D

  • @gregcole2740
    @gregcole2740 3 ปีที่แล้ว

    tout simplement parfait ! Merci !!!

  • @Gravenilvectuto
    @Gravenilvectuto 5 ปีที่แล้ว +5

    Commentaire

  • @belkassem06
    @belkassem06 5 ปีที่แล้ว +21

    Comme expected Merci pour cette video. You're the MAN.
    J'ai une question et une requete:
    Question:
    Quelle application utilises-tu pour faire tes videos (specialement montrez les exemples sur l'ecran a bandeau bleu en haut ET taper les codes en meme temps?).
    Pour moi la meilleure facon de savoir si j'ai compris c'est reprendre tes videos dans la peau du professor, dans mes propres mot. alors si je reecoute et suis satisfait alors je passe sur la lecons suivante, ELSE je reprend la boucle.
    Suggestion:
    Pourrais tu nous faire une serie sur OPENCV aussi si le temps te le permet un peu plus tard?
    The neural network et les computer vision field m'interessent a plus d'un point.
    Chacun a ses propres motivations en venant suivre tes explications ici. Pour moi le cancer m'a pris un etre tres cher et pour le reste de ma vie il(cancer) payera pour cela. Si un jour on le detecte plus tot ou meme predire son arrivee (ce que je crois possible avec l'IA) alors il ne fera plus du mal a un autre en ce moment je dormirais tranquille. Ca prendra le temp que ca prendra.
    Merci pour tes cours ca vaut de l'or crois moi.

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +17

      Merci beaucoup pour ton commentaire ! un GRAND BRAVO pour ton engagement contre le cancer, je suis désolé pour ton proche. Oui le Deep Learning et le Machine Learning nous aide aujourd'hui pour prédire plus tôt certains cancers, dont le cancer du sein (le MIT a publié les résultats de leur recherches il y a quelques temps déjà) on espère tous que nous combattrons le cancer avec ça. Il ne faut pas hésiter à faire un don pour aider la recherche !
      Pour répondre à tes questions:
      1) Pour faire mes vidéos j'utilise Adobe Premiere Pro. Les graphiques sont en réalité fait sur power point et je fais un montage (parfois long ^^) pour intégrer le code avec et rendre ça plus ludique pour vous.
      -> Je mettrais tout le powerpoint accessible sur mon site Internet à la fin de la formation !
      2) Oui je ferai une série sur OPENCV à l'avenir, ca fait parti de mes plans :)
      Merci et à bientôt ! Bon courage dans ton apprentissage :)

  • @nzakiesembongoarlain2513
    @nzakiesembongoarlain2513 4 ปีที่แล้ว +1

    Merci,
    je aimerai que vous fassiez si possible un cours complet sur les réseaux de neurones, j'ai assisteé beaucoup de cours sur youtube, mais sans flatterie vous êtes le meilleur,
    vraiment c'est mon avis

  • @maximebonneau9685
    @maximebonneau9685 4 ปีที่แล้ว

    Génial merci Guillaume

  • @louaykhammar7268
    @louaykhammar7268 3 ปีที่แล้ว

    Merci pour cette vidéo, super qualité comme toujours

  • @mohamedgarmouma1541
    @mohamedgarmouma1541 4 ปีที่แล้ว

    Merci infiniment Guillaume

  • @yahiabammoune1716
    @yahiabammoune1716 2 ปีที่แล้ว

    merci pour la qulité de vos tutos

  • @sanouba7779
    @sanouba7779 ปีที่แล้ว

    encore une fois merci

  • @babeboom63
    @babeboom63 4 ปีที่แล้ว

    merci pour ce beau resumer ❤

  • @adyfall8319
    @adyfall8319 3 ปีที่แล้ว

    Merci beaucoup!

  • @Marie-OdetteATONDE
    @Marie-OdetteATONDE ปีที่แล้ว

    Merci pour tout😊

  • @aliounebadaraibnabutalibdi9095
    @aliounebadaraibnabutalibdi9095 6 หลายเดือนก่อน

    un grand merci

  • @kaistaboubi9146
    @kaistaboubi9146 4 ปีที่แล้ว

    merci infiniment pour ces vidéos, c'est vraiment très très intéressantes, vous fêtes bcp d'efforts. J'ai bcp aimé cette formation.
    SVP, et pour la corection de l'exercice de Standardisation d'une matrice (tableau NdArray),
    Au début, j'ai fais cette solution qui n'a pas donné les bons résultats:
    np.random.seed(0)
    A=np.random.randint(0,100,[10,5])
    A
    for j in range(A.shape[1]):
    moyenne=np.mean(A[:,j]);print(moyenne)
    ecart=np.std(A[:,j]); print(ecart)
    for i in range(A.shape[0]):
    A[i,j]=(A[i,j]-moyenne)/ecart
    Par contre et lorsque je mets le résultat dans une autre variable B, ca fonctionne correctement. Voiçi la solution est:
    B=np.zeros((10,5))
    for j in range(A.shape[1]):
    moyenne=np.mean(A[:,j])
    ecart=np.std(A[:,j])
    for i in range(A.shape[0]):
    B[i,j]=(A[i,j]-moyenne)/ecart
    B
    La question est: pourquoi le changement sur les cases de la matrice A ne se faitent pas correctement, et pourquoi la necessité d'utiliser un tableau intermediaire B,
    Les NdArray sont mutables n'est ce pas?
    et merci bcp d'avance.

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Bonjour ! Tres bonne question et voici la réponse :
      Votre code ne contient pas d'erreur, c'est simplement que le tableau A a été initialisé pour etre de dtype = int.
      Voila pourquoi si vous effectué des calculs sur A, alors les résultats sont stocké sur la mémoire int
      Votre standardisation a donc bien fonctionné, mais les résultats sont arrondit pour etre contenu dans la mémoire dédiée au tableau A.
      A l'inverse, le tableau B est un tableau de dtype float, (quand on utilise np.zeros() cela nous donnes des float)
      Voila pourquoi vous obtenez les résultats avec décimales.
      Pour corriger tout cela en utilisant seulement le tableau A, vous pouvez faire la chose suivante :
      np.random.seed(0)
      A=np.random.randint(0,100,[10,5]).astype(np.float32) # voici la seule ligne que j'ai changé dans votre code
      print(A)
      for j in range(A.shape[1]):
      moyenne=np.mean(A[:,j]);print(moyenne)
      ecart=np.std(A[:,j]); print(ecart)
      for i in range(A.shape[0]):
      A[i,j]=((A[i,j]-moyenne)/ecart)
      print(A)
      Je vous invite a voir les videos sur Pandas et Sklearn, elles seront également utiles :)
      A bientôt et je reste disponible pour toute question ! :)

    • @kaistaboubi9146
      @kaistaboubi9146 4 ปีที่แล้ว

      @@MachineLearnia Bravooooooooooooo, et merci

  • @josephwandji8621
    @josephwandji8621 4 ปีที่แล้ว

    Un pur regal

  • @florentwinamou6650
    @florentwinamou6650 3 ปีที่แล้ว

    honnêtement celui qui suit cette chaine et ne comprend rien ici, je ne sais pas ou il comprendra encore !!

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      Merci pour votre commentaire ! ^^

  • @GuilhermeZip
    @GuilhermeZip 4 ปีที่แล้ว

    Parfait! Merci beaucoup

  • @mauriceguizard8813
    @mauriceguizard8813 4 ปีที่แล้ว

    Houlala , c'est un peu la 4ème dimension , tout s'explique tant que les 2 dimensions sont présentes , après avec la notation (1,) ou (x,) et x est égal aux colonne de l'autre matrice ...on ne joue plus avec des matrices , mais avec une espèce de liste qui peut produire n'importe quelle matrice carré
    Ta solution l'exercice en est une bonne démonstration. Pour avoir comparé cela avec ma méthode (classique)
    for i in range(b):
    for j in range(a):
    E[j,i]= (D[j,i]-D.mean(axis=0)[i])/D.std(axis=0)[i]
    la tienne est au moins 20 fois plus rapide, donc jouer avec le feu est vraiment intéressant (mais quelle souffrance de mise au point en perspective).
    Merci d'avoir appuyé sur ce qui ... fera mal

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      Tu as l'intelligence de comprendre que en effet les dimensions des tableaux numpy vont un jour ou l'autre te poser probleme, mais ce n'est pas un "Big Deal" comme on dit, on détecte le probleme rapidement, et Python nous indique souvent dans ses erreurs qu'il faut parfois utiliser un reshape ou bien un squeeze (selon le contexte) :)

  • @Siamon34
    @Siamon34 4 ปีที่แล้ว

    Encore une fois super vidéo j'ai bien compris le problème des dimensions de tableau et l'interet de reshape surtout!
    Le broadcasting j'ai pas encore trouvé de moyen de m'en servir là comme ça mais j'ai hâte de voir la suite.
    J'espère que ta chaine va continuer longtemps si t'as un Tipee je participerais dessus quand j'aurais tout terminé :D
    Ma proposition de resultat pour l'exercice precedent:
    def standardization (Ex):
    meanEx = Ex.mean(axis=0)
    StdEx = Ex.std(axis=0)
    ExmeanEx = Ex-meanEx
    standEx = ExmeanEx/StdEx
    print(standEx)
    standardization(Ex)
    comme ca jpeux même standardiser quand je veux un tableau maintenant ;p (enfin jcrois j'ai pas essayé :) )

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Salut et merci beaucoup ! Oui tu verras on se sert du broadcasting très souvent par la suite (en fait c'est tout le temps implémenté dans les librairies comme Sklearn ou le calcul matriciel est déjà implémenté pour faire des algorithmes de Machine Learning)
      Ta fonction est valide, mais elle a le petit défaut d’être écrite sur beaucoup de lignes, alors qu'il suffirait d'en écrire une ou deux (mais ce n'est pas grave, tu peux déjà te féliciter d'avoir fait l'exercice, c'est bien !) Comme d'habitude tu pourras trouver la réponse dans la vidéo suivante.
      Donc oui tu peux standardiser des dataset, bravo ! Dans la pratique on utilisera les fonctions toutes prêtes de Sklearn pour faire des opérations de normalisation (MinMaxScaler, StandardScaler, etc.) tu vas adorer, j'en suis sur ! ;)
      J'ai en effet un Tipeee, et également un serveur discord sur lequel tu es invité : il y a d'autres data scientists et nous discutons de projets, nous répondons aux questions etc. (et je te remercie d'avance si tu me soutiens un jour sur Tipeee)

  • @mimanehichem586
    @mimanehichem586 3 ปีที่แล้ว

    Merci énormément

  • @automaticien-y6g
    @automaticien-y6g 2 หลายเดือนก่อน

    merci bcp

  • @pseudounknow5559
    @pseudounknow5559 3 ปีที่แล้ว +1

    13 vidéos en 1 jour je suis épuisé je finirai la série demain après les cours haha

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      13 vidéos en 1 JOUR ! Mais WOW ! Je pensais pas que c'était possible sérieusement je rigole pas ! Ta motivation m'impressionne, je vais en prendre de la graine.

  • @TBaguette
    @TBaguette 4 ปีที่แล้ว

    Cette série de vidéos est une véritable mine d'or ! Un énorme Merci pour la qualité que tu offres. Il y a des tonnes de cours payants qui n'arrivent pas à la cheville de ta série sur le Machine Learning, j'ai vraiment l'impression de tout apprendre à vitesse grand V.
    Petite question : est-ce que tu aurais des idées de projets à essayer une fois toute cette série terminée ? Peut-être en proposes-tu déjà dans une vidéo plus loin mais je voulais être sûr de pouvoir pratiquer dès que j'ai fini ta série.
    Encore Mille Mercis, je sais même pas comment te remercier assez, t'as pas idée. Les non-francophones ont de quoi nous envier ta série de vidéos sur le ML sans même le savoir.

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Merci beaucoup ton message me fait très plaisir :) Je fais de mon mieux pour aider les gens gratuitement avec tu contenu unique !
      Pour t'entrainer, je te conseille de te rendre sur le site Kaggle.com et d'essayer de résoudre le dataset du titanic et celui de la prédiction immobiliere. Mais en effet nous allons faire des projets ensemble sur la chaine youtube (a partir de la video 26/30 qui est pour bientot !) Sinon a l'avenir je vais faire beaucoup de videos projet.
      PS : si tu veux me soutenir, je dispose d'une page tipeee sur laquelle j'offre quelques videos Bonus, mais surtout ne te sens pas obligé ! ^^
      A bientot, et si tu as la moindre question, n'hésite pas !

    • @TBaguette
      @TBaguette 4 ปีที่แล้ว

      ​@@MachineLearnia Merci beaucoup, je vais check ça au plus vite ! Je suis fauché actuellement mais si j'arrive à obtenir un boulot ça sera en partie grâce à toi donc je te revaudrai ça dès que je peux. :)

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      @@TBaguette Si tu arrives a trouver un travail grace a mon aide, fais le moi savoir, ca me fera tellement plaisir ! C'est bien plus important de savoir que j'aurais pu aider quelqu'un a changer de vie ! :D

  • @darkiche3689
    @darkiche3689 3 ปีที่แล้ว

    Merci encore ! :D

  • @ggidf4118
    @ggidf4118 ปีที่แล้ว +1

    Je découvre tes formations et j'adore ! Petite question : il y a-t-il un ordre dans lesquelles les suivres? Je suis actuellement sur cette playlist python ML, est il conseillé de terminer la formation ML d'abord? Merci d'avance si jamais tu vois ce com !

  • @leo_drouin
    @leo_drouin 4 ปีที่แล้ว +3

    Bonjour Guillaume,
    J'ai une petite question sur la manière de profiter au mieux de ton travail. Tu penses qu'il est plus intéressant de suivre cette série, puis ta série machine learning, de faire l'inverse, ou de suivre les deux en parallèles?
    Et sinon merci pour ce que tu fais c'est super ;-)

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +5

      Tres bonne question. Je pense qu'il est mieux de regarder cette série. Je vais faire une autre série sur les bases mathématiques des algorithmes a l'avenir qui remplacera la série ML que j'avais commencé par le passé

  • @vgflyway1063
    @vgflyway1063 3 ปีที่แล้ว

    Tu es trop fort

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      Bonjour, la formation est disponible sur TH-cam Gratuitement, je dois juste sortir les autres épisodes, qui arrivent rapidement

  • @nekro3115
    @nekro3115 4 ปีที่แล้ว

    super,hate d'attaquer la suite ! :D

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      Ta motivation est légendaire, bravo ! :D

    • @nekro3115
      @nekro3115 4 ปีที่แล้ว

      @@MachineLearnia en espérant que sa dure après la rentrée -_-

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      @@nekro3115 Mais oui ! Courage !

  • @abderrazakcroxup321
    @abderrazakcroxup321 5 ปีที่แล้ว

    great teacher ;)

  • @noreddinektn9414
    @noreddinektn9414 2 ปีที่แล้ว

    bonjour guillaume pouvez vous nous faire une vidéo sur sklearn.decomposition et différents algorithme comme ica,pca ..ect merci

  • @sbdz-vs2mb
    @sbdz-vs2mb 6 หลายเดือนก่อน

    Hello,
    Tout d'abord Merci !
    Est ce que vous avez des conseils pour apprendre les mathématiques pour bien maîtriser l'ia à partager ?

  • @Francois92
    @Francois92 3 ปีที่แล้ว

    J'avais résolu l'exercice de standardisation avec 2 boucles for, là je vois qu'avec le broadcasting 1 seule ligne suffit. Bon j'ai pas très bien compris la notion de reshape je vais approfondir ! Merci pour tes vidéo et pour les exercices et aussi l'essentiel à retenir.

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      Bien joué.
      reshape c'est juste pour redimensionner un tableau. Et parfois c'est important de bien préciser que les dimensions d'un tableau sont (100, 1) au lieu de (100, ).
      Ca confirme qu'il y a 2 dimensions sur le tableau et qu'il ne s'agit pas simplement d'une chaine de valeur.

  • @alaincharbonneau3622
    @alaincharbonneau3622 3 ปีที่แล้ว

    Bonjour,
    Bravo pour ces vidéos, qui vont au coeur du sujet. J'ai une question concernant la syntaxe des méthodes, manipulation numpy . Dans votre résumé, par exemple, vous employez A.concatenate (axis) au lieu de np.concatenate ((A,B)). Je ne comprends pas comment la première forme fonctionne. Aussi, dans les méthodes, quelle différence y-a-t-il entre, par exemple, A.mean(axis=0) vs np.mean (A,axis=0). Merci

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      Bonne question, c'est juste une redondance dans la librairie de Numpy, Vous pouvez parfois trouver des fonctions : np.mean() et des méthodes : A.mean() que l'on applique directement sur l'objet en question. Le résultat est le meme, ne vous prenez pas la tete ^^

  • @cheikhaziz
    @cheikhaziz 2 ปีที่แล้ว

    Like it🥰

  • @manu_n_attend_plus
    @manu_n_attend_plus 3 ปีที่แล้ว

    Travail vraiment incroyable ! Bravo et merci !
    J'ai du mal à comprendre les tableaux avec la shape suivante : (x,). C'est un tableau à 1 dimension ?
    Pourtant le tableau : A = np.array([1,2,3]) qui a une shape de (3,) devrait être de dimension 3 non ?

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว +1

      Non c'est bien un tableau a 1 dimension, il s'agit d'un vecteur qui comprend 3 valeurs.

  • @LMGaming0
    @LMGaming0 4 ปีที่แล้ว

    Perfect !

  • @pierremonroux9859
    @pierremonroux9859 4 ปีที่แล้ว

    Super vidéo claire et intéressante. Serait il possible que tu donnes accès en description à la fiche bilan.

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      Oui je vais tenter de la retrouver dans mes dossiers

  • @madiounimohsen6956
    @madiounimohsen6956 3 ปีที่แล้ว

    Bonsoir Guillaume
    j'ai essayer de travailler l'exercice et voici ma réponse
    N=np.zeros((A.shape[0],A.shape[1])
    for i in range (A.shape[1]) :
    N[:,i]=(A[:,i]-A[:,i].mean())/A[:,i].std()
    N
    elle donne les meme resultats peut etre en terme de complexité algo et plus élevée .

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      En effet c'est un bonne réponse, mais vous gagnerez en temps, en efficacité et en simplicité si vous adoptez la technique de "Broadcasting" de Numpy. Dans tous les cas, bravo d'avoir résolu l'exercice !

    • @laudgut5291
      @laudgut5291 หลายเดือนก่อน

      N=np.zeros((A.shape[0],A.shape[1])
      Tu peux juste traduire ça en :
      N = [ ]
      Comme ça ton tableau N n'a pas de limite dans sa forme et c'est plus simple.
      PS : je sais que j'arrive avec 3 ans de retard, mais si quelqu'un tombe dessus c'est toujours ça de pris :)

  • @babyssbabyss5958
    @babyssbabyss5958 2 ปีที่แล้ว

    bonjour,
    Pour le broadcasting Numpy le gère tout seule ou il faut le faire a la main chaque fois et tout revérifier ?

    • @MachineLearnia
      @MachineLearnia  2 ปีที่แล้ว

      je vous conseille de toujours vérifier vos fonctions de toute facon si vous voulez devenir un professionel, on appelle ca faire du unit testing.

  • @boawendneerecasimirzongo5662
    @boawendneerecasimirzongo5662 2 ปีที่แล้ว

    Bonjour Monsieur comment vous allez? Vraiment je ne sais pas par quelle langue utiliser pour vous remercier pour vos formations .....c'est du woooooooooooooooooooooooh .Je sollicilice une video sur les conceptes de la reconnaissance vocale

  • @cyrilww3750
    @cyrilww3750 3 ปีที่แล้ว

    Hello ! Great vid again !!
    J'ai eu un souci avec Numpy : ayant tenté l'exo de standardisation d'une matrice avant d'en savoir plus sur le broadcast, j'ai fait une boucle (shame on me):
    Voici le résultat pour B :
    C'est agréable à regarder mais pas bon du tout ! ^^
    En remettant l'init de B à np.zeros(A.shape), j'obtiens la bonne matrice. Pourtant elle est totalement écrasée pendant la bouble... Une idée du souci ?

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      Désolé je ne vois pas de résultat pour B dans ton commentaire (il a du y avoir un probleme de copier coller entre ton code et le commentaire youtube ahah)

  • @donellessame9194
    @donellessame9194 ปีที่แล้ว

    tu pourrait faire une vidéo sur la convolution stp.

  • @aymenlazem2062
    @aymenlazem2062 5 ปีที่แล้ว +2

    Merci infiniment cher Guillaume que dieu vous bénisse, Es possible de nous prévoir des exercices de petit scripte qui nous permet de comparais la génération des Axis 0 aléatoire et sélectionner la génération des Axis supérieur par rapport des autres lignes pour dessiné des graphe des nœuds dynamiques qui changes en fonctions des Axis 1 et merci beaucoup cher Guillaume

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +1

      Merci Beaucoup ! :) Euuh.. pour une fois je ne suis pas sur d'avoir bien compris votre requête ?

    • @aymenlazem2062
      @aymenlazem2062 5 ปีที่แล้ว

      @@MachineLearnia bon d'accord je suis vraiment désolé cher Guillaume , mon but c'est de créer un graphe pour des matrice qui ont des liaison aléatoire qui change de valeur aléatoirement et suit a ce changement les matrice la liaison ij entre les nœud change de liaison dynamiquement au cours du temps en fin j’espère que vous m'avez compris cher Guillaume et merci infiniment

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +1

      @@aymenlazem2062 Je crois que je commence a comprendre. C'est pour faire de la programmation linéaire (optimisation) ?

    • @aymenlazem2062
      @aymenlazem2062 5 ปีที่แล้ว

      @@MachineLearnia oui exactement merci infiniment

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +1

      @@aymenlazem2062 Ah d'accord je comprends bien désormais ! :) Je n'ai pas prévu de montrer ceci dans la série Python, mais je compte faire de la programmation linéaire sur ma chaîne TH-cam, je garderai votre requête en tete !

  • @abdoubrk4814
    @abdoubrk4814 3 ปีที่แล้ว

    je me demande si la normalisation n'influencera pas les resultas et notre modele puisqu'on a changer les donnes(est ce qu'on n'arrivera par exemple a predire la bonne valeur de y avec notre le model obtenu apres le feature scaling etant donne que notre nouveau model s'est base sur des donnees differentes que celles d'origine )

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      La normalisation facilite la convergence des algorithmes d'apprentissage statistiques, Mais bien sur si vous normaliser les données d'apprentissage, il faut aussi normaliser les données futures ! J'en parle plus en détails dans la suite de cette série.

  • @SimonLiegeoisOfficiel
    @SimonLiegeoisOfficiel 2 ปีที่แล้ว

    Salut, très intéressant ! As-tu un paypal ou utip pour te remercier ?
    Merci !

  • @jipy3220
    @jipy3220 4 ปีที่แล้ว

    Bonjour,
    Pourquoi n'obtient t - on pas exactement 0 pour en moyenne pour les colonnes standardisées?
    Tes vidéos sont top!!

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Bonne question ! C'est lié a la "précision" des calculs : mathématiquement ca devrait donner 0, mais les nombres stockés sur la mémoire de votre ordinateur (avec le dtype) ont une "résolution" limité (8 octects, 16 octets, 32, etc.) donc il arrive que vous n'obteniez pas exactement 0 au final

    • @jipy3220
      @jipy3220 4 ปีที่แล้ว

      @@MachineLearnia merci!

  • @rubendanan674
    @rubendanan674 3 ปีที่แล้ว

    Bonjour Guillaume, je ne comprends pas pourquoi la technique du broadcasting marche dans notre exercice alors que l'on a deux tableaux de dimensions respectives (10,5) et (5,1) qui ne sont donc pas superposables et on ne peut les étendre non plus car le nombre de lignes est différent (10=!5).
    Merci pour ces vidéos !

  • @gregoiremenard3863
    @gregoiremenard3863 5 ปีที่แล้ว +1

    bonjour, merci pour les videos de qualité.
    la valeur A.mean(axis=0) est de type ndarray et de dimension (5, ) comment se fait-il que numpy arrive a faire un broadcasting pour faire le calcul de normalisation ? il ne devrait pas y avoir le meme probleme que dans la video ?

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว

      Bonjour et merci beaucoup. A est de dimension (10, 5) et A.mean() est de dim (5,). En assemblant ces deux tableaux, c'est le nombre de lignes qui est étendu. Donc le résultat est (10, 5). Je sais que ce n'est pas très facile a visualiser. Vous pouvez écrire vos deux tableaux, et vous comprendrez que l'assemblage s'effectue sans problème.

  • @soufiane_elbk
    @soufiane_elbk ปีที่แล้ว

    Done

  • @romainmartin2280
    @romainmartin2280 4 ปีที่แล้ว

    Bonjour,
    Merci pour vos videos. Je voudrais savoir s'il est possible de faire du broadcasting avec des tableaux qui n'ont pas la meme dimension. Je souhaite additionner 2images et j'ai l erreur classique "cannot broadcast together with shape (251,251,4) et (64,64)"
    Est ce la méthode reshape peut m'aider? Dans l'idéal je prefererai que mon image finale ait une taille de 64,64 si c'est possible.
    Merci beaucoup :)

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      Bonjour. Oui le broadcasting fonctionne sur les tableaux de dimensions inégale comme on a pu le voir : en assant de 1D a 2D. Par exemple :
      A = np.zeros(10,)
      B = np.ones((2, 10))
      A+B # est de shape (2,10)
      Mais dans votre cas ca ne va pas etre le nombre de dimensions le probleme, mais la regle du (1) ou des dimensions égales qui ne va pas etre respectée. (entre le 251 et le 64)

    • @romainmartin2280
      @romainmartin2280 4 ปีที่แล้ว

      Merci pour cette réponse rapide j ai pu résoudre mon problème :)

  • @jean-baptisteriou5555
    @jean-baptisteriou5555 2 ปีที่แล้ว

    Bon eh bien forcément, je me suis lancé dans la double boucle for. Quand on voit la solution avec le broadcasting, on se dit que c'est sympa quand même 😅

  • @noel9335
    @noel9335 4 ปีที่แล้ว +1

    Donc d'après cette vidéo : faut-il comprendre que la méthode reshape() corrige un bug de numpy ?
    A+ ;)

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      Le broadcasting que je décris n'est pas un "bug" a proprement parler. Mais en effet, il est indispensable de bien dimensionner nos matrices avec reshape pour éviter d'avoir un broadcasting indésirable

    • @noel9335
      @noel9335 4 ปีที่แล้ว +1

      No response?

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      @@noel9335 Je vous ai écrit une réponse, vous ne pouvez pas la lire ?

  • @redabenyoub7734
    @redabenyoub7734 4 ปีที่แล้ว

    Hi, merci encore une fois pour votre travail , cependant j'ai bien compris que le BroadCasting sert à simplifier les calculs de type vecteur + vecteur, par contre comme vous l'aviez préciser des fois il est dangereux de faire ainsi car on frôle l'erreur, j'aimerai savoir quand est-ce qu'il ne faut pas l'utiliser et passer par reshape(()) , merci!

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Il n'y a pas de cas particulier que je puisse vous fournir comme ca, mais pour savoir quand il faut "redimensionner" vos tableaux, il faut écrire sur papier le calcul matricielle que vous cherchez a effectuer. Vous verrez bien s'il y a un "pépin" ou non a ce moment la.

    • @redabenyoub7734
      @redabenyoub7734 4 ปีที่แล้ว

      @@MachineLearnia ah d'accord je comprend mieux, Merci encore une fois.

  • @jbb332
    @jbb332 3 ปีที่แล้ว

    def z_score(x):
    x1 = (x-np.mean(x, axis=0))/np.std(x, axis=0)
    return x1

  • @ayoubrazouk630
    @ayoubrazouk630 3 ปีที่แล้ว +1

    Merci bcp Guillaume pour votre efforts et votre temps ,cependant j'ai utiliser le code suivant pour résoudre l'exercice mais il ne donne pas la meme résultat si vous pouvez m'aider a comprendre l'erreur que j'ai commis merci infiniment :
    moyenne=a.mean(axis=0)
    ecartype=a.std(axis=0)
    for i in range(0,a.shape[0]):
    for k in range(0,a.shape[1]):
    a[i,k]=(a[i,k]-moyenne[k])/ecartype[k]

  • @ggizi6313
    @ggizi6313 5 ปีที่แล้ว

    bon avec le broadcasting ça marche bien !
    j'ai ecrit une petite expression qui simplifie peut etre le probleme de broadcasting selon moi :p
    (n,1) != (n,) = (1,n) !
    il faut savoir quand on doit travailler avec un vecteur ligne ou colone !

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +1

      Attention ! J'ai peut-etre mal expliqué la notion de dimension (n,) dans la vidéo.
      Un tableau a dimenion (n, ) ne contient que 1 dimension, donc on ne peut pas dire que c'est "égual" a un tableau (1, n), puisque ce deuxième tableau a 2 dimensions.
      Par contre le broadcasting va fonctionner comme tu l'as imaginé :)
      Bien joué ;)

    • @ggizi6313
      @ggizi6313 5 ปีที่แล้ว

      @@MachineLearnia oui j'ai compris merci :) le plus important c'est qu'il faut toujours vérifier les dimensions d'un tableau :D

  • @tmamadousalioubah7771
    @tmamadousalioubah7771 5 หลายเดือนก่อน

    S'il te plaît mon boss fais moi des cours complets sur data anylyst et tableau de bord avec python,

  • @seyebabacar9539
    @seyebabacar9539 3 ปีที่แล้ว

    XD je sais pas pour quoi je suis compliqué
    pour le meme resultat j'ai fais autrement lol
    J= np.zeros(A.shape)
    for i in range (A.shape[1]):
    J[:,i] = (A[:,i]-A[:,i].mean())/A[:,i].std()
    Merci énormément Guillaume 🙏
    C'est pour quand pour les video de Deep Learning ?

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว +1

      Le plus important c'est d'avoir essayé, bravo ! (moi aussi il m'arrive de faire trop compliqué ^^)
      J'ai finit le tournage et j'ai fait environ 50% du montage de la 1ere video, il reste encore un peu de travail, en attendant tu peux voir les videos de Tipeee :)

  • @ahmedsyed671
    @ahmedsyed671 3 ปีที่แล้ว

    à 11:21 quelquun sais quelle est la music de fond ?

  • @guillaume8437
    @guillaume8437 4 ปีที่แล้ว

    Merci pour cette 13eme video. En revanche, vu que le compilateur réplique soit les lignes, soit les colonnes, (soit les 2 pour un scalaire), pourquoi il n'aime pas si je mets
    np.random.seed(0)
    A=np.random.randint(0,10,[2,4])
    B=np.ones((2,2))
    print(A)
    print(B)
    print(A+B)
    ? Il ne devrait pas répliquer le tableau 2x2 afin que ca fasse un tableau 2x4? Ceci dit, en C où on doit déclarer toutes nos variables, on ne peut pas avoir toutes ces fantaisies et de toutes les facons, ce n'est pas très propre en termes de codage.
    Sympa à la fin la musique pour histoire à raconter pour les petits enfants ;)

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      La dimension 1 de A et de B est égale (2 et 2) donc c'est ok
      En revanche la dimension 2 de A et B n'est pas égale (2 et 4) donc ca vous donne une erreur (pour rappel : seul les dimensions égales a 1 peuvent être étendues, c'est le broadcasting)

    • @guillaume8437
      @guillaume8437 4 ปีที่แล้ว

      @@MachineLearnia "pour rappel : seul les dimensions égales a 1 peuvent être étendues, c'est le broadcasting" Ah OK. Donc si par exemple, je voulais faire sur un tableau [[0 2 4 6],[1 3 5 7]] l'addition de [[1 2],[1 2]] de sorte d'avoir en sortie
      [[1 4 5 8],[2 5 6 9]]...
      Tu confirmes que le broadcasting est indispensable ou si on préfère coder en détails avec des imbrications de for et des redimensionnements, on peut procéder dans cette voie plus complexe?

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      @@guillaume8437 Le broadcasting n'est pas indispensable, tu peux faire tout avec des boucles for. Mais l'intéret de numpy est justement d'utiliser les opération de vectorisation, car c'est beuacoup plus rapide qu'un boucle for (je rappelle que Python est un langage tres lent)

    • @guillaume8437
      @guillaume8437 4 ปีที่แล้ว

      @@MachineLearnia effectivement, il est vraiment très lent. Dans les premières vidéos tu avais évoqué un temps d'exécution ou de compilation de qqch comme 6 ou 7 secondes. C'est énorme!
      Justement le problème des librairies c'est que l'exécution du code implique tout ce qui est programmé dans ces librairies et sur les choses essentielles, c'est mal fichu. Par exemple (désolé de sortir du sujet principal), sur Arduino, tu peux changer la valeur d'une IO en utilisant leur fonction simple digitalWrite mais elle consomme une quantité de cycles d'horloge processeur impressionnante alors que changer cette IO de la façon la plus rudimentaire (en écrivant directement dans les registres) ne consomme pas plus de 2 cycles d'horloge. L'idée intéressante des librairies est de simplifier ce qui requiérerait des heures de codage pour des choses complexes.
      Merci en tout cas pour ton aide et ta réactivité!

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      Oui, mais Arduino est un micro-controlleur, c'est son but d'etre ultra rapide ! Python est un langage de laboratoire, pour pouvoir coder tres rapidement des programmes complexes qui pourraient prendre 10x plus de temps a coder en C++. Ensuite, certes la machine fonctionne plus lentement, mais ca n'est pas grave, car nous on fait du travail a coté pendant ce temps. C'est la raison pour laquelle python a explosé depuis 2012.

  • @lilianenyinawineza7707
    @lilianenyinawineza7707 4 ปีที่แล้ว

    Y -A -IL une différence entre un tableau numpy, un objet ndarray et une matrice ?

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว

      un tableau numpy c'est un objet ndarray. Une matrice c'est différent (Avec numpy on peut faire du calcul matriciel, c'est a dire considérer nos tableaux ndarray comme des matrices, mais attention je ne dirais pas qu'un tableau numpy c'est un matrice.)

  • @benoit2489
    @benoit2489 4 ปีที่แล้ว

    Merci pour ces vidéos, je les dévore !! Par contre je n'ai pas vraiment compris l'intérêt du broadcasting. A quoi ça sert concrètement ?

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Ca sert a simplifier et accelerer les calculs de tableaux.
      ex : au lieu d'écrire (1, 1, 1, 1, 1) + (a, b, c, d, e)
      On peut écrire 1 + (1, b, c, d, e)

    • @benoit2489
      @benoit2489 4 ปีที่แล้ว

      @@MachineLearnia Merci !!

  • @kodjoedemagossou2237
    @kodjoedemagossou2237 3 ปีที่แล้ว

    Merci beaucoup pour la vidéo. Je voudrais savoir quand est-ce qu'on utilise A.mean() et quand est-ce qu'on utilise np.mean(A)? Merci

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว

      les deux méthodes sont les memes, vous pouvez les utiliser dans n'importe quelle situation.

    • @kodjoedemagossou2237
      @kodjoedemagossou2237 3 ปีที่แล้ว

      @@MachineLearnia Merci

  • @sohaibsoussi9042
    @sohaibsoussi9042 3 ปีที่แล้ว

    sinon ça c'est acceptable :
    moy = H.mean(axis=0,dtype=np.float64)
    ecartType = H.std(axis=0,dtype=np.float64)
    for i in range(0,10):
    for j in range(0,5):
    H[i,j]=(H[i,j]-moy[j])/ecartType[j]
    H
    j'ai aussi remarquer la non presence des nbr apres la virgule 🤷‍

    • @MachineLearnia
      @MachineLearnia  3 ปีที่แล้ว +1

      Oui c'est possible, mais vous ne tirez pas avantage de la vectorisation en écrivant cela (ca ralentira beaucoup votre code a l'avenir sur de gros datasets)

    • @sohaibsoussi9042
      @sohaibsoussi9042 3 ปีที่แล้ว

      @@MachineLearnia Merci bcp

  • @ggizi6313
    @ggizi6313 5 ปีที่แล้ว

    bonjour
    merci que vous n'est pas dérangé de lire tout mon commentaire voila mon 'prochain' commentaire que vous l'attend ;D
    alors comme a chaque fois j'ai essayé d'ecrire mon propre code :
    np.random.seed(0)
    A = np.random.randint(0,100,[10,5])
    m= A.mean(axis=0)
    m
    array([44.5, 47. , 60.5, 45.7, 64.5])
    e= A.std(axis=0)
    e
    array([22.66384786, 22.28003591, 26.5678377 , 29.36341261, 23.2432786 ])
    à ce stade m et e sont des tableaux de dimention (5,) alors pour acceder au different element j'ai ponsé à la boucle for !
    for i in range (10):
    for j in range (5):
    A[i,j]= (A[i,j]-m[j])/e[j]

    A

    array([[ 0, 0, 0, 0, 0],
    [-1, 1, -1, 0, 0],
    [ 1, 1, 1, -1, 0],
    [ 0, 0, 0, 0, 1],
    [ 1, 0, -1, 1, 0],
    [-1, -1, 0, 0, 0],
    [ 0, 0, 0, 1, 1],
    [ 0, 0, -1, 0, -2],
    [ 0, 0, 0, -1, 0],
    [ 0, 0, 0, 0, -1]])
    mais ça marche pas ! je ponse que la boucle for accede aux bon elements non !
    hhhh je suis entrain d'ecrire ce commentaire précisement quand j'ai ecrit (bon elements) et bah j'ai posé la question : est ce que ce sont les bon elements ? :D et j'ai remarqué ma faute :D c'est que je doit garder les valeurs du taleau initiale A et non pas les changer a chaque fois dans la boucle for :/ alors j'ai crée un tableau D rempli des zeros et le remplcé dans l'expression et ça marche bien maintenant :D
    for i in range (10):
    for j in range (5):
    D[i,j]= (A[i,j]-m[j])/e[j]

    D

    array([[-0.02206157, 0. , 0.13173823, 0.72539252, 0.10755798],
    [-1.56637126, 1.61579632, -1.48676006, -0.33034307, 0.96802178],
    [ 1.12513992, 1.84021247, 1.03508612, -1.14768676, -0.27965074],
    [ 0.90452425, -0.35906585, 0.99744662, 0.0102168 , 1.01104497],
    [ 1.6104944 , -0.44883231, -1.33620208, 1.0659524 , 0.32267393],
    [-1.56637126, -1.21184724, 0.73397016, 0.7935045 , 0.62383626],
    [ 0.11030784, 0.76301493, 0.80924915, 1.81518411, 1.01104497],
    [ 0.1985541 , -0.80789816, -1.56203905, -0.90929485, -2.17267111],
    [-0.24267724, -0.67324847, 0.16937773, -1.24985473, -0.32267393],
    [-0.55153918, -0.7181317 , 0.50813319, -0.77307091, -1.26918412]])
    hhhh bon je pense que je doit simplifier les choses et non pas les compliquer :D

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +1

      les choses viennent avec la pratique. ;)
      Si vous rencontrez des problèmes, vous pouvez vous rendre sur le discord ! :)

  • @OusmaneNdoye-z6p
    @OusmaneNdoye-z6p ปีที่แล้ว

    je viens de me lancer dans quelque chose de trés interessant, prendre des photo de personne flou et de les eclaircir pour voir le visage

    • @OusmaneNdoye-z6p
      @OusmaneNdoye-z6p ปีที่แล้ว

      coool non, imagine qu'il s'agit d'un voleur ma filmé par les camera de surveillance 😂😂

  • @joelkouadio4613
    @joelkouadio4613 4 ปีที่แล้ว

    Merci pour tes vidéos. C'est extrêmement facile d'apprendre Python grâce à ton site.
    Concernant l'exercice de la vidéo 12, voici ce que j'ai écrit. Mais j'obtiens des arrondis à 0 chiffres (par exemple -1.55 = -1 ; 0.65659=0; 1.666=1). Pourriez-vous m'indiquer comment je peux avoir le même résultat que vous en modifiant le format des nombres dans le calcul ?
    np.random.seed(0)
    A=np.random.randint(0,100,[10,5])
    print(A)
    mA=A.mean(axis=0)
    sA=A.std(axis=0)
    print('--------------------')
    print(mA,'*',mA.shape)
    print('--------------------')
    print(sA,'*',sA.shape)
    print('--------------------')
    print(A.shape[1])
    for i in range(A.shape[1]):
    for j in range(A.shape[0]):
    A[j,i]=(A[j,i]-mA[i])/sA[i]
    A

    • @MachineLearnia
      @MachineLearnia  4 ปีที่แล้ว +1

      Merci beaucoup :)
      Pour votre code, il faut écrire cela :
      A=np.random.randint(0,100,[10,5]).astype(np.float)

    • @joelkouadio4613
      @joelkouadio4613 4 ปีที่แล้ว

      @@MachineLearnia Merci beaucoup. Ça marche très bien.

  • @Alpha-zf1tw
    @Alpha-zf1tw 3 ปีที่แล้ว

    Challenge accepted : 13/30

  • @soubinan
    @soubinan 5 ปีที่แล้ว +1

    On ne peut pas aimer plusieurs fois une même vidéo (à la Medium) malheureusement :)

    • @MachineLearnia
      @MachineLearnia  5 ปีที่แล้ว +1

      Ahah merci ! :) C'est pas tres grave, vous pouvez la partager et vos amis l'aimeront pour vous également ! C'est encore MIEUX ! :D

  • @epsiloc9599
    @epsiloc9599 4 ปีที่แล้ว

    J'ai du mal avec les formules alors je préfère écrire Les Régles du Broadcasting qui marchent comme suit:
    1). Les tableaux A et B ont les mêmes dimensions.
    2). Les tableaux A et B n'ont pas le même nombre de ligne, mais un des tableaux a UNE ligne.
    3). Les tableaux A et B n'ont pas le même nombre de colonne, mais un des tableaux a UNE colonne.
    4). Les tableaux A et B n'ont pas le même nombre de ligne et de colonne : On applique les règles 2) et 3)
    Enfin voilà quoi :)

  • @m.ibrahim128
    @m.ibrahim128 3 ปีที่แล้ว

    super acteur hhhhhhhhh

  • @hermesingenui2653
    @hermesingenui2653 4 ปีที่แล้ว

    blablabla python python python :)

  • @tcgvsocg1458
    @tcgvsocg1458 3 ปีที่แล้ว

    Aie aie aie il faut attendre la 13 video pour que cela sameliore...pas trop de bruit de bouche ça parle pas trop pour rien dire cest bien...faut peut etre refaire les 13 premier fmvideo ou du moins les regarder avant de les poster...
    Alors par contre quand tu montre la manier oop orienter objet si cest pour debutant tu dois leur dire pourquoi tu ne met rien en argument sinon il von pas savoir...14.00

  • @yahiaouizakaria212
    @yahiaouizakaria212 2 ปีที่แล้ว

    bonjour ,
    Meri pour ces vidéos et vraiment vous êtes le meilleur merci.
    j'ai un petit problème avec la solution suivante ( elle n' affiche pas les nombres en type float dans la matrice 😮‍💨😪)
    import numpy as np
    np.random.seed(0)
    A = np.random.randint(0, 100, [10, 5])
    print(A, '
    ')
    moy_cln = A.mean(axis=0)
    print('la moyen de chaque colone =',moy_cln, '
    ')
    A[0:10,0:1] = [i-moy_cln[0] for i in A[0:10,0:1]]
    A[0:10,1:2] = [i-moy_cln[1] for i in A[0:10,1:2]]
    A[0:10,2:3] = [i-moy_cln[2] for i in A[0:10,2:3]]
    A[0:10,3:4] = [i-moy_cln[3] for i in A[0:10,3:4]]
    A[0:10,4:5] = [i-moy_cln[4] for i in A[0:10,4:5]]
    print(A,'
    ')
    ecr_typ = A.std(axis=0)
    print("l'ecare type de chaque colone =",ecr_typ, '
    ')
    A[0:10,0:1] = [i/ecr_typ[0] for i in A[0:10,0:1]]
    A[0:10,1:2] = [i/ecr_typ[1] for i in A[0:10,1:2]]
    A[0:10,2:3] = [i/ecr_typ[2] for i in A[0:10,2:3]]
    A[0:10,3:4] = [i/ecr_typ[3] for i in A[0:10,3:4]]
    A[0:10,4:5] = [i/ecr_typ[4] for i in A[0:10,4:5]]
    print(A,'
    ')
    merci de me répondre.

  • @el-mehdilahlou3798
    @el-mehdilahlou3798 2 ปีที่แล้ว

    bonjours monsieur quelle est mon erreur de ma proposition de la correction d'exercice
    import numpy as np
    np.random.seed(0)
    A=np.random.randint(0,100,[10,5])
    A.mean(axis=0)[0]
    for j in range(5):
    a=A.mean(axis=0)[j]
    b=A.std(axis=0)[j]
    for i in range(10):
    A[i,j]=(A[i,j]-a)/b
    et merci d'avance