Parcours · Python Data & IA
Python Data & IA
Des bases du langage à NumPy, Pandas, la visualisation, le machine learning et le NLP. Le code s'exécute dans votre navigateur : rien à installer, chaque exercice est corrigé en comparant votre sortie à celle attendue.
- leçons
- 170
- modules
- 20
- installation
- 0
Ce parcours compte pour plusieurs certifications
Toutes les certifications- Développeur Python data (Fondamentaux)40 leçons
- Développeur Python data (Avancé)35 leçons
- Analyste de données (Fondamentaux)12 leçons
- Analyste de données (Avancé)24 leçons
- Praticien du machine learning (Fondamentaux)11 leçons
- Praticien du machine learning (Avancé)15 leçons
- Data engineer (Fondamentaux)7 leçons
Chaque niveau demande des leçons de plusieurs parcours, puis un examen final corrigé sur nos serveurs. Le diagnostic et le plan de révision sont ouverts sans abonnement.
Certification Central Campus : ni diplôme d'État, ni certification professionnelle enregistrée au répertoire national.
Introduction à Python pour la data
Exécuter ses premières lignes, afficher et commenter des valeurs, reconnaître les types d'une ligne de données et calculer une première statistique.
5 leçons
Pourquoi Python pour la data ?
Comprendre le rôle de Python en analyse de données et exécuter une première ligne.
Ouvrir la leçonAfficher des données simples
Stocker des valeurs dans des variables et les inspecter avec print().
Ouvrir la leçonCommentaires et lisibilité
Documenter son code et désactiver une ligne de débogage avec #.
Ouvrir la leçonTypes de données en contexte data
Reconnaître int, float, str et bool dans une ligne de données, et situer l'environnement d'exécution.
Ouvrir la leçonPremière mini-analyse
Calculer une moyenne, un minimum et un maximum sur une liste de valeurs.
Ouvrir la leçonVariables et types
Nombres, chaînes, listes, dictionnaires, tuples et ensembles, conversions et formatage : les briques avec lesquelles on représente une donnée en Python.
8 leçons
Nombres entiers et flottants
Calculer avec int et float : opérateurs, division entière et reste.
Ouvrir la leçonChaînes de caractères
Nettoyer un nom de colonne avec strip, lower et replace, puis l'afficher dans une f-string.
Ouvrir la leçonListes : collections ordonnées
Créer une liste, y ajouter une valeur, lire par index et agréger.
Ouvrir la leçonDictionnaires : clés et valeurs
Lire, modifier et compléter un dictionnaire ; lire une clé absente sans erreur avec get().
Ouvrir la leçonEnsembles et tuples
Dépaqueter un tuple de coordonnées et dédoublonner des catégories avec un set.
Ouvrir la leçonConversions de types
Convertir des textes lus dans un fichier en int et en float avant de calculer.
Ouvrir la leçonFormater un rapport avec les f-strings
Arrondir, séparer les milliers, aligner et afficher des pourcentages avec les spécifications de format.
Ouvrir la leçonTrier et découper une liste
Ajouter, découper (slicing) et trier une liste de tuples avec sorted(key=..., reverse=True).
Ouvrir la leçonContrôle de flux
Conditions, boucles, break et continue, enumerate et zip, compréhensions de listes, de dictionnaires et d'ensembles : décider et répéter sur des données.
8 leçons
Conditions if
Prendre une décision selon une condition, combinée avec and.
Ouvrir la leçonelif et else
Choisir entre plusieurs cas, dans le bon ordre, puis calculer selon la branche.
Ouvrir la leçonBoucle for
Parcourir une liste pour accumuler un total et repérer un maximum.
Ouvrir la leçonBoucle while
Répéter tant qu'un objectif n'est pas atteint, en comptant les tours.
Ouvrir la leçonbreak et continue
Ignorer une valeur invalide avec continue et arrêter la lecture d'un flux avec break.
Ouvrir la leçonList comprehensions
Construire une liste transformée ou filtrée en une expression.
Ouvrir la leçonenumerate et zip
Numéroter les éléments d'une liste et parcourir plusieurs colonnes en parallèle.
Ouvrir la leçonCompréhensions de dictionnaires et d'ensembles
Transformer et filtrer un dictionnaire, extraire des valeurs uniques avec une compréhension d'ensemble.
Ouvrir la leçonFonctions
Encapsuler une règle métier dans une fonction testable : paramètres, valeurs par défaut, *args et **kwargs, lambda, map et filter, exceptions.
8 leçons
Définir une fonction
Écrire une règle de calcul une seule fois et la réutiliser.
Ouvrir la leçonParamètres et valeurs de retour
Retourner plusieurs résultats à la fois et gérer le cas vide.
Ouvrir la leçonArguments par défaut
Une remise par paliers avec une option facultative.
Ouvrir la leçon*args, **kwargs et paramètres nommés
Accepter un nombre variable d'arguments et imposer des options nommées.
Ouvrir la leçonFonctions lambda et clés de tri
Trier et choisir des enregistrements avec key=lambda.
Ouvrir la leçonmap, filter et compréhensions
Transformer et filtrer une séquence, et choisir la forme la plus lisible.
Ouvrir la leçonGérer les erreurs : try, except, else, finally
Convertir une colonne de saisies en comptant les rejets au lieu de planter.
Ouvrir la leçonSynthèse : une fonction de nettoyage robuste
Nettoyer une colonne hétérogène : None, chaînes vides, virgules, espaces, valeurs invalides.
Ouvrir la leçonProgrammation orientée objet
Modéliser des objets métier : classes, constructeur, méthodes, héritage avec super(), méthodes spéciales et dataclasses.
6 leçons
Créer une classe
Définir un type et donner à chaque objet ses propres données.
Ouvrir la leçonLe constructeur __init__
Initialiser, valider et dériver l'état d'un objet dès sa création.
Ouvrir la leçonMéthodes : calculer et modifier l'état
Ajouter à une classe des méthodes qui lisent et modifient ses attributs.
Ouvrir la leçonHéritage et super()
Spécialiser une classe en réutilisant le constructeur et les méthodes du parent.
Ouvrir la leçonMéthodes spéciales : afficher, comparer, trier
__str__, __repr__, __eq__ et __lt__ pour des objets lisibles et triables.
Ouvrir la leçonModéliser un enregistrement avec @dataclass
Champs typés, valeurs par défaut, field(default_factory=list) et méthodes dérivées.
Ouvrir la leçonFichiers et JSON
Lire et écrire de vrais fichiers texte, CSV et JSON avec with open(), le module csv et le module json.
5 leçons
Lire un fichier texte
Ouvrir un fichier avec with open(), le parcourir ligne à ligne et l'exploiter.
Ouvrir la leçonÉcrire dans un fichier
Créer un rapport avec le mode "w", le compléter avec "a", puis le relire.
Ouvrir la leçonLire un CSV avec le module csv
Pourquoi split(",") échoue, et comment csv.DictReader gère les guillemets.
Ouvrir la leçonCharger du JSON imbriqué
Lire une réponse d'API avec json.loads et accéder aux champs sans planter.
Ouvrir la leçonÉcrire du JSON lisible
json.dumps avec ensure_ascii=False et indent, puis aller-retour par un fichier.
Ouvrir la leçonPython moderne pour la data
Annotations de type, dataclasses, collections, dates, expressions régulières, générateurs, pathlib et tests : la boîte à outils standard d'un développeur data.
8 leçons
Annotations de type
Documenter les types attendus avec list[dict[str, float]] et X | None.
Ouvrir la leçonDataclasses figées, ordonnées et copiées
frozen=True, order=True, field(compare=False) et dataclasses.replace.
Ouvrir la leçonCompter et regrouper : Counter et defaultdict
Counter.most_common pour les fréquences, defaultdict(list) pour regrouper.
Ouvrir la leçonDates et durées avec datetime
strptime, strftime, timedelta et ISO 8601 pour calculer des délais.
Ouvrir la leçonExpressions régulières pour nettoyer du texte
re.findall, re.sub et groupes nommés sur des téléphones et des montants.
Ouvrir la leçonGénérateurs et lecture paresseuse
yield pour traiter un fichier ligne à ligne sans tout charger en mémoire.
Ouvrir la leçonChemins et dossiers avec pathlib
Path, l'opérateur /, glob, rglob, read_text et write_text.
Ouvrir la leçonTester son code avec assert
Écrire des fonctions de test à la manière de pytest et les exécuter à la main.
Ouvrir la leçonNumPy : les bases
Créer et inspecter des tableaux, indexer, découper, calculer élément par élément, résumer, filtrer avec des masques et agréger par axe.
8 leçons
Importer NumPy et créer un array
Convertir une liste en tableau NumPy et générer des séquences avec np.arange.
Ouvrir la leçonShape et dtype
Inspecter la forme, le nombre de dimensions, la taille et le type d'un tableau.
Ouvrir la leçonIndexation
Lire et modifier un élément ou une ligne d'un tableau 2D.
Ouvrir la leçonDécoupage (slicing)
Extraire des tranches 1D et 2D, et éviter le piège des vues.
Ouvrir la leçonOpérations vectorielles
Calculer élément par élément entre un tableau et un nombre, ou entre deux tableaux.
Ouvrir la leçonStatistiques de base
Moyenne, médiane, écart-type, minimum et maximum d'une série.
Ouvrir la leçonMasques booléens et np.where
Filtrer avec des conditions, les combiner avec & et |, compter et étiqueter.
Ouvrir la leçonAxes et agrégations
Agréger une matrice par ligne ou par colonne avec axis, trouver le meilleur mois avec argmax.
Ouvrir la leçonNumPy avancé
Broadcasting, produit matriciel, reshape, tri et classement, aléatoire reproductible et vectorisation d'une boucle.
6 leçons
Broadcasting
Combiner des tableaux de formes différentes : règle d'alignement par la droite et keepdims.
Ouvrir la leçonAlgèbre linéaire
Produit matriciel avec @ pour valoriser des commandes, et contrôle d'une matrice de rotation.
Ouvrir la leçonReshape
Passer de mesures à la suite à un tableau jours × créneaux, puis agréger par jour.
Ouvrir la leçonTrier et classer : sort, argsort, unique
Classer des vendeurs avec argsort, calculer des rangs et compter des catégories avec np.unique.
Ouvrir la leçonNombres aléatoires
Générer des données reproductibles avec np.random.default_rng.
Ouvrir la leçonVectorisation vs boucles
Réécrire une boucle de calcul de score en une expression vectorisée et vérifier l'égalité.
Ouvrir la leçonPandas : introduction
Series, DataFrame, lecture d'un CSV, inspection d'un jeu de données et sélection par label ou par position.
8 leçons
Series Pandas
Un vecteur dont chaque valeur porte une étiquette, et l'alignement par label.
Ouvrir la leçonDataFrame depuis un dict de colonnes
Construire un tableau colonne par colonne et lire sa structure.
Ouvrir la leçonDataFrame depuis une liste d'enregistrements
Lire des lignes au format JSON (une ligne = un dict) et vérifier l'équivalence.
Ouvrir la leçonLire un CSV avec read_csv
Séparateur, décimale, dates et types : lire un export « à la française » sans rien casser.
Ouvrir la leçonInspecter un jeu de données
Dimensions, types et valeurs manquantes : le contrôle à faire avant toute analyse.
Ouvrir la leçonColonnes et index
Choisir un identifiant comme index avec set_index et accéder aux lignes par label.
Ouvrir la leçonSélectionner des colonnes
Une colonne (Series), plusieurs colonnes dans un ordre précis (DataFrame), ou par type.
Ouvrir la leçonloc et iloc
Sélectionner lignes × colonnes par étiquette ou par position, et le piège des bornes.
Ouvrir la leçonManipulation Pandas
Filtrer, trier, créer des colonnes, nettoyer du texte, empiler et joindre des tables, puis tout enchaîner.
9 leçons
Filtrer des lignes
Masques booléens combinés avec & et |, isin et between.
Ouvrir la leçonTrier les données
Tri sur plusieurs colonnes avec un sens différent pour chacune.
Ouvrir la leçonCréer une colonne
Calculs vectoriels, assign() et modification sûre d'une sélection.
Ouvrir la leçonSupprimer et renommer
drop() et rename() pour préparer un export propre.
Ouvrir la leçonNettoyer du texte avec .str
strip, lower, replace, contains et extract sur des libellés produit sales.
Ouvrir la leçonVectoriser d'abord, apply en dernier
np.where et np.select pour les règles simples, apply pour une fonction métier existante.
Ouvrir la leçonEmpiler des tables avec concat
Réunir deux exports mensuels avec pd.concat, ignore_index et keys.
Ouvrir la leçonJoindre des tables avec merge
inner, left et outer, indicator=True pour repérer les orphelins, validate pour sécuriser.
Ouvrir la leçonChaîner les traitements avec pipe
Synthèse du module : assign, query, sort_values et pipe en une seule chaîne lisible.
Ouvrir la leçonGroupby et agrégations
Résumer des données par segment : groupby, agrégations nommées, transform, filter, top N par groupe, tableaux croisés et passage du format large au format long.
10 leçons
groupby de base
Découper un tableau par catégorie, puis compter et additionner par groupe.
Ouvrir la leçonAgrégations multiples
Calculer plusieurs indicateurs par groupe en une seule passe avec agg et l'agrégation nommée.
Ouvrir la leçonAgrégations nommées sur plusieurs clés
Grouper sur deux colonnes, compter des valeurs distinctes, utiliser une fonction maison et aplatir le résultat.
Ouvrir la leçontransform
Rapporter une statistique de groupe sur chaque ligne, sans perdre le détail.
Ouvrir la leçonfilter sur groupes
Garder ou écarter des groupes entiers selon un critère métier.
Ouvrir la leçonTop N et cumul par groupe
Classer les lignes à l'intérieur de chaque groupe, garder les N meilleures et calculer un cumul.
Ouvrir la leçonTable pivot
Croiser deux catégories dans un tableau, avec agrégation, valeurs manquantes et totaux.
Ouvrir la leçonpd.crosstab
Compter des combinaisons de catégories et les lire en pourcentages par ligne.
Ouvrir la leçonFormat large et format long
Passer d'un tableau large à un tableau long avec melt, et revenir avec pivot.
Ouvrir la leçonSynthèse : rapport par catégorie
Combiner agrégation nommée, part du total, filtre métier et tri dans un rapport complet.
Ouvrir la leçonNettoyage des données
Valeurs manquantes, doublons, types, texte et catégories, valeurs aberrantes, dates et séries temporelles, discrétisation, jusqu'à une fonction de nettoyage complète.
10 leçons
Détecter les valeurs manquantes
Mesurer les trous d'un tableau : par colonne, par ligne, en taux de complétude.
Ouvrir la leçonfillna et dropna
Supprimer les lignes inexploitables, imputer par la médiane du groupe, propager une valeur dans le temps.
Ouvrir la leçonGérer les doublons
Distinguer doublons exacts et doublons sur une clé métier, et garder la version la plus récente.
Ouvrir la leçonConvertir les types
Transformer du texte sale en nombres avec to_numeric, et choisir le bon type entier.
Ouvrir la leçonHarmoniser du texte et des catégories
Unifier des libellés saisis à la main, puis les stocker en type category.
Ouvrir la leçonDétecter des outliers
Appliquer la règle de l'écart interquartile (IQR) et mesurer l'effet des valeurs extrêmes sur la moyenne.
Ouvrir la leçonDates et agrégation temporelle
Convertir du texte en dates, extraire mois et jour de la semaine, agréger par semaine avec resample.
Ouvrir la leçonMoyenne glissante et variations
Lisser une série quotidienne avec rolling et mesurer les variations avec shift, diff et pct_change.
Ouvrir la leçonDiscrétiser avec cut et qcut
Découper une variable continue en tranches fixes (cut) ou en tranches de même effectif (qcut).
Ouvrir la leçonSynthèse : fonction de nettoyage
Écrire une fonction nettoyer(df) qui enchaîne texte, doublons, types et valeurs manquantes, avec un rapport avant/après.
Ouvrir la leçonVisualisation avec Matplotlib
Construire des graphiques lisibles avec Matplotlib et pandas, choisir le bon graphique pour une question métier et l'annoter.
9 leçons
Figure et axes
Créer une figure, un axe, et relire ce qu'on a tracé.
Ouvrir la leçonGraphique en ligne
Comparer deux séries dans le temps avec une légende.
Ouvrir la leçonDiagramme en barres
Comparer des catégories avec des barres triées et étiquetées.
Ouvrir la leçonHistogramme
Lire la distribution d'une variable continue.
Ouvrir la leçonNuage de points
Montrer la relation entre deux variables et sa tendance.
Ouvrir la leçonChoisir le bon graphique
Associer une question métier au graphique qui y répond, et le rendre lisible.
Ouvrir la leçonAnnoter un graphique
Ligne d'objectif, mise en avant du maximum et message clair.
Ouvrir la leçonTracer depuis pandas
df.plot(kind=...) renvoie un axe Matplotlib qu'on termine comme d'habitude.
Ouvrir la leçonTableau de bord en sous-graphiques
Assembler quatre vues cohérentes dans une seule figure.
Ouvrir la leçonStatistiques et EDA
Analyse exploratoire avec pandas et NumPy : tendance centrale, dispersion, position, distributions, modalités, corrélations et rapport EDA.
9 leçons
describe()
Lire un résumé statistique et repérer une distribution asymétrique.
Ouvrir la leçonMoyenne ou médiane ?
Choisir la bonne mesure de tendance centrale sur des données asymétriques.
Ouvrir la leçonDispersion : variance, écart-type, CV, IQR
Mesurer la régularité d'un phénomène, pas seulement son niveau.
Ouvrir la leçonQuantiles et percentiles
Mesures de position, percentiles de service et méthodes d'interpolation.
Ouvrir la leçonDistribution avec NumPy
Compter par intervalle avec np.histogram et interpréter la forme.
Ouvrir la leçonvalue_counts()
Fréquences et proportions des modalités, valeurs manquantes comprises.
Ouvrir la leçonMatrice de corrélation
Pearson et Spearman avec df.corr(numeric_only=True).
Ouvrir la leçonCorrélation n'est pas causalité
Démasquer une variable confondante sur des données simulées.
Ouvrir la leçonRapport EDA complet
Synthèse : dimensions, types, manquants, doublons, statistiques et modalités.
Ouvrir la leçonProbabilités et tests
Probabilités, lois usuelles, échantillonnage, intervalles de confiance (formule et bootstrap), tests d'hypothèse (proportions, Student, khi-deux), jusqu'au test A/B.
12 leçons
Univers et événements
Calculer une probabilité en dénombrant les cas.
Ouvrir la leçonProbabilité conditionnelle et Bayes
P(A | B), la formule de Bayes et le paradoxe du dépistage.
Ouvrir la leçonLoi binomiale
Compter les succès sur n essais indépendants.
Ouvrir la leçonLoi normale
Probabilités et quantiles avec statistics.NormalDist.
Ouvrir la leçonÉchantillonnage et théorème central limite
La moyenne d'un échantillon varie, et cette variation se prévoit.
Ouvrir la leçonIntervalle de confiance
Encadrer une moyenne inconnue à partir d'un échantillon.
Ouvrir la leçonBootstrap : intervalle par rééchantillonnage
Encadrer une médiane ou une moyenne sans formule, en rééchantillonnant les données.
Ouvrir la leçonTest d'hypothèse
H0, H1, statistique de test et décision au seuil α.
Ouvrir la leçonTest t de Student (Welch)
Comparer deux moyennes avec scipy.stats.ttest_ind et mesurer la taille d'effet.
Ouvrir la leçonTest du khi-deux d'indépendance
Tester le lien entre deux variables catégorielles avec scipy.stats.chi2_contingency.
Ouvrir la leçonp-valeur et ses pièges
Ce que dit une p-valeur, ce qu'elle ne dit pas, et les comparaisons multiples.
Ouvrir la leçonTest A/B
Comparer deux taux de conversion avec un test de deux proportions.
Ouvrir la leçonMachine Learning avec scikit-learn
Le cycle complet d'un modèle supervisé : découper les données, entraîner une régression puis une classification, les évaluer honnêtement sur un jeu de test et enchaîner préparation et modèle dans une Pipeline.
6 leçons
Découper en entraînement et test
Mettre de côté un jeu de test avec train_test_split et préserver la proportion des classes avec stratify.
Ouvrir la leçonRégression linéaire
Entraîner une LinearRegression sur plusieurs variables, lire ses coefficients et prédire une nouvelle observation.
Ouvrir la leçonÉvaluer une régression : MAE, RMSE et R²
Mesurer l'erreur d'une régression sur le jeu de test et la comparer à une référence naïve (DummyRegressor).
Ouvrir la leçonClassification avec la régression logistique
Entraîner une LogisticRegression, prédire des classes et lire les probabilités avec predict_proba.
Ouvrir la leçonExactitude (accuracy) et piège du déséquilibre
Calculer l'exactitude d'un classifieur et voir pourquoi elle trompe quand une classe est rare.
Ouvrir la leçonPipeline : préparation et modèle
Enchaîner StandardScaler et LogisticRegression dans une Pipeline pour que la préparation n'apprenne que sur le train.
Ouvrir la leçonMachine learning appliqué
Préparer des données mixtes, valider proprement, choisir les bonnes métriques, utiliser arbres, forêts et boosting, régler un modèle sans fuite de données, puis segmenter et résumer des données sans étiquette.
13 leçons
Encoder les catégories et mettre à l'échelle
Transformer une colonne catégorielle avec OneHotEncoder et une colonne numérique avec StandardScaler, en n'apprenant que sur le train.
Ouvrir la leçonColumnTransformer : préparer des colonnes mixtes
Appliquer un traitement par type de colonne avec ColumnTransformer, dans une Pipeline qui prédit directement sur un DataFrame brut.
Ouvrir la leçonValidation croisée
Estimer la performance d'un modèle sur plusieurs découpages avec cross_val_score, KFold et StratifiedKFold.
Ouvrir la leçonMatrice de confusion, précision, rappel et F1
Décomposer les erreurs d'un classifieur avec confusion_matrix et lire précision, rappel, F1 et classification_report.
Ouvrir la leçonCourbe ROC, AUC et choix du seuil
Mesurer la qualité d'un classement avec roc_auc_score, puis choisir un seuil de décision selon le coût des erreurs.
Ouvrir la leçonArbres de décision et forêts aléatoires
Entraîner un DecisionTreeClassifier limité en profondeur et une RandomForestClassifier, puis lire feature_importances_.
Ouvrir la leçonGradient boosting
Entraîner un HistGradientBoostingClassifier, le comparer à un modèle linéaire et profiter de sa gestion native des valeurs manquantes.
Ouvrir la leçonSurapprentissage : score train contre score test
Faire varier la profondeur d'un arbre et repérer le surapprentissage à l'écart entre score d'entraînement et score de test.
Ouvrir la leçonRégler les hyperparamètres avec GridSearchCV
Chercher la meilleure combinaison d'hyperparamètres par validation croisée sur le train, puis confirmer sur le test.
Ouvrir la leçonFuite de données
Constater qu'une préparation ajustée avant le découpage gonfle les scores, et l'éviter en la plaçant dans la Pipeline.
Ouvrir la leçonSegmenter des clients avec KMeans
Regrouper des clients sans étiquette avec KMeans, choisir le nombre de groupes avec l'inertie et décrire les segments.
Ouvrir la leçonRéduire la dimension avec l'ACP (PCA)
Résumer des variables corrélées en quelques composantes avec PCA et lire explained_variance_ratio_.
Ouvrir la leçonProjet de synthèse : modèle de churn de bout en bout
Enchaîner préparation, comparaison de modèles par validation croisée, réglage et évaluation finale sur un problème de churn.
Ouvrir la leçonDeep Learning (concepts NumPy)
Réseaux de neurones écrits en NumPy pur : neurone, couches, pertes, descente de gradient, rétropropagation, boucle d'entraînement et régularisation.
11 leçons
Le perceptron
Un neurone à seuil et sa règle d'apprentissage, sur les portes ET et OU.
Ouvrir la leçonFonctions d'activation
Sigmoïde et ReLU, appliquées à tout un vecteur de scores.
Ouvrir la leçonUne couche dense en lot
Calculer X @ W + b pour plusieurs exemples à la fois.
Ouvrir la leçonRéseau à deux couches
Enchaîner une couche ReLU et une couche sigmoïde en vérifiant les shapes.
Ouvrir la leçonPertes de régression : MSE et MAE
Mesurer l'erreur d'un modèle et voir l'effet d'une grosse erreur.
Ouvrir la leçonSoftmax et entropie croisée
Transformer des scores en probabilités sur plusieurs classes, de façon stable.
Ouvrir la leçonDescente de gradient
Minimiser une vraie fonction de coût, pas à pas.
Ouvrir la leçonRétropropagation à la main
Dériver le gradient d'un neurone sigmoïde et le vérifier par différences finies.
Ouvrir la leçonBoucle d'entraînement complète
Entraîner une régression logistique en NumPy, du forward à la mise à jour.
Ouvrir la leçonSynthèse : un MLP qui résout XOR
Une couche cachée, la rétropropagation complète et une boucle d'entraînement.
Ouvrir la leçonRégularisation : L2, arrêt précoce, dropout
Lutter contre le surapprentissage en pénalisant les grands poids.
Ouvrir la leçonNLP et IA textuelle
Du texte brut au classifieur : nettoyage, normalisation, tokenisation, sac de mots, TF-IDF, similarité, classification évaluée et embeddings denses.
11 leçons
Explorer des avis clients bruts
Mesurer et inspecter du texte réel avant tout traitement.
Ouvrir la leçonNettoyer du texte avec les regex
Masquer URL, e-mails et identifiants, réduire les répétitions avec re.sub.
Ouvrir la leçonNormaliser : casse, accents, ponctuation
Uniformiser le texte avec casefold, unicodedata et str.maketrans.
Ouvrir la leçonTokenisation et mots vides
Découper proprement en tokens et compter les termes utiles.
Ouvrir la leçonSentiment par lexique et négation
Une baseline par mots-clés, et le piège de la négation.
Ouvrir la leçonSac de mots
Construire un vocabulaire et des vecteurs de comptage à la main.
Ouvrir la leçonTF-IDF calculé à la main
Pondérer un terme par sa rareté, puis vérifier avec TfidfVectorizer.
Ouvrir la leçonRecherche par similarité cosinus
Trouver l'entrée de FAQ la plus proche d'une question avec TF-IDF.
Ouvrir la leçonClassifier des avis avec une Pipeline
TF-IDF et régression logistique dans une Pipeline, évaluées sur un jeu de test.
Ouvrir la leçonÉvaluer un classifieur de texte
F1 macro, matrice de confusion et analyse des erreurs.
Ouvrir la leçonEmbeddings denses
Vecteurs denses, similarité cosinus et analogies, jusqu'aux embeddings de phrases.
Ouvrir la leçon