Construire un graphe de connaissances aligné sur les programmes de mathématiques et d’anglais de la maternelle à la terminale
Découvrez un graphe d’apprentissage statique et open source couvrant la maternelle à la terminale, avec 1 244 notions, 5 123 questions, le traçage des prérequis et des diagnostics adaptatifs — ainsi que d’importantes réserves concernant le contenu généré par l’IA.
Un apprenant qui répond incorrectement à une question n’a peut-être pas oublié la notion évaluée. La lacune peut se situer plusieurs étapes en amont : factoriser un trinôme peut dépendre de la compréhension des identités remarquables, tandis qu’une notion de fonction au lycée peut reposer sur des idées introduites au collège. Un diagnostic utile a donc besoin de plus qu’un score. Il lui faut un modèle des dépendances entre les notions — et un moyen de remonter ces dépendances jusqu’à leur origine.
C’est le problème que cn-math-taxonomy cherche à résoudre. Le dépôt associe un graphe de connaissances conçu en fonction des programmes scolaires à des banques de questions et à un outil de diagnostic adaptatif accessible dans un navigateur. Le jeu de données actuel comprend 1 244 points de connaissance formels, 1 877 liens de prérequis, 382 entrées de référentiels de programme et 5 123 questions en mathématiques et en anglais.
Ce que couvre le graphe
Le graphe de mathématiques couvre l’école primaire jusqu’au lycée : les classes de 1re à 6e année du primaire, les classes de 7e à 9e année du collège, les deux volumes de mathématiques obligatoires du lycée et trois volumes de spécialité à option. Les contenus du lycée s’appuient sur l’édition A de People’s Education Press (2019). L’anglais constitue un graphe distinct, couvrant les classes de 3e à 6e année du primaire et de 7e à 9e année du collège.
La répartition des chiffres est la suivante :
| Matière et niveau | Notions | Liens de prérequis | Questions |
|---|---|---|---|
| Mathématiques du primaire | 216 | 311 internes | 864 |
| Mathématiques du collège | 315 | 563 internes | 1 407 |
| Mathématiques obligatoires du lycée | 143 | 196 au total, liens inter-niveaux compris | 572 |
| Mathématiques de spécialité à option du lycée | 128 | 194 au total, liens inter-modules compris | 512 |
| Anglais du primaire | 197 | 236 | 788 |
| Anglais du collège | 245 | 342 | 980 |
Le graphe complet de mathématiques compte 802 notions et 1 299 liens. L’anglais en ajoute 442 notions et 578 liens. Pour les deux matières réunies, le graphe contient 1 877 liens : 1 279 stricts et 598 souples.
Ces catégories distinguent différents types de prérequis. Un lien strict signifie que l’apprenant a peu de chances d’étudier la notion cible avec succès sans maîtriser le prérequis. Un lien souple signifie que la notion antérieure est utile, mais ne constitue pas une condition absolue. Par exemple, une compétence algébrique véritablement indispensable peut être un prérequis strict, tandis qu’un ordre suggéré d’après la progression d’un manuel peut être souple.
Cette distinction est importante pour les diagnostics : considérer chaque notion antérieure comme obligatoire peut produire un parcours de remédiation inutilement long. À l’inverse, considérer chaque relation comme facultative risque de masquer l’origine d’une véritable lacune.
D’une réponse incorrecte à un parcours d’apprentissage
L’outil de diagnostic s’appuie sur ces liens pour décider quelle question poser ensuite. On commence par une notion ou un chapitre entier. Si l’apprenant répond correctement à la première question, l’outil marque la notion comme maîtrisée et ignore ses prérequis. En cas de réponse incorrecte, il pose une deuxième question de niveau équivalent ou plus facile. Une deuxième réponse correcte marque la notion comme « instable », sans remonter plus loin ; deux réponses incorrectes la marquent comme faible et déclenchent le traçage des prérequis, en vérifiant d’abord les prérequis stricts, puis les souples.
Le résultat est plus exploitable qu’un simple pourcentage : il peut faire apparaître les notions racines fragiles, celles qui semblent instables et un parcours d’apprentissage ordonné des premières classes aux suivantes. L’outil affiche aussi les entrées de référentiel associées et une représentation graphique du parcours. Les résultats peuvent être enregistrés localement, exportés en JSON, imprimés ou convertis en image partageable.
Par exemple, les difficultés d’un apprenant avec la complétion du carré peuvent être retracées jusqu’à la formule du carré parfait. Une notion de fonction au lycée peut mener à des concepts de fonctions quadratiques abordés au collège. C’est l’idée centrale du projet : diagnostiquer une cause probable, et pas seulement consigner une réponse incorrecte.
Examiner les données et lancer la démonstration
Le dépôt stocke ses données principales sous forme de tableaux JSON simples :
data/topics.jsoncontient les noms des notions, les domaines, les descriptions, les critères de maîtrise, les questions diagnostiques et les correspondances avec les référentiels.data/dependencies.jsoncontient les relations de prérequis, leur degré d’importance et une brève justification.data/questions.jsoncontient les banques de questions.data/cn-curriculum-standards.jsoncontient 382 entrées de référentiel : 310 en mathématiques et 72 en anglais.
Un enregistrement de notion comprend des champs tels que id, name, domain, grade, chapter, type, mastery_criteria et diagnostic_question. Une dépendance a la forme suivante :
{
"topicId": "cnm_221",
"prerequisiteId": "cnm_p042",
"strength": "hard",
"reason": "This concept uses the earlier skill directly."
}
Le graphe stocke les prérequis directs et applique une réduction transitive aux nouveaux liens, afin d’éviter de répéter des relations déjà induites par un parcours de prérequis plus proche. Les liens existants en mathématiques au collège ont été volontairement laissés inchangés lors des ajouts ultérieurs.
Le site est statique, mais ses pages récupèrent des données JSON : ouvrez-le donc via un serveur web local plutôt qu’avec file:// :
python3 -m http.server 8000
Rendez-vous ensuite sur http://localhost:8000/ pour la page d’accueil, http://localhost:8000/explore/ pour le graphe ou http://localhost:8000/diagnose/ pour les diagnostics. Une cible de démonstration est disponible à l’adresse http://localhost:8000/diagnose/?target=cnm_221&demo=1.
La validation et les tests du moteur peuvent être exécutés localement :
python3 scripts/validate.py
node tests/test_engine.js
Le validateur vérifie la validité du JSON, l’unicité des identifiants, la présence des champs requis, la validité des extrémités des liens, les doublons, les cycles, les nœuds isolés et les références aux référentiels. La variable STRICT_STANDARDS=1 transforme les correspondances manquantes avec les référentiels, qui ne sont alors que des avertissements, en erreurs. Le moteur de diagnostic est écrit en JavaScript sans dépendances et fonctionne aussi bien dans le navigateur que dans Node.
À considérer comme un prototype de recherche, pas comme une évaluation prête à l’emploi
Le dépôt expose ses limites avec une franchise inhabituelle — et cette prudence doit guider l’usage qu’en font les développeurs. Le contenu est une première ébauche générée par l’IA et n’a pas été relu par des enseignants. La granularité des notions, les critères de maîtrise, la qualité des réponses et, surtout, l’existence et le degré d’importance des liens de prérequis nécessitent une expertise avant que le graphe soit utilisé pour l’enseignement ou pour produire des recommandations d’apprentissage automatisées.
Le niveau de vérification varie également. Les questions de mathématiques du primaire et du collège ont fait l’objet de contrôles automatisés, et celles du collège ont bénéficié d’une seconde vérification indépendante. Les questions d’anglais du primaire et de mathématiques du lycée ont été vérifiées automatiquement, mais leurs réponses n’ont pas été résolues à l’aveugle par une personne indépendante ; l’expression utilisée pour la vérification et la réponse peuvent provenir du même processus de génération. Les questions d’anglais et leurs correspondances avec les référentiels n’ont pas été relues par des enseignants. Les questions d’anglais n’incluent ni compréhension orale ni expression orale.
L’alignement sur les programmes ne vaut pas certification officielle. Certaines entrées du référentiel sont des paraphrases publiques, signalées par verbatim: false et la mention « 待核 » (« à vérifier »). Plusieurs listes de chapitres de manuels s’appuient sur des sources tierces plutôt que sur un catalogue officiel de l’éditeur. En particulier, certaines parties des correspondances du primaire et du lycée, ainsi que le contenu prévisionnel du volume inférieur de mathématiques de la 9e année, sont explicitement provisoires. Le dépôt précise également que les niveaux de classe du lycée sont utilisés à des fins d’organisation : le deuxième volume obligatoire est étiqueté comme correspondant à la classe de 11e dans l’outil, bien qu’il soit généralement enseigné au deuxième semestre de la classe de 10e.
La banque de questions est réduite au regard des standards d’évaluation : la plupart des notions disposent de quatre questions, et le diagnostic en pose au maximum deux par notion. Aucune donnée de réponses d’élèves n’est disponible pour calibrer la difficulté, les distracteurs ou la précision du diagnostic. L’outil peut aider à explorer un graphe de programme et à formuler des hypothèses sur les lacunes ; il ne peut remplacer un enseignant, un examen validé ou une mesure complète de la maîtrise.
Une base utile pour l’examen et l’expérimentation
Malgré ces réserves, le dépôt offre aux développeurs un exemple concret et inspectable de représentation d’un programme sous forme de données : les concepts deviennent des nœuds, les dépendances des liens typés, les référentiels des correspondances et le comportement diagnostique un algorithme testable. Il prend aussi en charge deux graphes propres à chaque matière, sans relier l’anglais aux mathématiques, tout en permettant aux prérequis d’anglais au collège de renvoyer à l’anglais du primaire.
Le projet est diffusé sous licence CC BY-NC 4.0 pour les données, l’outil et la documentation. L’apprentissage personnel, l’enseignement, la recherche, la modification et la redistribution sont autorisés avec attribution ; toute utilisation commerciale nécessite une autorisation distincte. Les bibliothèques Cytoscape intégrées au dépôt conservent leurs propres licences MIT.
Pour les développeurs qui travaillent sur l’analyse de l’apprentissage, les outils liés aux programmes scolaires ou les systèmes éducatifs de RAG et de graphes, la prochaine étape la plus utile n’est pas d’ajouter davantage de nœuds générés. Il s’agit plutôt de faire examiner les liens et les questions existants par des enseignants, de vérifier les référentiels à partir de documents officiels, puis de tester le diagnostic sur des données réelles d’apprenants. Un graphe devient utile sur le plan pédagogique non pas lorsqu’il est grand, mais lorsque ses relations et ses conclusions sont fiables.