il nous faudrait plus de professeur comme vous , très bonne pédagogie pour enseigner les sciences (math, physique, informatique), nos enfants ne sont pas aider, heureusement qu'il existe des personnes passionnées comme vous pour faire ce type de cours en vidéo. Pour ma part, je suis ingénieur en Mécanique et maintenance (gestion de projet) et j'y trouve en grand intérêt à suivre vos vidéos.
Salut Guillaume, Quelle joie de voir la chaîne reprendre de plus belle pour l'année 2020. Cette vidéo a du être le résultat d'un travail monstrueux d'écriture et de montage et ce travail (dans mon cas) paye: Sklearn comporte tellement de fonction, de module,.... que j’étais littéralement perdu dans son utilisation. Ces 37 minutes sur sklearn ont mis de l'ordre dans ma vision du module et du preprocessing en général (souvent peu abordé sur d'autres chaines de ML). Je t'en remercie. Je trouve particulièrement satisfaisant les moments où, quelques choses qui nous apparaît comme complexe, devient d'un coup parfaitement intelligible.En cela je dois dire que, Machine Learnia est une chaîne particulièrement satisfaisante ;)! Merci pour la qualité de ton travail :D
Salut Julien ! Merci beaucoup pour ton super message ! Oui j'ai mis du temps a sortir la vidéo 22/30 (ce qui explique en partie la pause de décembre) car c'est selon moi la vidéo la plus importante de la série ! J'avais donc écrit un texte / code qui couvrait un maximum de choses, tout en essayant de rester a l'essentiel (un peu paradoxal du coup.. ce qui m'a pénalisé en temps). Au final j'avais du contenu qui durait plus d'une heure de vidéos, et je ne voulais pas upload cela sur TH-cam, parce que je pense que c'est moins efficace pour vous. J'ai donc mis pas mal de temps a ré-ajuster mes mots, réduire la quantité, et sélectionner le plus important. Au final, j'aurais préféré faire 3 vidéos différentes (Encodage, Normalisation, Pipelines) mais ca ne rentrait pas dans les 30 vidéos de la série. Je suis tres heureux de savoir que la vidéo et le reste de mon contenu te permette de progresser et de mieux comprendre Sklearn. C'est mon but premier sur TH-cam, il faut le rappeler : apporter de la valeur aux personnes intéressées par la Data Science / Machine Learning / Deep Learning Merci cher ami et a bientôt pour les prochaines vidéos ! :)
J'en suis à ma 28ème vidéo de ta chaîne en 2 jours. J'ai beau avoir passé le certificat IBM Data Science sur Coursera, il y a un paquet de trucs qui restaient flous. J'aimerais détruire le bouton like tellement tes explications sont claires et concises - c'est devenu un jeu d'enfant. Je m'attaque pour le moment à un algo génétique, j'espère que dans le futur tu pourras couvrir cette discipline passionnante. En attendant, 1000x MERCI pour ton boulot incroyable 🙏 Toutes les formations devraient renvoyer vers ton contenu - il est imbattable niveau pédagogie 😊 Je te souhaite tout le meilleur !
Salut ! Désolé pour ma réponse tardive, ton commentaire est passé entre les mailles du filet ! Ca me fait tres plaisir de lire ton message, et oui je vais m'attaquer aux alogs génétiques surement en 2023.
Merci c'est bien agréable de savoir que vous appréciez la newsletter ! Je m'applique beaucoup dans la création des résumés car j'aime ça et c'est cool d’être en contact avec des gens aussi motivés comme vous !
Excellente vidéo, je suis stupéfaite par vos explications minutieuses et en même temps concises !! Après avoir parcouru dizaines de vidéos en anglais, qui m'ont rendu plus confuse qu'à l'inverse, avec cette vidéo, tout devient claire ! Merci pour ce beau travail !!
c'est en regardant et en écumant les autres vidéos et les autres chaines qu'on peut se rendre compte de ta facilité de vulgarisation , bien joué , et encore merci
Merci beaucoup. J’espère que la vidéo vous plait vraiment, j'y ai passé du temps parce que le sujet est fondamental, mais j’espère également que le rythme n'est du coup pas trop lent.
Waouh c'est super bien fait je comprends facilement. J'ai fait plusieurs formations certifiantes mais en tombant sur tes vidéos j'ai mieux compris ce que je codais. Je ne fais plus du copier coller, maintenant je sais ce que je fais. Merci beaucoup
Excellente vidéo, merci infiniment, don con peut dire que l'étape numéro 1 dans la vie d'un Data scientist est après avoir collecter les donné appliquer les transformations adéquates aux donnée avant de les passer à la machine. Merci infiniment. Cordialement.
Merci. L'étape 1 est l'exploration de données et leur compréhension, cela mène au pre-processing. A partir de la vidéo 25/30 nous allons faire des projets complets et vous pourrez bien comprendre la méthodologie de travail
Excusez moi, j'ai pas compris quelque chose dans le code où vous avez fait iris = load_iris() puis X = iris.data, est ce que load_iris est une fonction de sklearn ? et que si vous faites t = iris.target que va contenir X et y ? genre comment il saura où sont les targets et les features, ? Merci bien. Cordialement.
En effet load_iris est une fonction qui permet de charger un objet "Bunch", c'est-a-dire un objet qui regroupe différents éléments (un peu comme un disctionnaire) je vous invite a lire la documentation sklearn pour bien comprendre ca, ou bien je ferai une vidéo a ce sujet
AH mon professeur favoris est de retour Welcome.! Alors la super vidéo très très très instructifs du contenue clair. Je sens que l'étendue de mon ignorance(erreur) se minimise au fur et à mesure que l'on évolue avec les notions(optimisation) à une vitesse d'apprentissage considérable. J'ai très apprécié la fin de la vidéo punch très énorme
Merci mon cher ami, je suis content de savoir que les vidéos t'aident à progresser, c'est le but ! Pas mal la référence ahah ;) Et oui j'insiste le preprocessing c'est la clef, comme d'autres data scientists, j'ai réussi à gagner beaucoup de puissance dans certains projets, en trouvant les bonnes variables à donner au modele de ML, quel degré de PCA (on en parle dans la prochaine vidéo) utiliser, etc.
Bonjour, vous faites des videos TH-cam certainement par passion et autres... Mais vous n'avez pas idée de l'aide que vous apportez à des personnes qui retrouvent bloquées dans leurs études, projets, recherches et autres. Un simple MERCI ce n'est certainement pas assez au regard du travail fourni, mais j'espère qu'en précisant qu'il vient du fond du coeur, vous saurez lui attribuer une meilleure portée. MERCI!
Super ! Il faudra que je la regarde plusieurs fois, car la vidéo est dense ! Je suis sur que tes vidéos sont diffusées en université, et écoles d'ingénieurs, car elles sont de très bonnes qualité et très riche en information ! Merci !
Je vous admire bro vous me permettez de bien comprendre ces notions Merci bcp et bonne continuation et j'ai hâte de suivre votre vidéo sur les réseaux neuronaux et sur l'algorithme de bacprop
merci beaucoup!!! grace à vous je dis bien grâce à vous que je fais du machine Learning et python pour data science. Avant je ne savais rien faire avec python mais là je me sens balaise hahah
Bonjour Guillaume, j'ai repris la pipeline en testant d'autres transformers (MinMaxScaler et RobustScaler) et j'obtiens de moins bon résultats qu'avec StandardScaler ! Avec StandardScaler Le meilleur score est de 0.975 La meilleure combinaison est {'polynomialfeatures__degree': 4, 'sgdclassifier__penalty': 'l1'} Le test_score est de 0.933 Avec MinMaxScaler : Le meilleur score est de 0.967 La meilleure combinaison est {'polynomialfeatures__degree': 3, 'sgdclassifier__penalty': 'l1'} Le test_score est de 0.867 Avec RobustScaler : Le meilleur score est de 0.975 La meilleure combinaison est {'polynomialfeatures__degree': 4, 'sgdclassifier__penalty': 'l1'} Le test_score est de 0.9
Ah merci le petit exemple sur la fin avec et sans normalisation donne une bonne idée de l'importance ! ... (et la réponse à la question que j'allais posé ^^')
je ne saurait comment vous remercier vraiment chapeaux vos vidéo mon vraiment aidé en tant que débutante. Cependant j'aurais besoin de votre aide pour se connecter a des bases de données MySQL ET PostgreSQL avec python
Les deux dernières vidéos au niveau contenu c'est du lourd. Toujours avec cette aisance et cette réthorique didactique de présentation. Je m'accroche je m'accroche à chaque fois je dois faire des fiches pour synthétiser le contenu. Une petite question SVP lorsque vous écrivez model = make_pipeline(PolynomialFeatures(), StandardScaler(), SGDClassifier(random_state=0)) model J'obtient ceci et pas ce qui se produit sur votre écran qui me serait nécessaire pour réaliser le dictionnaire de paramètre :( Pipeline(steps=[('polynomialfeatures', PolynomialFeatures()), ('standardscaler', StandardScaler()), ('sgdclassifier', SGDClassifier(random_state=0))])
Bonjour et merci pour votre compliment :) Je ne comprends pas votre question, ce que vous obtenez est correct ! (parfois d'une version de librairie a l'autre font juste que les choses sont présentées différemment)
Salut Guillaume, Tout d'abord un grand merci pour ces cours que tu nous mets à disposition gratuitement, ils n'ont absolument rien à envier a ceux présents dans des formations parfois hors de prix ! Donc c'est littéralement un cadeau d'une très grande valeur que tu fais à toute ta communauté De plus on sent que tu est passioné et c'est communicatif ! En ce qui concerne la vidéo j'ai une remarque à faire, je reproduit toujours le code que tu produis pas-à-pas pour mieux comprendre et mémoriser les approches/méthodes et tips que tu présentes. Hors ici en entrainant le pipeline avec GridSearch j'ai obtenu un score de ... 1.0 ça me paraît beaucoup non ? Est-ce normal ou cela montre que j'ai glissé une erreur dans le code ? D'ailleurs quand je teste sans aucun preprocessing, j'obtiens un score de 0.64 qui la encore n'est pas le même résultat que dans la vidéo. A vrai dire c'est plus le score de 1 qui m'inquiète ;) Merci beaucoup de m'avoir lu, et encore merci pour tout ce que tu fais c'est vraiment impressionnant
Merci pour ton analyse. Si tu veux, tu peux partager ton code avec la communauté ici-même et sur discord, tu aideras ainsi les gens qui cherchent eux-même a faire l'exercice. Ainsi tout le monde s'entre-aide et c'est magnifique :D Tu as utilisé quel Estimateur ?
@@MachineLearnia j'ai utilisé standardscaler, robustscaler et minmaxscaler comme transformeurs. et un SGDClassifier comme estimateur, avec le code ci-dessous. J'ai également essayé avec un RidgeClassifierCV comme estimateur mais pas mieux !
Bonjour à toi, Merci pour tes supers vidéos, je me sens beaucoup plus à l'aise dans ce domaine depuis que j'ai commencé à les suivre. J'ai une question qui n'a pas grand chose à voir avec les vidéos mais qui me semble importante. Quelle est selon toi la différence entre un Data Engineer et un Data Analyst ? Et quelles sont les vidéos qui devraient beaucoup servir pour chacun de ces deux métiers ? Merci d'avance et vivement la prochaine vidéo 😊
Bonjour et merci je suis content de savoir que mes vidéos t'ont permis de progresser ! :) Pour répondre a ta question, les vidéos de cette séries sont surtout utiles pour un Data Scientist / Data Analyst. Un Data Engineer devra plus apprendre a maitriser des outils comme Spark, Hadoop, et SQL. Son role est de s'occuper du ETL (Extract, Transform, Load) des données. Je ferai également des vidéos a ce sujet a l'avenir. Merci pour ton soutien et j’espère lire d'autres commentaires de ta part un de ces 4 ;) A+
Merci pour cette vidéo aussi riche que d'habitude J'aurais deux questions cette fois ci. -1) Concernant l'encodage des variables catégorielles, notamment l'encodage OneHot, tu nous as bien fait comprendre que sklearn avait développé des techniques de stockage des matrices creuses qui permet de gérer le problème d'espace, mais j'aimerais savoir, d'un point de vu logique notre dataset à quand même autant de dimensions en plus qu'il y avait de catégories dans la variable de départ. Ne risquons nous pas de souffrir de la malédiction de la dimension si nous avons beaucoup de catégories dans nos variables et éventuellement beaucoup de variables catégorielles ? -2) Ma deuxième question est de savoir si les opérations de preprocesssing, notamment de normalisation peuvent s'appliquer aussi sur des variables catégorielles encodées? Est-ce que ça aurait du sens ?
Merci beaucoup ! Je prévois de faire des tutoriels sur les 3 ! (des séries même !) On en parle un peu plus tard dans l'année, car pour le moment il faut finir cette série la !
Bonjour, merci pour ces explications, J'ai une question, par rapport au dataset iris étant les variables ont été mesuré avec même unité donc même echelle, donc initialement c'est un exemple d'un dataset ou la normalization n'est pas nécecssaire, Or comme nous pouvons la normalization a améliorée considérablement l'accuracy, + est-ce la normalization augumente toujours l'exactitude du modèle ? + à part la différence des echelles entre les features, et la distirbution des individus qu'est ce qui permet de dire les données ont besoin d'être normalisés, Merci
Super intéressant comme d’habitude !! Petite question : Est-ce que cette série va parler des réseaux de neurones et de TensorFlow ? **je suis débutant donc je ne sais pas si Sklearn inclut déjà des réseaux de neurones**. Merci !
Merci. Sklearn permet de développer des réseaux de neurones (dans le module sklearn.neural_network) mais je ne conseille pas de l'utiliser. Pour développer des réseaux de neurones, on va en effet utiliser Keras, TF, ou Pytorch. Je ne le ferai pas dans cette série mais dans une série spécialement dédiée a cela.
Bonjour, existe t-il une méthode qui permettrait de lister l'ensemble des valeurs possibles à un hyper paramètres donné ? Merci d'avance et super série de vidéos!
Bonjour Guillaume, encore une fois merci beaucoup pour tes videos,je suis un certificat professionnel en python machine learning et data science avec ibm sur edx que j'ai presque fini mais c'est surtout grace à tes videos que j'arrive à cerner les choses.Pour aller encore plus loin j'aimerai avoir des exercices à traiter!ou si tas des conseils en particulier à donner aussi.Merci
Merci, ça me fait toujours très plaisir quand on me dit que mes vidéos gratuites sont aussi bien que certains cours payants ! :) Pour t’entraîner avec des exercices, tu peux te rendre sur le site Kaggle.com, ou sinon attendre un peu car je vais faire des séries de projet et d'exercices dans pas longtemps sur la chaine !
J'ai une question sur la standardisation. On m'a vendu ça comme un moyen d'avoir toutes les données se rapprochant les unes des autres et ainsi devoir utiliser moins d'epoch dans mon algo de deep learning, étant donné que les poids n'auraient pas à compenser les distances entre chaque valeur des variables. Seulement, je ne suis pas certains de comprendre pourquoi standardiser en fonction de X_train uniquement et utiliser cette moyenne et cet écart type sur le X_test plutôt que de standardiser l'ensemble des données,puis diviser en train et test, ou tout standardiser,diviser et restandardiser, ou encore standardiser X_train et X_test mais en fonction de leur moyenne et écart type respectifs (jusque là, seul la seconde méthode m'a donné de plus mauvaise résultat). Y a t il une raison théorique ?
Bonjour à l'execution du code final j'ai une erreur stipulant que polynomialfeatures___degree,et 'sgdclassifier__penalty ' ne sont pas des parametres de sgdclassifier
Merci pour ces videos! Petite question technique, j'ai tenté un pipeline (OrdinalEncoder et KNeighbors) sur le dataset titanic et je tombe sur l'erreur - Found unknown categories ['1'] in column 0 during transform. La catégorie existe bien. titanic = titanic[['survived', 'pclass', 'sex', 'age']] titanic.dropna(axis=0, inplace=True) y = titanic['survived'] X = titanic.drop('survived', axis=1) model = make_pipeline(OrdinalEncoder(),KNeighborsClassifier(n_neighbors=3)) model.fit(X, y) model.score(X, y) model.predict(np.array([1, 'male', 26]).reshape(1, 3)) une idee?
Est-ce que R fonctionne de la même manière que python? avec la notion de transformer et estimator? c a d est ce qu il va transformer le test de la meme manière que le train?
Merci beaucoup pour vos excellentes vidéos! Lors du preprocessing, est-il possible d'inclure un traitement des outliers, notamment avec une méthode provenant de sklearn?
Bonjour ! Oui c'est posible avec l'algorithme Isolation Forest que je recommande vivement, et qui est présent dans sklearn. Pour apprendre a l'utiliser, je vous conseille la vidéo 24/30 sur l'apprentissage non-supervisé
Salut, superbe vidéo, toujours un plaisir de t'écouter Guillaume. J'ai une petite question sur le transformer et le pipeline. Tu as montré qu'on réalisait le fit_transform sur les données d'entrainement, et qu'on pouvait ensuite transformer les données de test. Si des données de validation interviennent, est-ce qu'il faut les séparer des données d'entrainement avant d'utiliser le fit_transform?
Bonjour, désolé pour ma réponse tardive (j'ai deménagé). Si c'est une cross_validation, tu n'as rien a faire, tout est pris en charge par Sklearn. Si ce sont des données de Validation, alors oui il faut les séparer en 3 set : Train, Val, Test, et faire le fit_transform uniquement sur le Train. Ensuite le Transform() sur le Val, puis Le test aussi aura un Transform.
Merci pour cette vidéo ! c'est très clair et bien expliquée! Juste une question; Quand tu dis qu'on ne perd pas d'information en appliquant la normalisation. Est ce que la variance n'est pas perdu en appliquant la méthode MinMax scaler? Peace
Bonjour Guillaume, je viens de m'abonner à votre chaine que je trouve super! j'ai déjà une question: dans la video 22, vous présentez fit comme une méthode de transformation, parle-t-on du même fit qu'on a vu dans les Modèles LinearRegression, SVM...? ou s'agit -il d'un autre fit?
Oui c'est exactement le meme fit ! Il a pour but d'estimer les parametres de transformation (mais pas de prédiction) d'un modele de transformation (mais pas de prédiction). Mais c'est le meme principe ! :) Désolé pour la réponse tardive, votre commentaire était tombé dans la boite "review" de l'algorithme TH-cam, je ne sais pas pourquoi.
Pour la partie de la normalisation transforme scaler, imaginez qu'on veuille rajouter une nouvelle variable comme vous l'avez fait avec 80, mais qui soit supérieure au max (en l'occurrence dans cet exemple supérieure à 120) ça ne va pas fausser l'information sur les variables ?
Bonjour M. Saint-Cirgue, je vous remercie pour vos vidéos qui représentent une mine d'or pour l'apprentissage efficace du machine learning et une prise en main rapide de Python. J'ai une question : est-ce que la valeur moyenne d'une variable normalisée (MinMax, RobustScaler) est plus robuste (représentative des observations qu'elle résume) que la valeur moyenne de cette variable non normalisée?
Bonjour @MachineLearnia , merci pour cette belle vidéo. J'ai une question à cet effet, si mon dataset contient des variables qualitatives et quantitatives et que j'y applique le transformer onehitencoder, la transformation va t-elle affecter les variables qualitatives? Si oui, comment contourner le problème lorsqu'on veut juste transformer les variables qualitatives.
Merci beaucoup. Tres bonne question ! J'y réponds justement dans la prochaine vidéo qui sort dans quelques jours ! Il faut soit traiter chaque colonne indépendamment avec pandas et sklearn, soit construire une pipeline avec la Classe ColumnTransformer (le sujet de la prochaine vidéo)
svp je veux un programme qui permet de changer la couleur de certaints pixels dans l'image on veut pas changer toute la couleur de l'image ms juste certain pixel et mercii
Bonjour, J'ai voulu savoir s'il y avait des mises à bour concernant GridSearchCV? Car en executant les etapes de code et avec n'importe quel modèle de ML, je ne reçoit aucun hyperparametre à part le random_state déjà mentionné? Merci d'avance et je vous remercie pou tous les efforts déployés.. à l'attente de vos prochaines playlist..
Bonjour, non il n'y a pas eu de MAJ depuis ma vidéo (pour gridsearchCV en tout cas). Je vous avoue que votre probleme est étrange, vérifiez bien votre code et si vous avez toujours des soucis, venez faire un tour sur notre discord.
Merci pour cette vidéo riche en contenu! Apparemment ici le test_size est laissé à 0.25 (par défaut), ce qui donne 97% avec pre-processing et 84% sans pre-processing. En passant par une boucle, on se rend facilement compte qu'en faisant varier test_size entre 0.25 et 0.50 (avec random_state=0), on obtient des précisions qui oscillent entre 92 et 98% avec pre-processing, et de 45 à 98% sans pre-processing. Du coup, le pre-processing nous garanti une stabilité de la mesure de précision quelque soit la taille du Test set et donc réduit le coût total de données nécessaires ?
Non, le preprocessing ne permet pas cela. D'une maniere général, on met dans le test set juste le nombre de donnée nécessaire pour se dire : "ok, mon modele a une performance de 97% sur le test set et je suis quasi sur que la performance va etre la meme a l'avenir car j'ai suffisamment de donnée dans le test set pour faire une généralisation". C'est un peu comme les tests statistiques : on essaie de savoir si les résultats qu'on observe peuvent etre raisonnablement étendus a la réalité
Bjr Guillaume, j'aimerais savoir comment ca se passe si une valeur du data set test est plus grande que le plus grand élement du data set train. Parce que selon la formule dans le cas que je viens de citer, on obtiendra une valeur plus grande que 1.
Bonjour Guillaume, merci pour les merveilleuses explications, très claires, nettes. J'ai une question, elle est la suivante: Pour la phase d'encodage nous pouvons utiliser la méthode de transformation des données catégorielles en numérique à travers df['column'].astype('category').cat.codes? Si oui quel est l'avantage par rapport à la méthode données dans sklearn.preprocessing? Quelle méthode préconiserez-vous? Merci.
Bonjour et merci beaucoup :) Les 2 méthodes se valent. Celles de sklearn ont l'avantage de pouvoir être intégrées aux pipelines, je les conseille pour faire du machine learning. Quand on fait juste une analyse de données (sans développer de modeles) alors pandas suffit.
Salut Guillaume, Merci tout d'abord pour ce super travail, pour l'effort et l'explication. j'ai deux questions : 1- est-que vous pouvez faire un video pour expliquer le principe de SGDclassifier comme vous avez fait pour le gradient de descent ?? 2 - Est que vous pouvez faire une autre série des videos pour le Deeplearning ou bien NLP ?? et Merci encore une fois !!!
Salut. Alors pour aller droit au but : J'ai prévu de faire tout ca ! :D (et je suis en train de faire la série de vidéos sur le deep learning aujourd'hui meme)
Merci beaucoup pour cette vidéo! Petite question, est ce qu'il faut normaliser les valeurs encoder pour les utiliser avec les autres variables? Merci :)
Non, il n'est pas utile de normaliser des variables catégorielles, sauf si on commence a avoir plus de 10 catégories nominales (donc des nombres allant de 0 a 10)
Bonjour Guillaume, merci pour toutes ces videos très pédagogiques et très intructives. Je suis un débutant en data analytics avec Python. Je traite principalement des données de spectroscopie. Je me demandais si il existait un moyen de tester différents pre-processing (par exemple différentes normalisation, différentes dérivées, ...) en plus des hyperparamètres? Et d'automatiser tout ça? Merci
Bonjour, oui c'est possible et c'est une chose que l'on fait souvent. Je crois que je montre comment dans les vidéos suivantes (de souvenir) Mais attention cela demande beaucoup de ressources et beaucoup de temps de calcul. On ne peut pas aveuglément tester des millions de configurations possibles, et il faut faire des choix.
il nous faudrait plus de professeur comme vous , très bonne pédagogie pour enseigner les sciences (math, physique, informatique), nos enfants ne sont pas aider, heureusement qu'il existe des personnes passionnées comme vous pour faire ce type de cours en vidéo. Pour ma part, je suis ingénieur en Mécanique et maintenance (gestion de projet) et j'y trouve en grand intérêt à suivre vos vidéos.
En un seul mot : Parfait ! Merci mille fois, Guillaume, pour ton énergie à nous communiquer ta passion.
Merci c'est un plaisir de vous avoir comme public.
Salut Guillaume,
Quelle joie de voir la chaîne reprendre de plus belle pour l'année 2020. Cette vidéo a du être le résultat d'un travail monstrueux d'écriture et de montage et ce travail (dans mon cas) paye: Sklearn comporte tellement de fonction, de module,.... que j’étais littéralement perdu dans son utilisation. Ces 37 minutes sur sklearn ont mis de l'ordre dans ma vision du module et du preprocessing en général (souvent peu abordé sur d'autres chaines de ML). Je t'en remercie.
Je trouve particulièrement satisfaisant les moments où, quelques choses qui nous apparaît comme complexe, devient d'un coup parfaitement intelligible.En cela je dois dire que, Machine Learnia est une chaîne particulièrement satisfaisante ;)!
Merci pour la qualité de ton travail :D
Salut Julien !
Merci beaucoup pour ton super message ! Oui j'ai mis du temps a sortir la vidéo 22/30 (ce qui explique en partie la pause de décembre) car c'est selon moi la vidéo la plus importante de la série ! J'avais donc écrit un texte / code qui couvrait un maximum de choses, tout en essayant de rester a l'essentiel (un peu paradoxal du coup.. ce qui m'a pénalisé en temps). Au final j'avais du contenu qui durait plus d'une heure de vidéos, et je ne voulais pas upload cela sur TH-cam, parce que je pense que c'est moins efficace pour vous.
J'ai donc mis pas mal de temps a ré-ajuster mes mots, réduire la quantité, et sélectionner le plus important.
Au final, j'aurais préféré faire 3 vidéos différentes (Encodage, Normalisation, Pipelines) mais ca ne rentrait pas dans les 30 vidéos de la série.
Je suis tres heureux de savoir que la vidéo et le reste de mon contenu te permette de progresser et de mieux comprendre Sklearn. C'est mon but premier sur TH-cam, il faut le rappeler : apporter de la valeur aux personnes intéressées par la Data Science / Machine Learning / Deep Learning
Merci cher ami et a bientôt pour les prochaines vidéos ! :)
J'en suis à ma 28ème vidéo de ta chaîne en 2 jours. J'ai beau avoir passé le certificat IBM Data Science sur Coursera, il y a un paquet de trucs qui restaient flous. J'aimerais détruire le bouton like tellement tes explications sont claires et concises - c'est devenu un jeu d'enfant. Je m'attaque pour le moment à un algo génétique, j'espère que dans le futur tu pourras couvrir cette discipline passionnante. En attendant, 1000x MERCI pour ton boulot incroyable 🙏 Toutes les formations devraient renvoyer vers ton contenu - il est imbattable niveau pédagogie 😊 Je te souhaite tout le meilleur !
Salut ! Désolé pour ma réponse tardive, ton commentaire est passé entre les mailles du filet ! Ca me fait tres plaisir de lire ton message, et oui je vais m'attaquer aux alogs génétiques surement en 2023.
@@MachineLearnia Bonjour, attention, il y a une erreur sur la standardisation. Il fallait standardiser Y également !
Je passe juste pour dire que la newsletter est top !
Première fois que j'en lis une à 100% et avec plaisir ;)
Je regarderai la vidéo ce soir :o
Merci c'est bien agréable de savoir que vous appréciez la newsletter ! Je m'applique beaucoup dans la création des résumés car j'aime ça et c'est cool d’être en contact avec des gens aussi motivés comme vous !
Excellente vidéo, je suis stupéfaite par vos explications minutieuses et en même temps concises !! Après avoir parcouru dizaines de vidéos en anglais, qui m'ont rendu plus confuse qu'à l'inverse, avec cette vidéo, tout devient claire ! Merci pour ce beau travail !!
Merci beaucoup, c'est un grand plaisir ! :)
c'est en regardant et en écumant les autres vidéos et les autres chaines qu'on peut se rendre compte de ta facilité de vulgarisation , bien joué , et encore merci
Bon retour parmi nous ! Au passage bon heureuse année toi comme d'ab belle vidéo !!
Merci beaucoup. J’espère que la vidéo vous plait vraiment, j'y ai passé du temps parce que le sujet est fondamental, mais j’espère également que le rythme n'est du coup pas trop lent.
Merci merci .. Tu m'as donné l'envie d'étuder
Ah ! Quel plaisir quand on me dit ca ! Je vais faire prof ! ahah
Merci Monsieur Guillaume,
Pour la première fois je peux avoir un porsantage de 100% xD.
Mon code:
model = make_pipeline(PolynomialFeatures(),
StandardScaler(),
SGDClassifier(random_state=0))
#model
params = {
'polynomialfeatures__degree': np.arange(1, 7),
'polynomialfeatures__include_bias': [True, False],
'standardscaler__copy': [True, False],
'sgdclassifier__penalty': ['L1', 'L2']
}
grid = GridSearchCV(model, param_grid=params, cv=4)
grid.fit(X_train, y_train)
best_model = grid.best_estimator_
y_pred = best_model.predict(X_test)
confusion_matrix(y_test, y_pred)
Bravo ! :)
@@MachineLearnia merci ^^.
Waouh c'est super bien fait je comprends facilement. J'ai fait plusieurs formations certifiantes mais en tombant sur tes vidéos j'ai mieux compris ce que je codais. Je ne fais plus du copier coller, maintenant je sais ce que je fais. Merci beaucoup
Bravo je suis fier de vous !
Excellente vidéo, merci infiniment, don con peut dire que l'étape numéro 1 dans la vie d'un Data scientist est après avoir collecter les donné appliquer les transformations adéquates aux donnée avant de les passer à la machine.
Merci infiniment.
Cordialement.
Merci. L'étape 1 est l'exploration de données et leur compréhension, cela mène au pre-processing. A partir de la vidéo 25/30 nous allons faire des projets complets et vous pourrez bien comprendre la méthodologie de travail
@@MachineLearnia Je suis déjà impatient de les voir :) ;).
Excusez moi, j'ai pas compris quelque chose dans le code où vous avez fait iris = load_iris() puis X = iris.data,
est ce que load_iris est une fonction de sklearn ? et que si vous faites t = iris.target que va contenir X et y ? genre comment il saura où sont les targets et les features, ?
Merci bien.
Cordialement.
En effet load_iris est une fonction qui permet de charger un objet "Bunch", c'est-a-dire un objet qui regroupe différents éléments (un peu comme un disctionnaire) je vous invite a lire la documentation sklearn pour bien comprendre ca, ou bien je ferai une vidéo a ce sujet
AH mon professeur favoris est de retour Welcome.! Alors la super vidéo très très très instructifs du contenue clair. Je sens que l'étendue de mon ignorance(erreur) se minimise au fur et à mesure que l'on évolue avec les notions(optimisation) à une vitesse d'apprentissage considérable. J'ai très apprécié la fin de la vidéo punch très énorme
Merci mon cher ami, je suis content de savoir que les vidéos t'aident à progresser, c'est le but ! Pas mal la référence ahah ;) Et oui j'insiste le preprocessing c'est la clef, comme d'autres data scientists, j'ai réussi à gagner beaucoup de puissance dans certains projets, en trouvant les bonnes variables à donner au modele de ML, quel degré de PCA (on en parle dans la prochaine vidéo) utiliser, etc.
sincerement, monsieur Guillaume Saint-Cirgue, je te donne un truc , tu sera meilleur prof en web , you're the best teacher.
Merci beaucoup :)
Bonjour,
vous faites des videos TH-cam certainement par passion et autres...
Mais vous n'avez pas idée de l'aide que vous apportez à des personnes qui retrouvent bloquées dans leurs études, projets, recherches et autres.
Un simple MERCI ce n'est certainement pas assez au regard du travail fourni, mais j'espère qu'en précisant qu'il vient du fond du coeur, vous saurez lui attribuer une meilleure portée.
MERCI!
Merci pour votre gratitude :) J'ai un compte tipeee si vous voulez me soutenir :)
@@MachineLearnia j'avais pas remarqué.
J'apporte au plus vite ma Modeste contribution.
@@bigo025 merci beaucoup !
merci beaucoup je reviens souvant à tes videos ce sont une mine d'or en information
Je fais pas souvent de commentaire, mais ici, je pouvais pas passer sans dire merci. Super clair et concis, vraiment au top cette vidéo !!!
Merci beaucoup je le prends avec une grand honneur alors :D
Enfin de retour, comme d'hab belle vidéo, merci a vous.
Merci, content de savoir que la vidéo vous a plu !
Milles merci !! C'est remarquable tout ce que tu offres dans tes vidéos! Encore MERCI !
Milles de rien ! Merci de ton soutien :)
Le preprocessing c'est la clé de votre réussite.
Merci pour la vidéo, j'en pleure de joie
Merci, c'est bon de savoir que je peux vous aider ! :)
c'est vraiment un très bon récap.Merci
Merci beaucoup pour le retour positif
C"est la meilleure video que j'ai pu voir sur youtube !!!
Cette video est ma preferee de toute la serie...chapeau
Merci, ca me fait très plaisir :)
ah le petit punch qu'il me fallait just pour booster mon debut de semaine ;)
Je suis heureux de pouvoir vous motiver ! :D
Merci pour ce tuto pratico-pratique. Y a plus qu'à.
Yes, je vais bientôt vous confier des projets sur la chaîne et on les corrigera ensemble !
Excellente vidéo on apprend toujours de nouvelles choses avec Machine learnia merci encore
Merci de toujours être fidèle aux vidéos ! :)
Super !
Il faudra que je la regarde plusieurs fois, car la vidéo est dense !
Je suis sur que tes vidéos sont diffusées en université, et écoles d'ingénieurs, car elles sont de très bonnes qualité et très riche en information !
Merci !
Merci a toi ;)
Oui, cela arrive, et c'est un grand honneur !
Heureux de partager mon travail avec les gens
Merci pour cette super vidéo, c'est vraiment utile ! J'ai aussi hâte de voir le prochain bonus sur Tipeee ! :)
Merci, je sors le prochain bonus demain
@@MachineLearnia Super ! :)
hihihi
c'est quoi ces bonus et pour moi Tippee c'est une tante d'indien non?
mercii enormement pour cette video, vous m'a beaucoup aidé sur mon projet de fin d'etude.
Un grand merci Guillaume
De rien !
Merci pour pour la vidéo, elle vient répondre à une question essentielle de mon domaine d'activité.
C'est un plaisir ! A bientôt et bon courage dans vos projets ! :)
j'attends impatiemment tes videos , Merci bcp !
Merci, je fais de mon mieux pour vous :)
Je vous admire bro vous me permettez de bien comprendre ces notions
Merci bcp et bonne continuation et j'ai hâte de suivre votre vidéo sur les réseaux neuronaux et sur l'algorithme de bacprop
Merci beaucoup :) Oui j'ai hâte de faire ces vidéos aussi, j'adore ce sujet et je ferai de mon mieux pour que tout le monde comprenne
Merci beaucoup cher Guillaume!! super beau comme vidéo un Grand bravo pour ton travail !!
Merci beaucoup Aymen ! :)
C'est excellent ce que tu fais. Merci ! Continue ! :)
Merci beaucoup, je le fais car c'est ma passion et vous êtes un public génial !
C'est super
Merci !
merci beaucoup!!! grace à vous je dis bien grâce à vous que je fais du machine Learning et python pour data science. Avant je ne savais rien faire avec python mais là je me sens balaise hahah
Je suis tres heureux de lire ca ! :)
@@MachineLearnia moi je suis très heureux d'être abonné à vous! Alors on se retrouve sur discord!!!
Tu expliques vraiment bien. Merci beaucoup
Merci beaucoup :)
je suis très intéressante de votre vidéos car ils me aide beaucoup a avancée dans ce domaine
Merci beaucoup je suis heureux d'apprendre ca ! merci pour votre fidélité !
c'est vraiment tres puissant!
content que ca vous plaise !
Bonjour Guillaume, j'ai repris la pipeline en testant d'autres transformers (MinMaxScaler et RobustScaler) et j'obtiens de moins bon résultats qu'avec StandardScaler !
Avec StandardScaler
Le meilleur score est de 0.975
La meilleure combinaison est {'polynomialfeatures__degree': 4, 'sgdclassifier__penalty': 'l1'}
Le test_score est de 0.933
Avec MinMaxScaler :
Le meilleur score est de 0.967
La meilleure combinaison est {'polynomialfeatures__degree': 3, 'sgdclassifier__penalty': 'l1'}
Le test_score est de 0.867
Avec RobustScaler :
Le meilleur score est de 0.975
La meilleure combinaison est {'polynomialfeatures__degree': 4, 'sgdclassifier__penalty': 'l1'}
Le test_score est de 0.9
Oui c'est tout a fait possible, tout va bien :)
Excellent!
Merci Guillaume
De rien :)
Ah merci le petit exemple sur la fin avec et sans normalisation donne une bonne idée de l'importance ! ... (et la réponse à la question que j'allais posé ^^')
Je suis content d'avoir pu anticiper ta question :D
Merci! c'était très clair. Super video.
Grâce à vous mes modèles de données seront plus efficaces
De rien ! :)
Merci pour toutes ces vidéos!
De rien :)
Merci énormément pour cette vidéo très enrichissante!
De rien, c'est un plaisir :)
La qualité ✔ 👏🔥
C'est le plus important la qualité ! Merci a toi ;)
Merci pour cette excellente formation
Merci Merci pour ce cadeaux ;)
Merci c'est un plaisir de faire des vidéos :)
je ne saurait comment vous remercier vraiment chapeaux vos vidéo mon vraiment aidé en tant que débutante.
Cependant j'aurais besoin de votre aide pour se connecter a des bases de données MySQL ET PostgreSQL avec python
Simplement super
Merci
bravo et merci infiniment , prière de faire une formation en deep learning et des vidéo pour la reconnaissance des émotions facials
C'est prévu ! J'ai commencé a le faire !
Merci et bonne continuation
Merci pour ce contenu de qualité !
De rien !
excellent...
Vraiment Merci Pour la Vidéo
De rien ! tout le plaisir est pour moi
Super vidéo ! :D Merci pour ton travail
Merci beaucoup, ca fait super plaisir !
Les deux dernières vidéos au niveau contenu c'est du lourd.
Toujours avec cette aisance et cette réthorique didactique de présentation.
Je m'accroche je m'accroche à chaque fois je dois faire des fiches pour synthétiser le contenu.
Une petite question SVP lorsque vous écrivez
model = make_pipeline(PolynomialFeatures(),
StandardScaler(),
SGDClassifier(random_state=0))
model
J'obtient ceci et pas ce qui se produit sur votre écran qui me serait nécessaire pour réaliser le dictionnaire de paramètre :(
Pipeline(steps=[('polynomialfeatures', PolynomialFeatures()),
('standardscaler', StandardScaler()),
('sgdclassifier', SGDClassifier(random_state=0))])
Bonjour et merci pour votre compliment :)
Je ne comprends pas votre question, ce que vous obtenez est correct ! (parfois d'une version de librairie a l'autre font juste que les choses sont présentées différemment)
Salut Guillaume,
Tout d'abord un grand merci pour ces cours que tu nous mets à disposition gratuitement, ils n'ont absolument rien à envier a ceux présents dans des formations parfois hors de prix ! Donc c'est littéralement un cadeau d'une très grande valeur que tu fais à toute ta communauté
De plus on sent que tu est passioné et c'est communicatif !
En ce qui concerne la vidéo j'ai une remarque à faire, je reproduit toujours le code que tu produis pas-à-pas pour mieux comprendre et mémoriser les approches/méthodes et tips que tu présentes.
Hors ici en entrainant le pipeline avec GridSearch j'ai obtenu un score de ... 1.0
ça me paraît beaucoup non ? Est-ce normal ou cela montre que j'ai glissé une erreur dans le code ?
D'ailleurs quand je teste sans aucun preprocessing, j'obtiens un score de 0.64 qui la encore n'est pas le même résultat que dans la vidéo.
A vrai dire c'est plus le score de 1 qui m'inquiète ;)
Merci beaucoup de m'avoir lu, et encore merci pour tout ce que tu fais c'est vraiment impressionnant
merci pour les postes intéressants, je vous suis .....
Merci a bientôt !
merci prof
Goooooood
Thanks mate :)
je suis impatient quand tu vas commencer la série sur le deep leraning
En septembre :)
Encore Merci!!!!!!!
de rien :)
super travail une nouvelle fois. Pas trouvé mieux que 0.9736842105263158 pourtant avec d'autres transformer et une GridSearch plus étendue.
Merci pour ton analyse. Si tu veux, tu peux partager ton code avec la communauté ici-même et sur discord, tu aideras ainsi les gens qui cherchent eux-même a faire l'exercice. Ainsi tout le monde s'entre-aide et c'est magnifique :D
Tu as utilisé quel Estimateur ?
@@MachineLearnia j'ai utilisé standardscaler, robustscaler et minmaxscaler comme transformeurs. et un SGDClassifier comme estimateur, avec le code ci-dessous. J'ai également essayé avec un RidgeClassifierCV comme estimateur mais pas mieux !
import numpy as np
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler, PolynomialFeatures,MinMaxScaler, RobustScaler
from sklearn.linear_model import SGDClassifier, RidgeClassifierCV
from sklearn.pipeline import make_pipeline
from sklearn.model_selection import GridSearchCV
from sklearn.datasets import load_iris
iris=load_iris()
X=iris.data
y=iris.target
Xtrain,Xtest,ytrain,ytest=train_test_split(X,y)
model=make_pipeline(PolynomialFeatures(),StandardScaler(),SGDClassifier(random_state=0))
params={
'polynomialfeatures__degree':[2,3,4],
'sgdclassifier__alpha':[0.0001,0.001,0.01,0.1,1,10],
'sgdclassifier__penalty':['l1','l2','elasticnet'],
'sgdclassifier__loss':['hinge', 'log', 'modified_huber', 'squared_hinge'],
'sgdclassifier__max_iter':[100,1000]
}
grille=GridSearchCV(model,param_grid=params,cv=4)
grille.fit(Xtrain,ytrain)
grille.best_params_
grille.score(Xtest,ytest)
avec StandardScaler résultat grille.score est 0.9736842105263158
model3=make_pipeline(PolynomialFeatures(),RobustScaler(),SGDClassifier(random_state=0))
avec RobustScaler grille.score donne : 0.8947368421052632
model2=make_pipeline(PolynomialFeatures(),MinMaxScaler(),SGDClassifier(random_state=0))
avec MinMaxScaler grille.score donne : 0.9210526315789473
@@jmbdeblois Merci de la part de la commu :)
@@MachineLearnia merci à toi surtout
Bonjour à toi,
Merci pour tes supers vidéos, je me sens beaucoup plus à l'aise dans ce domaine depuis que j'ai commencé à les suivre.
J'ai une question qui n'a pas grand chose à voir avec les vidéos mais qui me semble importante.
Quelle est selon toi la différence entre un Data Engineer et un Data Analyst ? Et quelles sont les vidéos qui devraient beaucoup servir pour chacun de ces deux métiers ?
Merci d'avance et vivement la prochaine vidéo 😊
Bonjour et merci je suis content de savoir que mes vidéos t'ont permis de progresser ! :)
Pour répondre a ta question, les vidéos de cette séries sont surtout utiles pour un Data Scientist / Data Analyst.
Un Data Engineer devra plus apprendre a maitriser des outils comme Spark, Hadoop, et SQL. Son role est de s'occuper du ETL (Extract, Transform, Load) des données.
Je ferai également des vidéos a ce sujet a l'avenir.
Merci pour ton soutien et j’espère lire d'autres commentaires de ta part un de ces 4 ;)
A+
Realy good
Thank you! Cheers!
J'avais regardé les pipeline dans un bouquin, c'était pas super clair. Dans cette vidé, c'est limpide ! Merci 1000x
Je suis content d'avoir pu vous aider dans cette vidéo !
SGDClassifier est importé à partir du module linear_module(from sklearn.linear_model import SGDClassifier), merci
Merci pour cette vidéo aussi riche que d'habitude
J'aurais deux questions cette fois ci.
-1) Concernant l'encodage des variables catégorielles, notamment l'encodage OneHot, tu nous as bien fait comprendre que sklearn avait développé des techniques de stockage des matrices creuses qui permet de gérer le problème d'espace, mais j'aimerais savoir, d'un point de vu logique notre dataset à quand même autant de dimensions en plus qu'il y avait de catégories dans la variable de départ. Ne risquons nous pas de souffrir de la malédiction de la dimension si nous avons beaucoup de catégories dans nos variables et éventuellement beaucoup de variables catégorielles ?
-2) Ma deuxième question est de savoir si les opérations de preprocesssing, notamment de normalisation peuvent s'appliquer aussi sur des variables catégorielles encodées? Est-ce que ça aurait du sens ?
il n'y a pas la suite de la question ^^
@@MachineLearnia La question n'a pas de suite
@@MachineLearnia Désolé d'insister, mais j'ai l'impression que tu m'as oublié Guillaume
Encore une super vidéo, bravo pour la pédagogie.
Des vidéos prévues sur PyTorch, TensorFlow ou Keras ?
Merci beaucoup ! Je prévois de faire des tutoriels sur les 3 ! (des séries même !) On en parle un peu plus tard dans l'année, car pour le moment il faut finir cette série la !
Bonjour, merci pour ces explications,
J'ai une question, par rapport au dataset iris étant les variables ont été mesuré avec même unité donc même echelle, donc initialement c'est un exemple d'un dataset ou la normalization n'est pas nécecssaire, Or comme nous pouvons la normalization a améliorée considérablement l'accuracy, + est-ce la normalization augumente toujours l'exactitude du modèle ?
+ à part la différence des echelles entre les features, et la distirbution des individus qu'est ce qui permet de dire les données ont besoin d'être normalisés,
Merci
Super intéressant comme d’habitude !! Petite question : Est-ce que cette série va parler des réseaux de neurones et de TensorFlow ? **je suis débutant donc je ne sais pas si Sklearn inclut déjà des réseaux de neurones**. Merci !
Merci. Sklearn permet de développer des réseaux de neurones (dans le module sklearn.neural_network) mais je ne conseille pas de l'utiliser. Pour développer des réseaux de neurones, on va en effet utiliser Keras, TF, ou Pytorch. Je ne le ferai pas dans cette série mais dans une série spécialement dédiée a cela.
@@MachineLearnia Voilà une très bonne nouvelle; je peux allez au lit rassurer avec un rêve...
merci beaucoup
de rien :)
nous sommes en décembre 2023 est ce que vous êtes toujours la?
Bonjour, existe t-il une méthode qui permettrait de lister l'ensemble des valeurs possibles à un hyper paramètres donné ? Merci d'avance et super série de vidéos!
Bonjour Guillaume, encore une fois merci beaucoup pour tes videos,je suis un certificat professionnel en python machine learning et data science avec ibm sur edx que j'ai presque fini mais c'est surtout grace à tes videos que j'arrive à cerner les choses.Pour aller encore plus loin j'aimerai avoir des exercices à traiter!ou si tas des conseils en particulier à donner aussi.Merci
Merci, ça me fait toujours très plaisir quand on me dit que mes vidéos gratuites sont aussi bien que certains cours payants ! :)
Pour t’entraîner avec des exercices, tu peux te rendre sur le site Kaggle.com, ou sinon attendre un peu car je vais faire des séries de projet et d'exercices dans pas longtemps sur la chaine !
@@MachineLearnia sans aucun problème, je vais my rendre attendant que tes exercices soient dispo,encore une fois châpeau,.merci
J'ai une question sur la standardisation. On m'a vendu ça comme un moyen d'avoir toutes les données se rapprochant les unes des autres et ainsi devoir utiliser moins d'epoch dans mon algo de deep learning, étant donné que les poids n'auraient pas à compenser les distances entre chaque valeur des variables. Seulement, je ne suis pas certains de comprendre pourquoi standardiser en fonction de X_train uniquement et utiliser cette moyenne et cet écart type sur le X_test plutôt que de standardiser l'ensemble des données,puis diviser en train et test, ou tout standardiser,diviser et restandardiser, ou encore standardiser X_train et X_test mais en fonction de leur moyenne et écart type respectifs (jusque là, seul la seconde méthode m'a donné de plus mauvaise résultat). Y a t il une raison théorique ?
Bonjour à l'execution du code final j'ai une erreur stipulant que polynomialfeatures___degree,et 'sgdclassifier__penalty ' ne sont pas des parametres de sgdclassifier
Merci
génial ;)
Merci :)
Merci pour ces videos!
Petite question technique, j'ai tenté un pipeline (OrdinalEncoder et KNeighbors) sur le dataset titanic et je tombe sur l'erreur - Found unknown categories ['1'] in column 0 during transform. La catégorie existe bien.
titanic = titanic[['survived', 'pclass', 'sex', 'age']]
titanic.dropna(axis=0, inplace=True)
y = titanic['survived']
X = titanic.drop('survived', axis=1)
model = make_pipeline(OrdinalEncoder(),KNeighborsClassifier(n_neighbors=3))
model.fit(X, y)
model.score(X, y)
model.predict(np.array([1, 'male', 26]).reshape(1, 3))
une idee?
Bonjour, il y a surement une fautes de frappe, avez vous bien mis handle_unkown ?
Est-ce que R fonctionne de la même manière que python? avec la notion de transformer et estimator? c a d est ce qu il va transformer le test de la meme manière que le train?
Merci beaucoup pour vos excellentes vidéos!
Lors du preprocessing, est-il possible d'inclure un traitement des outliers, notamment avec une méthode provenant de sklearn?
Bonjour ! Oui c'est posible avec l'algorithme Isolation Forest que je recommande vivement, et qui est présent dans sklearn. Pour apprendre a l'utiliser, je vous conseille la vidéo 24/30 sur l'apprentissage non-supervisé
Parfait. Merci pour la réponse et bravo pour le suivi.
Salut, superbe vidéo, toujours un plaisir de t'écouter Guillaume. J'ai une petite question sur le transformer et le pipeline. Tu as montré qu'on réalisait le fit_transform sur les données d'entrainement, et qu'on pouvait ensuite transformer les données de test.
Si des données de validation interviennent, est-ce qu'il faut les séparer des données d'entrainement avant d'utiliser le fit_transform?
Bonjour, désolé pour ma réponse tardive (j'ai deménagé).
Si c'est une cross_validation, tu n'as rien a faire, tout est pris en charge par Sklearn.
Si ce sont des données de Validation, alors oui il faut les séparer en 3 set : Train, Val, Test, et faire le fit_transform uniquement sur le Train. Ensuite le Transform() sur le Val, puis Le test aussi aura un Transform.
Bonjour et merci pour cette super vedeo ! j'ai un question à la mintute 18:15 pourquoi la transform de x_test elle a donné 0.4 et ne pas 0
Merci pour cette vidéo ! c'est très clair et bien expliquée! Juste une question; Quand tu dis qu'on ne perd pas d'information en appliquant la normalisation. Est ce que la variance n'est pas perdu en appliquant la méthode MinMax scaler?
Peace
Non elle n'est pas perdue, et on peut toujours faire marche arriere (revenir aux parametres de base)
Bonjour Guillaume, je viens de m'abonner à votre chaine que je trouve super! j'ai déjà une question: dans la video 22, vous présentez fit comme une méthode de transformation, parle-t-on du même fit qu'on a vu dans les Modèles LinearRegression, SVM...? ou s'agit -il d'un autre fit?
Oui c'est exactement le meme fit ! Il a pour but d'estimer les parametres de transformation (mais pas de prédiction) d'un modele de transformation (mais pas de prédiction). Mais c'est le meme principe ! :)
Désolé pour la réponse tardive, votre commentaire était tombé dans la boite "review" de l'algorithme TH-cam, je ne sais pas pourquoi.
Pour la partie de la normalisation transforme scaler, imaginez qu'on veuille rajouter une nouvelle variable comme vous l'avez fait avec 80, mais qui soit supérieure au max (en l'occurrence dans cet exemple supérieure à 120) ça ne va pas fausser l'information sur les variables ?
J'aurais une question: pourquoi tu n'as pris que les penalty de SGDClassifier?
Bonjour M. Saint-Cirgue,
je vous remercie pour vos vidéos qui représentent une mine d'or pour l'apprentissage efficace du machine learning et une prise en main rapide de Python.
J'ai une question :
est-ce que la valeur moyenne d'une variable normalisée (MinMax, RobustScaler) est plus robuste (représentative des observations qu'elle résume) que la valeur moyenne de cette variable non normalisée?
Bonjour @MachineLearnia , merci pour cette belle vidéo.
J'ai une question à cet effet, si mon dataset contient des variables qualitatives et quantitatives et que j'y applique le transformer onehitencoder, la transformation va t-elle affecter les variables qualitatives? Si oui, comment contourner le problème lorsqu'on veut juste transformer les variables qualitatives.
Merci beaucoup. Tres bonne question ! J'y réponds justement dans la prochaine vidéo qui sort dans quelques jours ! Il faut soit traiter chaque colonne indépendamment avec pandas et sklearn, soit construire une pipeline avec la Classe ColumnTransformer (le sujet de la prochaine vidéo)
svp je veux un programme qui permet de changer la couleur de certaints pixels dans l'image on veut pas changer toute la couleur de l'image ms juste certain pixel et mercii
Pour changer une image pixel par pixel il faut utiliser une technique d'indexing de Numpy (voir mes vidéos 11/30)
Bonjour,
J'ai voulu savoir s'il y avait des mises à bour concernant GridSearchCV? Car en executant les etapes de code et avec n'importe quel modèle de ML, je ne reçoit aucun hyperparametre à part le random_state déjà mentionné?
Merci d'avance et je vous remercie pou tous les efforts déployés.. à l'attente de vos prochaines playlist..
Bonjour, non il n'y a pas eu de MAJ depuis ma vidéo (pour gridsearchCV en tout cas). Je vous avoue que votre probleme est étrange, vérifiez bien votre code et si vous avez toujours des soucis, venez faire un tour sur notre discord.
Merci pour cette vidéo riche en contenu!
Apparemment ici le test_size est laissé à 0.25 (par défaut), ce qui donne 97% avec pre-processing et 84% sans pre-processing.
En passant par une boucle, on se rend facilement compte qu'en faisant varier test_size entre 0.25 et 0.50 (avec random_state=0), on obtient des précisions qui oscillent entre 92 et 98% avec pre-processing, et de 45 à 98% sans pre-processing.
Du coup, le pre-processing nous garanti une stabilité de la mesure de précision quelque soit la taille du Test set et donc réduit le coût total de données nécessaires ?
Non, le preprocessing ne permet pas cela. D'une maniere général, on met dans le test set juste le nombre de donnée nécessaire pour se dire : "ok, mon modele a une performance de 97% sur le test set et je suis quasi sur que la performance va etre la meme a l'avenir car j'ai suffisamment de donnée dans le test set pour faire une généralisation". C'est un peu comme les tests statistiques : on essaie de savoir si les résultats qu'on observe peuvent etre raisonnablement étendus a la réalité
Bjr Guillaume, j'aimerais savoir comment ca se passe si une valeur du data set test est plus grande que le plus grand élement du data set train. Parce que selon la formule dans le cas que je viens de citer, on obtiendra une valeur plus grande que 1.
Bonjour Guillaume,
merci pour les merveilleuses explications, très claires, nettes.
J'ai une question, elle est la suivante:
Pour la phase d'encodage nous pouvons utiliser la méthode de transformation des données catégorielles en numérique à travers
df['column'].astype('category').cat.codes? Si oui quel est l'avantage par rapport à la méthode données dans sklearn.preprocessing? Quelle méthode préconiserez-vous?
Merci.
Bonjour et merci beaucoup :)
Les 2 méthodes se valent. Celles de sklearn ont l'avantage de pouvoir être intégrées aux pipelines, je les conseille pour faire du machine learning. Quand on fait juste une analyse de données (sans développer de modeles) alors pandas suffit.
Salut Guillaume,
Merci tout d'abord pour ce super travail, pour l'effort et l'explication.
j'ai deux questions :
1- est-que vous pouvez faire un video pour expliquer le principe de SGDclassifier comme vous avez fait pour le gradient de descent ??
2 - Est que vous pouvez faire une autre série des videos pour le Deeplearning ou bien NLP ??
et Merci encore une fois !!!
Salut.
Alors pour aller droit au but : J'ai prévu de faire tout ca ! :D
(et je suis en train de faire la série de vidéos sur le deep learning aujourd'hui meme)
Merci beaucoup pour cette vidéo!
Petite question, est ce qu'il faut normaliser les valeurs encoder pour les utiliser avec les autres variables? Merci :)
Non, il n'est pas utile de normaliser des variables catégorielles, sauf si on commence a avoir plus de 10 catégories nominales (donc des nombres allant de 0 a 10)
Bonjour Guillaume, merci pour toutes ces videos très pédagogiques et très intructives. Je suis un débutant en data analytics avec Python. Je traite principalement des données de spectroscopie. Je me demandais si il existait un moyen de tester différents pre-processing (par exemple différentes normalisation, différentes dérivées, ...) en plus des hyperparamètres? Et d'automatiser tout ça? Merci
Bonjour, oui c'est possible et c'est une chose que l'on fait souvent. Je crois que je montre comment dans les vidéos suivantes (de souvenir) Mais attention cela demande beaucoup de ressources et beaucoup de temps de calcul. On ne peut pas aveuglément tester des millions de configurations possibles, et il faut faire des choix.