Aller au contenu

Parcours · Algorithmes & IA

Algorithmes & IA

Comprendre comment pense une machine : 68 leçons progressives, des tout premiers algorithmes (variables, conditions, boucles, fonctions) aux structures de données, au tri et à la complexité, puis aux vecteurs, aux arbres de décision et aux réseaux de neurones. Aucun prérequis : on part de zéro.

leçons
68
modules
9
ateliers Python
68

Ce parcours compte pour plusieurs certifications

Toutes les certifications

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.

Progression

Trois paliers, sans trou dans la compréhension

Commencer la première leçon

Chaque module s'appuie sur le précédent. En suivant l'ordre, on passe naturellement du raisonnement algorithmique de base à l'intelligence artificielle.

  1. 01

    Débutant

    Qu'est-ce qu'un algorithme : variables, conditions, boucles, fonctions et décomposition d'un problème.

  2. 02

    Intermédiaire

    Structures de données, mesure de la complexité (Big-O), algorithmes de tri et de recherche.

  3. 03

    Expert

    Paradigmes, vecteurs et maths pour l'IA, régression, arbres de décision et réseaux de neurones.

Les fondations : qu'est-ce qu'un algorithme ?

Débutant

Le socle de tout : comprendre ce qu'est un algorithme, manipuler des variables, enchaîner des instructions, prendre des décisions avec des conditions et répéter des actions avec les boucles POUR et TANT QUE.

6 leçons

Fonctions et abstraction

Débutant

Réutiliser du code grâce aux fonctions, maîtriser paramètres et valeur de retour, décomposer un problème, le tester sur ses cas limites, et comprendre la récursivité : une fonction qui s'appelle elle-même.

6 leçons

Structures de données

Intermédiaire

Choisir la bonne structure avant d'écrire l'algorithme : tableaux pour l'accès par position, pile et file pour contrôler l'ordre de traitement, dictionnaires et ensembles pour retrouver une donnée sans tout parcourir, tas pour servir le plus urgent, arbres et graphes pour les hiérarchies et les réseaux.

8 leçons

13Intermédiaire

Tableaux et listes : des données ordonnées

Ranger plusieurs valeurs sous un seul nom, y accéder par un indice qui commence à 0 et les parcourir avec une boucle pour calculer une moyenne, un maximum et sa position.

Ouvrir la leçon
14Intermédiaire

Piles et files : LIFO et FIFO

Deux structures qui imposent l'ordre de sortie : la pile rend le dernier élément entré, la file le premier. Pratique : vérifier qu'une expression a des parenthèses équilibrées avec une pile.

Ouvrir la leçon
15Intermédiaire

Files d'attente (FIFO) avec deque

Traiter des demandes dans leur ordre d'arrivée, même quand de nouvelles arrivent pendant le traitement : simulation d'une file de tickets de support avec collections.deque.

Ouvrir la leçon
16Intermédiaire

Dictionnaires et tables de hachage (clé → valeur)

Retrouver une valeur par sa clé sans parcourir toute la collection : fonctionnement d'une table de hachage, coût moyen et pire cas, et le motif du comptage de fréquences.

Ouvrir la leçon
17Intermédiaire

Ensembles : doublons, appartenance, intersection

Dédoublonner une liste, tester l'appartenance sans tout parcourir et croiser deux listes de clients par intersection, différence et union : les ensembles et leurs opérations.

Ouvrir la leçon
18Intermédiaire

Tas binaire et file de priorité

Toujours servir l'élément le plus urgent, même quand il arrive en dernier : le tas binaire, son rangement dans un tableau, et la file de priorité avec heapq.

Ouvrir la leçon
19Intermédiaire

Les arbres : organiser une hiérarchie

Modéliser une hiérarchie avec des nœuds, chercher dans un arbre binaire de recherche et mesurer sa hauteur : rapide quand l'arbre est équilibré, lent quand il dégénère en liste.

Ouvrir la leçon
20Intermédiaire

Les graphes : modéliser des réseaux

Représenter un réseau de villes, de personnes ou de tâches par des sommets et des arêtes, choisir entre liste et matrice d'adjacence, et calculer le degré de chaque sommet.

Ouvrir la leçon

Complexité et efficacité

Intermédiaire

