FEATURE SELECTION avec SKLEARN (23/30)
Вставка
- Опубліковано 9 чер 2024
- 0:00 : Intro
02:26 : VarianceThreshold
06:55 SelectKBest
11:23 SelectFromModel
15:18 : La matrice coefficients
20:50 RFE + RFECV
► MON SITE INTERNET EN COMPLÉMENT DE CETTE VIDÉO:
machinelearnia.com/
► REJOINS NOTRE COMMUNAUTÉ DISCORD
/ discord
► D'autres BONUS sur Tipeee:
fr.tipeee.com/machine-learnia
► Recevez gratuitement mon Livre:
APPRENDRE LE MACHINE LEARNING EN UNE SEMAINE
CLIQUEZ ICI:
machinelearnia.com/apprendre-...
► Télécharger gratuitement mes codes sur github:
github.com/MachineLearnia
► Abonnez-vous : / @machinelearnia
► Pour En Savoir plus : Visitez Machine Learnia : machinelearnia.com/
► Qui suis-je ?
Je m’appelle Guillaume Saint-Cirgue et je suis Data Scientist au Royaume Uni. Après avoir suivi un parcours classique maths sup maths spé et avoir intégré une bonne école d’ingénieur, je me suis tourné vers l’intelligence artificielle de ma propre initiative et j’ai commencé à apprendre tout seul le machine learning et le deep learning en suivant des formations payantes, en lisant des articles scientifiques, en suivant les cours du MIT et de Stanford et en passant des week end entier à développer mes propres codes.
Aujourd’hui, je veux vous offrir ce que j’ai appris gratuitement car le monde a urgemment besoin de se former en Intelligence Artificielle.
Que vous souhaitiez changer de vie, de carrière, ou bien développer vos compétences à résoudre des problèmes, ma chaîne vous y aidera.
C’est votre tour de passer à l’action !
► Une question ? Contactez-moi: contact@machinelearnia.com
IMPORTANT ! UPDATE DE SKLEARN :
- pour RFE : min_features_to_select n'existe plus et l'algorithme a légerement changé : il faut maintenant définir le nombre de variable que l'on veut atteindre avec n_features_to_select et l'algorithme élimine au fur et a mesure les variables en suivant le processus que j'ai mentionné dans la vidéo
- Pour SelectFromModel, je dis dans la vidéo que les variables sont séléctionnées a partir de la moyenne des coefficients. En fait je fais la une "simplification" mais en réalité les variables séléctionnées sont celles pour lesquelle la Norme des coefficient est supérieure a la moyenne des normes. Ci-dessous un code :
selector = SelectFromModel(SGDClassifier(), threshold='mean')
selector.fit(X, y)
importances = np.linalg.norm(selector.estimator_.coef_, axis=0, ord=1)
mean = np.mean(importances)
print(selector.get_support())
print(importances > mean)
Merci pour vos efforts. Vous êtes parmi les rares qui ont décidé de fournir des formations de qualités gratuitement! un contenu progressif, une pédagogie intéressante et des montages très illustratifs. Je recommande cette chaîne pour toute personne désirant faire son pas dans la monde de machine Learning. Bravo cher Guillaume.
Merci beaucoup, ca me fait tres plaisir :)
Un sujet pas des plus simples mais pourtant très bien expliqué ✔ 😉
Merci ^^
Quel régal ! Ca fait 2 semaines que je suis les vidéos avec mon Jupyter Notebook, tout marche, le prof est clair, c'est que du bonheur !
Que du bonheur pour moi aussi, merci :)
Bonjour et encore une fois Merci Guillaume pour toutes ces videos, on ne sait vraiment pas comment vous remercier ???!!!!,
Merci beaucoup. Vous venez de me remercier avec ce commentaire de remerciement ! ^^
(vous pouvez aussi me soutenir sur Tipeee, si vous le désirez)
Encore une magnifique vidéo de votre part. J'ai particulièrement apprécié la manière dont vous avez simplifié l'explication du SelectFromModel avec le threshold = mean.
J'espère qu'il y a une vidéo qui parle des modules avec la sélection basée sur le pvalue que je trouve plus rigoureux qu'une valeur de seuil arbitraire.
En passant, l'attribut grid_scores ne fait plus partie de la classe RFECV et est remplacée par cv_results_ qui donne encore plus de détails (merci Chatgpt 😁).
Encore Merci pour ce que vous faites !
waouh quelle vidéo! c'est tellement bien expliqué!! merci du fond du coeur pour toutes ces informations!
Merci ^^
Waouh tout est clair et simple à comprendre vraiment merci ,avec toi le machine learning est simple à comprendre et en plus passionnant .merci infiniment,merci
Merci beaucoup cher ami !
Bonjour Guillaume, merci pour cette precieuse video sur la feature selection, en python, avec ScikitLearn !
Merci bcp pour ton temps que tu nous accordes. Tes vidéos m'aident énormément dans la compréhension de tous ces termes liés au ML qui me paraissaient compliqués bien avant que je ne tombe sur ta chaîne.
Ca me touche beaucoup, merci !
c'est tellement bien expliqué!! merci du fond du coeur pour toutes ces informations!
Merci beaucoup !
Merci beaucoup pour ces vidéos. elles sont vraiment compréhensibles. Grace à toi j'ai beaucoup appris!!!
Je suis heureux de l'apprendre :)
Merci Monsieur pour cette belle contribution à la vulgarisation du machine learning
je vous en prie !
j'écoute chaque video de ta chaine et je n'ai que du positif à leur sujets. tu es un formateur de très haut calibre! J'avais acheté une formation sur udemy mais la manière que tu explique les concepts dépasse largement la formation. Merci ! Merci !!!
J'ai remarqué en avançant dans cette série de vidéo, qui tu avais tendance à faire des simplifications de certaines notions. Au début, je ne saisissais pas trop et je pensais que tu te trompais parfois. Et ensuite je me suis rendu compte que tu simplifiais, car les notions que tu partages dans cette série de vidéo son des notions assez complexes et vastes pour certaines et que pour les rendre accessible il est nécessaire parfois de prendre certains raccourcis. Je te félicite, car de cette façon des gens comme moi qui n'avons pas étudier le ML à la fac ou nulle part ailleurs on peut se former quand même sans avoir forcément énormément de prérequis. Et ça, c'est beau.
Merci, tu as tout a fait compris ma démarche et ca me fait vraiment plaisir, car cela demande beaucoup de travail (des dizaines d'heures, voire des centaines, pour faire les scripts, les animations, trouver les bons mots, bien vulgariser) J'écris parfois 5 a 10 brouillons pour expliquer un concept que je connais déjà bien, juste pour trouver l'explication accessible a tous.
Super vidéo comme toujours, merci ! :)
Vraiment un grand merci à vous pour tous les efforts que vous faites. J'ai suivi vos enseignements avec admiration à travers votre chaine. Je vous souhaite beaucoup de succès dans vos projets.
Merci beaucoup !
merci pour tout Guillaume!
Vos vidéos sont de très haute qualité
Merci beaucoup !
Merci beaucoup Guillaume pour ce cours très bien expliqué comme d'habitude, je te souhaite plein de succès ;)
Merci beaucoup Kamal :)
Vraiment vos vidéo c'est le top du top, un grande merci ;)
Merci beaucoup !
Très Bonne explication, je vous souhaite une meilleur continuation. Je kiffe tous vos vidéo franchement.
Merci beaucoup a bientot :)
Super vidéo pour reconstruire les bases ! Merci
ca fait bien plaisir !
super bien explique j'adore tes video, merci du fond du coeur
De rien, c'est un plaisir :)
Encore un coup de Maître ! Merci pour cette superbe vidéo.
Merci a vous !
Vraiment vous étes le meilleur.Merci encore pour vos videos.
Merci beaucoup ! :)
Nice work mate, you are a real hero.
Thanks a lot !
Excellent travail M.Machine Merci beaucoup
merci :)
Au top merci Guillaume !
Merci !
Vraiment au top comme toujours,
Merci beaucoup, vous m'aidez beaucoup pour mon apprentissage, dommage étant étudiant donc je n'ai pas d’expérience , j'ai jamais codé un programmes de ML mais grâce à vous je commence à voir mieux ce métier, son principe et comment ça marche à l’intérieur, j'attends avec impatience les prochaine vidéos.
En fait je trouve que SKlrearn est très riche pour le preprocessing, et beh c'est un peu problématique, je m'explique, on a appris avec vous beaucoup de choses sur le pré traitement du dataset, du la partition du dataset, et de la cross validation etc.., nettoyage des données, choix de la metric, sélection de variable, le choix du modèles, le choix de la cv, les pipeline , et j'aimerais savoir comment avoir une méthodologie ou un ordre à suivre pour appliquer tous ces pré traitement,et comment à chaque fois choisir la meilleure méthodes du prétraitement pour avoir la meilleur performance possible,
J'attends avec impatience la suite, surtout les vidéos où on étudie vraiment la pratique et suivre pas à pas votre démarche de résolution de problème.
Vous méritez que votre chaîne soit connue d'avantage car elle est très très très bien et croyez moi c'est assez rare de voir un travail de bonne qualité.
Merci pour vos efforts immenses, merci de trouver à chaque fois du temps pour nous .
Merci beaucoup,
bon courage.
Merci beaucoup pour votre message ! Oui je comprends qu'il y ait beaucoup d'information ! C'est normal d’être un peu perdu et c'est la raison pour laquelle les 5 dernières vidéos de cette série portent sur la méthodologie et la pratique de projets ! Une fois la série terminée, je ferai beaucoup de vidéos de projets également !
@@MachineLearnia merci infiniment pour vos efforts envers nous, bon courage.
Merci beaucoup pour cette vidéo ! :)
Merci ^^
Hey Guillaume, la vidéo ne va pas vite pour certains au contraire 😉 J'en profite pour te laisser un GRAND MERCI pour tout ce contenu el les efforts fournis afin d'avoir des cours de cette qualité 🤩🤩 Un GRAND MERCI pour toutes ces explications minutieuses et franchement BRAVO pour toutes tes vidéos 💙💙💙💙
Pas de problème quant à la rapidité , non ce n'est pas trop rapide et c'est très bien expliqué. C'est très intéressant car c'est très similaire
à l'économétrie, vu de manière plus simple mais l'architecture est semblable. Merci pour cette vidéo limpide et consistante.
Merci beaucoup :)
Au top Guillaume ! Comme d'habitude
Merci beaucoup !
merci beaucoup pour vos videoes 👍👍👍
Merci vidéo très utile
Génial, bravo.
Excellent, merci beaucoup !
Merci a vous !
Merci infiniment pour cette vidéo
De rien :)
Merci pour cette vidéo et votre travail
C'est un plaisir, merci !
Merci, excellente vidéo.
merci et de rien :)
Excellente idée cette petite pause, c'était coton ce passage sur les matrices (même si je pense avoir compris le principe). Encore merci pour cette vidéo ;)
Merci beaucoup ! Je suis content si tu as pu comprendre le passage avec les matrices
Très bien expliqué Merci bqqqq
Merci :)
Merci beaucoup mon ami
Encore un grand merci pour tout Guillaume. Vous êtes super avec tout ce que vous avez créé (Vos vidéo super explicite , votre livre sur le ml , comunauté discord , Tipeee etc). Par contre , j'aurais une petite question. Est ce que vous parlerez un jour d'interface graphique (pas tkinter car trop simpliste et ce n'est pas très beau)? Je parle d'un interface graphique qui s'ouvre sur une page web afin de vraiment manipuler facilement les choses et de ne plus devoir aller dans le code python pour chipoter (avoir une bonne visibilité==> exemple un onglet qui permet de sélectionner le type de régression que l'on veut faire). D’ailleurs si vous avez un petit lien sur un truc qui permettrai de créer une interface graphique web généré depuis le code python ça m'intéresserait :)
Encore un grand merci pour tout , vous êtes incroyable.
Je ne suis pas un expert en interface graphique. En milieu professionnel, les data scientists et Data Engineer n'ont pas pour rôle de développer des interfaces. A la place, nous utilisons les APIs fournies par des outils comme ceux du Cloud etc.
nice videos, well explained
I'm still at the 6th minute but felt the urge to thank you for sharing this !!!!! Merci infiniment
You're so welcome!
Très clair, merci :)
de rien :)
t est vraiment genial. merci beaucou p
Un grand merci.
de rien :)
Je fais rarement de commentaires mais là .. Tu es le meilleur !! Bravo pour tes cours !! Merci !!
Merci beaucoup pour ton commentaire alors ! Je le prends comme un honneur ! :D
Bonjour Guillaume. Tout d'abord, je dis: WOUW. Tu es le meilleur. J'ai jamais vu une formation aussi bien structurée et expliquée. Un énorme merci à toi.
Et une question, stp: Doit-on vraiment appliquer un modèle ML qui fait une sélection des features pour développer un modèle ML avec SelectFromModel ou RFE ? Càd, si on applique directement un modèle (sans faire SelectFromModel ou RFE), le modèle risque de donner un moins bon résultat ?
Je m'attends à ce que l'algorithme du modèle élimine de toute facon les features inutiles dans sa phase de training..
Vraiment un grand Merci :-)
De rien :)
Super vidéo
Merci infiniment!!!
de rien :)
bravo, et encore... bravo
merci pour les efforts car tes vidéos sont très passionnantes. moi personnellement je ne saurai m'enlace
Merci beaucoup a toi :)
J'apprends le francais et le feature selection en meme temp ;) . Thanks!
Well done my friend ! :)
merci
Merc beaucoup pour la vidéo 🙂 très utile et surtout très bien expliqué !
J'ai une question j'aimerais utiliser les estimateurs à partir des coefficients pour un réseau de neurones mais c'est un réseau implimenté sur torch ( j'utilise une fonction de train implimenté a la main) et je n'utilise pas .fit() pour entraîner le model.
Ma question peut-on utiliser les estimateurs à partir des modèles appris dans le cas d'un CNN implimenté sur torch ?
Merci encore une fois pour la vidéo ça m'était très utile 👌
Bonjour,
Merci bcp pour ces vidéos que je trouve très utile.
Je viens de terminer toute les vidéos et le problème c'est qu'on je suis à la fin je me souviens plus de toute les notions présentées dans les premières vidéos.
C'est clair que ça demande bcp de pratique pour les approprier mais je ne sais pas si vous pouvez nous préparer une vidéo dont vous présentez une application de toute les notions fondamentales et souvent utilisées dans le ML.
Sinon je te félicite pour les vidéos qui sont vraiment magnifique
l9iti akhouya chi solution ?
Votre formation est vraiment géniale. Vous expliquez les choses de manière simple et vous êtes un bon pédagogue. Le petit souci que j'ai eu est dû au langage utilisé parce que je suis un peu plus familiarisé avec R
Je suis heureux de pouvoir vous aider ! :) Que pensez-vous de Python vs R alors ? Je ne maitrise pas R donc je serais curieux de connaitre votre avis :)
great!!!! thanks
Glad you liked it!
Merci pour cette vidéo !
you are very pedagogue ;)
En revanche, lorsque j'applique la technique RFECV je n'obtiens pas toujours les mêmes résultats quand je relance plusieurs fois le test c'est normal ?
Merci beaucoup ! :)
Oui il faut initialiser votre estimateur avec un générateur aléatoire random_state fixer a une valeur précise, par exemple random_state=0
@@MachineLearnia ah oui merci !
23/30, très claire as always...
Merci beaucoup :)
AHAH sa fesait longtemps la tablette pour faire des maths! Bon les vidéos je les trouves pas trop rapide meme celle-ci n'était pas rapide juste la partie ou t'est rentré dans les mathématiques c'était un peu speed mais bon pas exagéré non plus han! Sinon à part sa super vidéo sa me permet de compléter mes outils de features selection et pour l'ACP je m'attendais à la voir mais on ne l'a pas aborder!
Merci Ulrich ! l'ACP nous allons la voir dans la prochaine vidéo, car ce n'est pas une technique de sélection de variables, mais de projection de variables (grosse nuance)
Bonjour et merci pour ces explications . Je pense que le rythme des vidéos est très satisfaisant, c'est vraiment compréhensible
.
Est-il judicieux d'utiliser ces méthodes de sélection de variables pour des data set assez large, par exemple 150-200 variables?
Merci beaucoup. C'est justement dans ces cas qu'il faut utiliser des méthodes de sélection de variables et de réduction de dimension (algorithme PCA que l'on verra dans la prochaine video)
des videos tres utiles, or pas de regression .
merci
bonjour et merci pour tes vidéo j'aimerais savoir si à la fin vous feriez une vidéo dans laquelle vous montreriez les étapes à suivre dans un projet de machine learning .merci d'avance
Merci ! je vais en faire plusieurs ! (ca commence a la vidéo 26)
Super vidéo merci beaucoup Guillaume !
J'ai une petite question quand on utilise SGDClassifier avec le threshold="mean" pour déterminer les coéfficients à garder. Pourquoi regarde t-on les coéfficients supérieurs à la moyenne seulement ? Un grand coefficient négatif montre également une grande relation entre x et y, non ?
Merci encore pour cette série de vidéos vraiment au top 😍
Bonjour Jonathan ! Oui oui c'est correct. J'ai juste utilisé "mean" dans cette vidéo pour expliquer le principe, mais ca n'est pas forcément celui que j'utiliserai pour un SGDClassifier !
Déjà Grand Bravo pour les vidéos. Dans un cours de DataMining, pour travailler la réduction de variables, on utilisait les ACP. Est-ce que l'on peut utiliser les 2 méthodes ou est-ce l'un ou l'autre ?
Parfois l'une marche mieux que l'autre, il faut tester les 2 :)
Merci pour vos efforts et le partage , j'apprends beaucoup avec vous (je suis dans le secteur télécom) , j'ai une petite remarque : à partir de la minute 24:44 vous dites que le score 80% est obtenu si l'estimateur prends les 4 variable (toutes les variables) en considération et le score 84,66% si on élimine une variable et 77,33% si on élimine deuxième variable , j'ai changé le min_features_to_select de 1 à 4 et j'ai constaté que le dernier score 77,33% est obtenu si l'estimateur prends les 4 variable (toutes les variables), le score 84,66% si on élimine une variable, le score 80% si on élimine la deuxième variable et le score 87,33% si on élimine la troisième variable, je pense qu'il faut lire de droite à gauche et non pas l'inverse , merci monsieur
Bonjour, un grand merci d’abord.
Sinon j’aimerais bien savoir pourquoi vous utilisez SGDClassifier (c’est quel genre de modèle de classification SVP).
Bonjour, c'est un algorithme de classification trers simple qui repose sur la déscente de gradient stochastique. J'aime bien l'utiliser pour les exemples car c'est un algorithme très représentatif du Machine Learning et c'est un des plus simples a comprendre mathématiquement.
Je vais bientot lancer une série qui explique la différence entre tous ces algorithmes
super
Merci
Salut Guillaume, super vidéo encore une fois ! j'ai toutefois une question, lors de la feature selection, pourquoi on ne dois pas spliter le dataset en train, test ?
Bonjour. Si si on doit séparer le dataset avant de faire de la sélection de variable. (mais ici je ne le fait pas pour en venir aux faits, et que le tuto avance vite)
Bonjour,
Encore bravo pour le fond et la forme. Peut on utiliser ce mécanisme également avec des données qui ont été encodées ?... Dans votre exemple, on exploite des données numériques mais qu'en est il lorsqu'il s'agit de données qualitatives ? après encodage, on peut également sélectionner les variables intéressantes ? Merci de votre retour.
Merci ! Oui il est possible d'utiliser tous les concepts de cette vidéo pour les variables qualitatives, mais il faut au préalables les encoder en valeur numériques (car sinon les tests de dépendance et autres techniques ne fonctionnent pas, c'est juste mathématique). Donc il faut faire de l'encodage onehot ou encodage ordinale pour les valeurs qui ne sont pas des nombres, pour ensuite utiliser SelectKbest, SelectFromModel, etc.
Est ce que tu vas vite dans tes vidéos? Ouiiii ! Mais c'est l'intérêt d'une vidéo, on peut mettre sur pause pour prendre des notes. Il y a tellement d'informations à donner en 30 vidéos que je ne vois pas comment tu pourrais réduire... Encore bravo et un grand merci pour cette formation de qualité !
Merci beaucoup :)
Bonjour , j'ai une question a vous poser , si on veut tester notre model avec un échantillon externe (ne fait partie ni du train ni du test ) comment appliquer feature selection pour cet echantillon? merci
Bonjour Monsieur!
Bravo, c'est manifique ,
D'abord je vous remercis pour tous les efforts que vous êtes entrain de fournir pour nous produire des vidéos extrêmement intéressant , en effet je vous demande si c'est possible de m'envoyer des documents à propos l'apprentissage non supervisé ( le problème de régression si j'ai une base non labellisée comment va être résolu) .
ᐧ
Ma prochaine vidéo porte sur l'apprentissage non-supervisé, je pense que ça répondra a certaines de vos questions !
Merci monsieur
D'abord je vous remercie pour ces cours très bien expliquer. quelle methode choisir la methode de feature selection ou le PCA? est ce que ta envisager de faire des videos sur les algo arbre de décision, random forest, lasso, ...
je vais faire toute ces vidéos bientot, et elles seront géniales ! :)
Je conseille PCA uniquement pour réduire le temps de travail de la machine si elle travaille sur des milliers de variables et que ce sont des données non-structurée (par exemple des images et leur différents pixels)
Sinon, pour les problemes aux données structurées (type tableau excel) avec en général un nombre petit de variables (
Bonjour,
Merci encore pour la qualité et clarté de vos vidéos :)
Est ce que dans le cas d'un SelectFromModel, il ne faudrait pas une moyenne des valeurs absolues pour tenir compte des corrélations négatives ?
Pour la sélection de variable par variance, une feature pourrait présenter une faible variance et pourtant cette variance serait beaucoup plus impactante qu'une autre feature très variable. Par exemple le nombre de pièce dans un appartement contre le nombre de tableaux (décoration) pour estimer le prix d'un appartement.
Dans l'ensemble mon commentaire porte sur les critères d'utilisation d'un sélecteur plutôt qu'un autre et le risque que les tests de dépendances ou mesures statistiques utilisées (moyenne, variance) cachent des informations. J'espère être clair ^^
Pour ma part les vidéos ne vont pas trop vite car chaque point est correctement expliqué sur les bases précédemment acquise. Je mets souvent la vidéo sur pause pour prendre des notes, assimiler ou faire des recherches à coté et parfois je revisionne un passage pour être sur d'avoir bien saisi. En gros, je gère mon rythme :) En général il me faut le double de temps pour visionner une vidéo. Je suis très satisfait de cette méthode, en relisant mes notes plus tard je valide les connaissances acquises.
Je n'ai pas compris ta question sur SelectFromModel. Pour les variances, on utilise surtout cela pour éliminer les variance tres proches de zero (auquel cas, il est rare qu'elle soit bien corrélée a la cible y). A titre personnel, Je ne dépends jamais d'une méthode toute seule et j'essaie d'en utiliser plusieurs pour voir les résultats les plus intéressants.
@@MachineLearnia Merci de voter réponse, je ne suis pas très sur de mes questions. L'idée générale porte sur la possibilité de faire une mauvaise sélection en se basant sur des indicateurs peu pertinents. Tester plusieurs méthodes pour en analyser les résultats me semble une bonne manière de pas tomber dans ce piège.
Le contenue est très condenser c est vrai, mais tant qu il y a l option pause et retour sur UA-cam, alors il y a pas de problèmes. Parfois je reste 2 - 3 heures sur une seule vidéo pour en tirer le maximum.
Merci de nous faire part de ton savoir.
Merci beaucoup et bravo pour votre motivation et votre travail, vous irez loin ! :)
bonjour, merci pour cette vidéo. J'ai une préocupation, la sélection des variables interviennent avant ou après la standardisation et la labelisation des variables catégorielles?
Ca dépend de quelle opération de sélection il s'agit, mais en général on sélectionne les variables avant de les standardiser. (et apres avoir convertit les variables catégorielles)
Super vidéo encore :) Le REFCV correspond à un backward sélection? Existe il aussi le stepwise selection sur scikit learn?
Que voulez-vous exactement dire par backward selection ?
@@MachineLearnia C'est une technique de sélection de variable pour régression multiple par exemple. Il existe la forward également. La forward commence avec 1 variable puis ajoute à chaque boucle une variable et recalcule le score. Elle garde une variable si celle-ci a un impact significatif sur le score. La backward est l'inverse: elle commence avec toutes les variables puis en élimine au fur et à mesure.
@@alexiscarlier2773 On est d'accord, je voulais jute etre sur qu'on parlait de la meme chose. Personnellement je n'utilise pas de méthode forward avec sklearn, obligé de faire ca a la main
Hey ! superbe video ! j'imagine qu'il y a moyen de choisir un treshold different ? Je ne trouve pas d'informations sur internet.
Pierre
De quel threshold parles-tu ?
Salut Guillaume, merci pour cette vidéo comme d'hab au top,
J'ai une question concernant l'apprentissage de ton modèle et l'optimisation des variables :
- (ça serait super si tu pouvais nous faire plus tard une vidéo avec les meilleures méthodes mathématiques à appliquer dans tel ou tel cas par exemple Qi2 etc)
- Concernant l'apprentissage des données, je me demande si la machine en te donnant la meilleure performance et en se débarrassant des variables qui ont le moins de corrélation, est-ce que dans certain cas on risque pas de s'éloigner de la réalité ?
Je n'ai pas d'exemple en tête, mais s'il est facile de comprendre que la corrélation entre le prix d'un appartement et la peinture du hall d'entrée est très faible, j'imagine que dans certain cas ca doit être plus tricky que ca non ?
Je sais pas si je suis très clair, en fait j'imagine qu'on doit toujours contrôler quelle variable est sélectionnée ou abandonnée par le modèle ?
Salut et merci :)
- Oui je compte faire des vidéos qui expliquent quels tests statistiques utiliser dans différentes situations
- Bonne question ! La "réalité" n'est représentée que par des observations X->y. Le but du ML est d'approcher au mieux cette représentation (en faisant le moins d'erreurs possibles dans les prédictions versus y). Pour ca, on teste sur les données du testset (qui sont sensées représenter la réalité) je suis sur que tu es déja au courant. Le mieux est de tester différents modeles (avec différentes combinaisons de variables) pour retenir celui qui s'approche le plus de la "réalité", meme si cela implique d'éliminer certaines variables. Ce qui compte, ce sont les résultats, les faits.
- La corrélation n'est en effet qu'un signe de tendance similaires, c'est un élément nécessaire, mais pas suffisant au développement d'un bon modele
- Il n'est pas nécessaire de controler toutes les variables séléctionnée par le modele, d'autant plus qu'il est parfois tres difficile d'interpréter ces variables (dans le cas d'expansion polynomiales) Mais c'est sur que c'est un grand plus de comprendre quelle variables jouent un role important pour le modele (car ca nous permet d'améliorer sa performance, de discuter avec les spécialistes, et d'affiner notre stratégie)
@@MachineLearnia Super, merci de tes explications !
tout d'abord merci beaucoup pour votre effort
vos videos sont très utiles et faciles à comprendre
autre
Je travaille actuellement sur un projet qui gère le système de recrutement en utilisant l'apprentissage automatique qui va utiliser des CV et essayer de les classer en fonction de leurs compétences
je me demandais quel algo est le mieux pour cette situation
je pense à kBest et chi2
toutes les suggestions sont les bienvenues
mercii
Bonjour, pour faire une bonne étude de CV, il faut surement utiliser un modele de traitement du langage naturel avec LSTM. Vous pouvez aussi créer un Bag of Words des CV analyser et trier les CV qui contiennent le plus certains mots que vous cherchez, mais attention a ne pas trouver les CV spams, je ne suis pas recruteur mais je pense que les bons candidats ne sont pas trouvés a travers le CV
@@MachineLearnia Merci pour votre réponse rapide
oui, je pensais utiliser nltk pour nlp
puis extraire les informations importantes dans des segments tels que: informations personnelles, compétences, projets etc. ça va aussi être une sélection basée sur la description de poste ou les exigences de l'entreprise.
extraire les compétences, l'université en utilisant des dictionnaires, puis leur donner un poids en fonction de leur importance et de leurs besoins. puis transférez toutes ces données dans des vecteurs afin que je puisse les utiliser dans l'apprentissage automatique, mais je ne sais pas quoi faire après cela :(
pour le rendre plus intelligent, je peux importer des informations github et LinkedIn en utilisant Api
je suis désolé d'avoir perdu votre temps. c'est juste mon premier projet d'apprentissage automatique, donc je suis confronté à beaucoup de difficultés et votre chainne m'aide beaucoup
Pas de soucis ! Votre démarche est bonne, c'est un bon début, je vous conseille de commencer par mettre en place des modèles simples avec une structure pour évaluer de façon cohérente tous les modèles que vous entraînez. C'est une des astuces les plus importantes en Data Science : Commencez par tester beaucoup d'idées simples et rapide a mettre en place, pour retenir les meilleurs idées et les améliorer avec d'autres idées simples et rapides a mettre en place.
Super vidéo très pédago comme d'habitude (on va s'habituer hein !!). Pour le coup, ça vaudrait peut-être la peine, pour compléter, de mettre quelques liens intéressants sur test du Khi2 et d'Anova.
Je suis d'accord avec toi pour les liens, je vais les rajouter bientôt, en attendant de produire moi-même des vidéos a ce sujet.
@@MachineLearnia qui seront plutôt des vidéos "matheuses" ou toujours orientées ML ? Car ce qui fait ta valeur ajoutée, ce sont les explications et liens avec le ML. Il existe suffisamment de références (très bonnes) sur les stats. Mais ce n'est que mon avis !
@@jmbdeblois Je suis d'accord et ma réponse est simple : Je ferai ce que la communauté me demande, donc merci a toi de me communiquer tes réflexions, elles sont vitales !
@@MachineLearnia je comprends ! pour moi, ton exploration des immenses possibilités de scikit-learn est géniale. Je me sens à l'aise en maths et en stats donc je n'ai pas besoin de ce genre de vidéos. Et puis après scikit, il y a tensorflow ! et puis il y a pytorch !! Ainsi, une incursion dans le PCA pourrait avantageusement éclairé cette vidéo sur les feature selection tout en parlant (gentiment) d'analyse multivariée
Je vais parler de la PCA dans la prochaine video (apprentissage non-supervisé) car ca n'est pas vraiment de la séléction de variables, mais de la projection de variables dans des espaces de sous-dimension. Mais oui comme tu l'a indiqué mon but est d'expliquer les algos de façon ML/pragmatique sans faire des maths pures et dures, car sinon il y a juste Wikipédia pour les maths, et les définitions
Bonjour Guillaume, merci encore pour ces vidéos. Sais-tu si c'est possible de faire une interval PLS pour la sélection de variable avec python? Merci
Il y a sklearn.cross_decomposition.PLSRegression
Super vidéo !
Une question sur la sélection de variables : faut-il normaliser avant d’utiliser les transformers ou les tests d’indépendance comme vu dans la vidéo du preprocessing ?
En effet, admettons deux variables X1 = [1, 2, 3] et X2 = [1000, 2000, 3000].
La variance de X1 sera de 0.666 contre 666,666 pour X2. Cela pourrait-il donc toujours avoir des répercussions sur les tests de dépendance ou bien cela dépend-il des cas ?
Un grand merci pour cette série de vidéos.
En effet si l'on effectue un test de student (t-test) ou bien ANOVA, alors il est nécessaire d'avoir des variances égales ou similaire, donc de normaliser les données. Sinon, pour un test d'indépendance chi2, ca n'est pas applicable (car on compare des fréquences entre catégories)
Bonjour Guillaume! Merci pour tes vidéos, j'ai une questions: faut il optimiser les paramètres du modèle avant la sélection des variables ou après? Merci
les 2 approches sont possibles, ca dépend de votre méthode de travail. Optimiser les hyper-params sur tous les modeles possibles peut prendre beaucoup de temps (c'est le soucis) Mais ca reste le mieux.
@@MachineLearnia merci!!
Super vidéo ! Je me pose une question quant au RFE, lorsque vous abordez les scores à chaque itération, vous dites que "l'algo" s’arrête car il constate une décroissance du score, mais cette technique dépend alors de l'ordre dans lequel sont donnée les features ? Car en s'arrêtant, il n'essaye pas d'enlever les features suivantes qui pourrait être inutiles ? Ou alors je passe à coté de qql chose ;)
Oui c'est correct, c'est une des limitations de l'algorithme, je n'ai pas dit qu'il était parfait ^^
Maintenant peut-etre qu'il va évoluer (et son implémentation dans sklearn) pour s'améliorer, mais c'est un peu comme les arbres de décision : quand on les construits avec la méthode id3, on n'obtient jamais le meilleur modele (c'est un probleme NP).
Alors je viens de consulter la documentation est on dirait qu'ils ont en effet modifié le modele RFE : On ne trouve plus de min_features_to_select, mais dorénavant n_features_to_select. Donc la procédure est répétée jusqu'a atteindre le but que l'on a fixé.
Bonjour, d'abord merci pour tes vidéos, ils sont super intéressants. J'ai une question svp. Si on a un problème de classification par example et je veux faire une feature selection en utilisant le test qui 2 est ce que je doit appliquer ce test que sur les features qualitatives et enlever ceux qui sont quantitatives ou c possible d'appliquer qui2 sur tout le dataset ? Et la même question pour la matrice de correlation qui normalement dans python se base sur la correlation de pearson et sachant que cette correlation ne s'applique que sur les variables quantitatifs est ce que c possible de l'appliquer sur tout le dataset ?
Je vous conseille de séparer les 2.
@@MachineLearnia d'accord, merci beaucoup.
Merci pour ta video!
Est ce que tu pourrais conseiller un algorithme python permettant de relever les relations "cachées" qu'il pourrait y avoir entre une/des feature et la target ? Par exemple, pour savoir si la target a une plus grande dépendance avec le sinus ou le cube d'une feature que de la feature en elle même. Un algorithme qui pourrait déterminé donc de nouvelles features sur base de celles qu'on a déjà. Je pensais a "Symbolic Regression" mais je me demande comment correctement l'appliquer.
Un tout grand merci pour tes vidéos en tout cas!
Salut. Une façon simple de procéder est d'utiliser Polynomial Features puis de calculer la corrélation ou covariance entre chaque variable et la target, c'est tres efficace et ca fait exactement ce dont tu parles
Top merci!
Top, mais je comprend pas elle étais upload hier ? Sa change rien super boulots👍🏿👌🏿
Question con mais quand, est il possible de rentrer des teste unitaire dans un programme de ml ?
Merci a toi ! La vidéo de hier a eu un petit soucis de qualité (un texte important ne s'affichait pas) je l'ai donc corrigée et remise en ligne !
Je ne suis pas sur de totalement comprendre ta question, peux-tu la reformuler stp ?
Dac je comprend mieux, dommage je peut pas comparer a celle d'hier 😂 bref en tout cas merci pour tes cours, grâce à eux je suis entrain de monter mon entreprise, donc si je flippe et que je dort pas c'est ta faute 😂 merci mille fois🙏🏿
Ma question est, quand je code un projet je met toujours des teste unitaire pour savoir si le code est pas cassé, ou qu'il a bien migré etc... ( c'est peut être très con mais c'est comme sa que j'ai appris et j'aime bien, " 'c'est pratique")
Est il possible de faire la même chose dans un code de ml ? Je vois pas comment aborder le problème pour être sur que rien à casser...
Merci encore
Aah oui si je vois tres bien de quoi tu parles. Oui bien sur, je fais tout le temps ca dans mes programmes, il faut mettre en place des tests pour valider ses fonctions, je ferai peut-etre une vidéo a ce sujet a l'avenir, mais c'est plus dans le cadre de la programmation classique que du ML
@@MachineLearnia topissime😊 tant qu'il y a des vidéos moi sa me vas
merci pour le moment..... nous y reviendrons avec des question plutard
Parfait ! je répondrai a vos questions :)
Merci pour la vidéo. Comment ça marche avec un datafrae qui a des variables qualitatives et quantitative en meme temps
On les traite séparement dans le dataframe (avec les fonctionnalités de pandas) ou alors avec une pipeline sklearn plus détaillées (voir ma video sur les pipelines avancées)
Merci pour vos effort, je voulais savoir quelle étape doit être la première : Features Selection ou Split train-test ? et pourquoi ?
toujours le train_test_split en premier lieu, pour ne pas séléctionner vos données en vous basant sur des informations du futur (aka les données de test)
👍
bonjour mr.svp je voudrais savoir si il faut des pre-requis en matrices pour suivre cette formation
Il suffit de suivre la vidéo que j'ai produit sur les matrices, elle dure 10 minutes et vous serez ok
Bonjour Guillaume,
Je vous remercie pour ce trésor,
Ça me permet de comprendre beaucoup mieux,.
Je viens de découvrir votre chaîne UA-cam, vraiment magnifique, j'ai adoré vos explications, trop bien ,super merci beaucoup.
Je vous demande si c'est possible de faire des exemple de data set comme celui de covid19, pour prendre la main surtout les arbres décisionnel, et SMOTE.
Je vous remercie par avance
Merci et bienvenue dans la communauté. J'ai sorti un tutoriel SMOTE sur ma page Tipeee
@@MachineLearnia Merci beaucoup ,je vais regarder