Mesurer le coût d'un algorithme en temps et en mémoire, lire une notation O, Ω ou Θ, reconnaître les grandes classes de complexité, connaître le coût réel des opérations Python et arbitrer entre vitesse et espace.

5 leçons

Tri et recherche

Intermédiaire

Chercher une valeur dans une collection et trier des données : du balayage linéaire à la dichotomie et à ses variantes, des tris simples aux tris en O(n log n), jusqu'à l'usage professionnel de sorted.

8 leçons

26Intermédiaire

La recherche linéaire

Parcourir un tableau élément par élément jusqu'à trouver la cible ou épuiser la liste : la méthode qui marche partout, trié ou non, en O(n) dans le pire cas.

Ouvrir la leçon
27Intermédiaire

La recherche dichotomique (binaire)

Sur un tableau trié, comparer la cible à l'élément du milieu et éliminer la moitié de l'intervalle à chaque étape : 20 itérations au plus pour un million.

Ouvrir la leçon
28Intermédiaire

Dichotomie : première occurrence, bisect et recherche sur la réponse

Trouver la première occurrence dans un tableau trié avec doublons, utiliser bisect_left, puis chercher la plus petite valeur qui satisfait une contrainte.

Ouvrir la leçon
29Intermédiaire

Le tri par sélection

Chercher le minimum de la partie non triée et le placer en tête, passe après passe : toujours n(n − 1)/2 comparaisons, au plus n − 1 échanges, non stable.

Ouvrir la leçon
30Intermédiaire

Le tri par insertion

Insérer chaque élément à sa place dans la partie déjà triée en décalant les plus grands : un tri stable et adaptatif, linéaire sur des données presque triées.

Ouvrir la leçon
31Intermédiaire

Le tri fusion (diviser pour régner)

Couper le tableau en deux, trier chaque moitié récursivement, puis fusionner deux listes triées : O(n log n) dans tous les cas, stable, avec O(n) de mémoire.

Ouvrir la leçon
32Intermédiaire

Le tri rapide (quicksort)

Choisir un pivot, ranger les plus petits à sa gauche et les plus grands à sa droite, puis trier chaque côté : O(n log n) en moyenne, O(n²) si le pivot est mauvais.

Ouvrir la leçon
33Intermédiaire

Trier en pratique : sorted, key, stabilité, tri multicritère

En production, on ne réécrit pas un tri : sorted avec key et reverse, la stabilité pour les tris multicritères, et le tri par comptage quand il fait mieux.

Ouvrir la leçon

Paradigmes algorithmiques

Expert

Les grandes stratégies de conception : diviser pour régner, deux pointeurs, algorithmes gloutons, programmation dynamique (escalier, sac à dos, distance d'édition), retour sur trace, puis les graphes : parcours, plus court chemin pondéré et tri topologique.

10 leçons

34Avancé

Diviser pour régner

Découper un problème en sous-problèmes indépendants, les résoudre récursivement puis combiner : maximum d'un tableau et comptage des inversions entre deux classements.

Ouvrir la leçon
35Avancé

Deux pointeurs et fenêtre glissante

Parcourir un tableau une seule fois avec deux indices : meilleure semaine de ventes, plus courte période qui atteint un objectif et paire de montants égale à un budget.

Ouvrir la leçon
36Avancé

Les algorithmes gloutons

Faire à chaque étape le meilleur choix local, sans revenir en arrière : rapide et parfois optimal, comme pour planifier des réunions, parfois faux, comme pour rendre la monnaie avec des pièces inhabituelles.

Ouvrir la leçon
37Avancé

La programmation dynamique

Mémoriser les résultats de sous-problèmes qui se répètent : la méthode en quatre étapes (état, transition, cas de base, ordre de remplissage) appliquée aux façons de monter un escalier.

Ouvrir la leçon
38Avancé

Le sac à dos 0/1 par programmation dynamique

Choisir des projets sous contrainte de budget pour maximiser la valeur : table dp[i][w] remplie pas à pas, reconstruction des choix et contre-exemple du glouton par ratio.

Ouvrir la leçon
39Avancé

Distance d'édition (Levenshtein)

Compter le nombre minimal d'insertions, suppressions et substitutions entre deux mots : dédoublonner des noms de clients mal saisis et proposer une correction orthographique.

Ouvrir la leçon
40Avancé

Le retour sur trace (backtracking)

Explorer les choix possibles un par un et revenir en arrière dès qu'une branche mène à une impasse : la technique derrière les labyrinthes, le Sudoku et les problèmes de placement.

Ouvrir la leçon
41Avancé

Parcourir un graphe : BFS et DFS

Visiter tous les sommets accessibles d'un graphe : le parcours en largeur (BFS, avec une file) donne les distances en nombre d'arêtes, le parcours en profondeur (DFS, pile ou récursion) plonge le plus loin possible.

Ouvrir la leçon
42Avancé

Plus court chemin pondéré : Dijkstra

Calculer les temps de trajet minimaux depuis un entrepôt quand les routes n'ont pas toutes la même durée : file de priorité, relâchement des arêtes et reconstruction du chemin.

Ouvrir la leçon
43Avancé

Tri topologique : ordonner des tâches dépendantes

Trouver un ordre d'exécution qui respecte toutes les dépendances d'un pipeline de données, comme le font Airflow et dbt, et détecter un cycle qui rend tout ordre impossible.

Ouvrir la leçon

Maths pour l'IA : vecteurs et fonctions

Expert

Les briques mathématiques de l'apprentissage automatique, expliquées simplement : vecteurs, distances, similarité cosinus, matrices, fonctions, fonction de coût, dérivées et descente de gradient.

8 leçons

44Intermédiaire

Les vecteurs : représenter des données

Un vecteur est une liste de nombres qui décrit un objet. Mesurez la ressemblance de deux maisons par la distance euclidienne et découvrez l'effet d'échelle.

Ouvrir la leçon
45Intermédiaire

Opérations sur les vecteurs : norme et produit scalaire

Addition, multiplication par un scalaire, norme et produit scalaire : les quatre opérations vectorielles de base du machine learning, calculées composante par composante.

Ouvrir la leçon
46Intermédiaire

Similarité cosinus : comparer des textes et des embeddings

Classer des documents par pertinence avec la similarité cosinus, comme l'étape de recherche d'un RAG : produit scalaire divisé par les normes, insensible à la longueur.

Ouvrir la leçon
47Intermédiaire

Matrices : produit matrice-vecteur et matrice-matrice

Une matrice est un tableau de nombres en lignes et colonnes. Calculez un chiffre d'affaires par magasin et la sortie d'une couche de neurones W·x + b.

Ouvrir la leçon
48Intermédiaire

Les fonctions mathématiques (et la fonction linéaire)

f(x) associe une sortie à chaque entrée ; la fonction linéaire y = a·x + b, sa pente et son ordonnée à l'origine, et comment retrouver la droite à partir de deux points.

Ouvrir la leçon
49Avancé

La fonction de coût : mesurer l'erreur

Comparer prédictions et réalité avec l'erreur quadratique moyenne (EQM), l'erreur absolue moyenne (MAE) et la RMSE, puis choisir le meilleur de deux modèles.

Ouvrir la leçon
50Avancé

Dérivée et gradient : d'où vient la direction de descente ?

La dérivée mesure la pente locale d'une fonction. Comparez dérivée numérique et dérivée exacte, puis calculez le gradient de l'EQM d'une droite selon a et b.

Ouvrir la leçon
51Avancé

La descente de gradient : apprendre en optimisant

Descendre la pente d'un vrai coût f(a) = (a − 3)² pas à pas ; le rôle du taux d'apprentissage, de la convergence vers le minimum à la divergence en oscillant.

Ouvrir la leçon

Machine learning supervisé

Expert

Apprendre à partir d'exemples étiquetés, et le mesurer honnêtement : découpage entraînement, validation et test, régression et classification, métriques, normalisation, k plus proches voisins, arbres de décision et méthodes d'ensemble, tout codé à la main en Python standard.

10 leçons

52Avancé

Qu'est-ce que le machine learning ?

Apprendre une règle à partir d'exemples plutôt que l'écrire à la main : étiquettes, jeu d'entraînement et jeu de test, et la référence constante qu'un modèle doit battre.

Ouvrir la leçon
53Avancé

Entraînement, validation, test et fuite de données

Découper un jeu de données sans tricher : mélange reproductible, découpage 60/20/20, validation croisée à k plis, fuite de données et découpage chronologique des séries temporelles.

Ouvrir la leçon
54Avancé

La régression linéaire : prédire un nombre

Ajuster la droite qui prédit un prix à partir d'une surface : erreur quadratique moyenne, descente de gradient sur des données centrées-réduites et solution exacte des moindres carrés.

Ouvrir la leçon
55Avancé

La classification et la régression logistique

Prédire une catégorie plutôt qu'un nombre : score linéaire, fonction sigmoïde, probabilité entre 0 et 1, frontière de décision et choix du seuil selon le coût des erreurs.

Ouvrir la leçon
56Avancé

Matrice de confusion, précision, rappel et F1

Évaluer un classifieur au-delà de l'exactitude : matrice de confusion, précision, rappel, score F1, piège des classes déséquilibrées et compromis obtenu en faisant varier le seuil.

Ouvrir la leçon
57Avancé

Normaliser les caractéristiques : min-max et centrage-réduction

Mettre les variables à la même échelle avant un calcul de distance : mise à l'échelle min-max, centrage-réduction, paramètres appris sur l'entraînement seul et garde-fou pour une colonne constante.

Ouvrir la leçon
58Avancé

Les k plus proches voisins (k-NN)

Classer un point d'après ses k voisins les plus proches : distance euclidienne, tri, vote majoritaire avec départage explicite, effet du choix de k et rôle de la normalisation.

Ouvrir la leçon
59Avancé

Les arbres de décision

Une suite de questions oui ou non pour classer un exemple : nœuds, branches, feuilles, traduction directe en SI/SINON imbriqués et test des frontières de chaque question.

Ouvrir la leçon
60Avancé

Choisir une question : impureté de Gini et gain

Comment un arbre choisit ses questions : impureté de Gini d'un nœud, Gini pondéré d'un découpage, gain, choix glouton de la meilleure question et découpage dégénéré à écarter.

Ouvrir la leçon
61Avancé

Forêts aléatoires et boosting (méthodes d'ensemble)

Combiner plusieurs arbres pour dépasser leurs limites : vote majoritaire d'une forêt aléatoire, puis gradient boosting qui ajuste chaque nouvel arbre sur les résidus des précédents.

Ouvrir la leçon

Apprentissage non supervisé et réseaux de neurones

Expert

Regrouper des données sans étiquettes (k-means), résumer deux variables corrélées en un axe (ACP), calculer un neurone puis un réseau, l'entraîner par rétropropagation, comprendre l'attention des LLM, et finir par le diagnostic du surapprentissage et des biais.

7 leçons

62Avancé

L'apprentissage non supervisé et le clustering (k-means)

Sans étiquettes, l'algorithme regroupe ce qui se ressemble. Le k-means alterne affectation des points au centre le plus proche et recalcul des centres, jusqu'à stabilité.

Ouvrir la leçon
63Avancé

La réduction de dimension (ACP)

Deux variables corrélées racontent presque la même chose. L'ACP trouve l'axe qui capture le plus de variance : on le calcule à la main sur deux notes, valeurs propres comprises.

Ouvrir la leçon
64Avancé

Le neurone artificiel (perceptron)

Entrées × poids + biais, puis fonction d'activation : le neurone artificiel est la brique de tous les réseaux. On le calcule sur trois entrées, dont le cas limite z = 0.

Ouvrir la leçon
65Avancé

Les réseaux de neurones

Empiler des couches de neurones pour obtenir des frontières non linéaires. On calcule à la main la propagation avant d'un réseau 3 → 2 → 1, couche par couche, sur trois entrées.

Ouvrir la leçon
66Avancé

La rétropropagation pas à pas

Comment un réseau corrige ses poids : propagation avant, dérivation en chaîne jusqu'à chaque poids, mise à jour, et contrôle du gradient analytique par un gradient numérique.

Ouvrir la leçon
67Avancé

Embeddings et attention : l'algorithmique derrière les LLM

Un mot devient un vecteur, puis chaque mot regarde les autres : on calcule à la main les scores d'attention, un softmax stable et la moyenne pondérée qui forme la sortie.

Ouvrir la leçon
68Avancé

Bien apprendre : surapprentissage, validation et biais

Comparer l'exactitude d'entraînement et de test pour diagnostiquer surapprentissage et sous-apprentissage, puis mesurer un écart d'équité entre groupes avant tout déploiement.

Ouvrir la leçon