22 mai 2026 · 11 min read

Ce que cache une question de maths

Comprendre les notions sous-jacentes d'une question en Mathématiques

#Knowledge Tracing #e-learning #standard #Grade

Une nouvelle étude démontre comment retrouver les notions sous-jacentes à une question. Ils utilisent un LLM afin de déterminer les concepts que cette question évalue.

Quand un élève échoue à un problème de mathématiques, l’enseignant sait intuitivement que plusieurs notions sont en jeu. Mais un système numérique ne sait pas si l’élève a buté sur le théorème de Pythagore, sur le calcul d’une racine carrée, ou simplement sur une addition. Combler cet écart entre la richesse du regard pédagogique et la pauvreté de l’information exploitable par la machine, c’est précisément ce que propose une équipe de chercheurs de l’ETH Zürich et de LMU Munich.

Pour qu’un outil d’individualisation de l’apprentissage fonctionne, il faut d’abord qu’il comprenne de quoi parle chaque question. Et jusqu’ici, ce travail d’annotation reposait entièrement sur une équipe d’experts pédagogiques, un processus long et coûteux. Ce que montrent les auteurs, c’est qu’un enchaînement de trois prompts bien conçus suffit à un LLM pour décomposer une question, en extraire les notions clés, et les organiser de manière exploitable. Les auteurs rapportent que les annotations générées automatiquement sont jugées de meilleure qualité que les annotations humaines dans la majorité des cas évalués par des experts.

Ces notions vont servir de base pour améliorer les performances de nombreux modèles de suivi de l’apprentissage (Knowledge Tracing).

La méthodologie

KCQRL est décomposé en trois modules :

  • Le module 1 annote la question à partir de son contenu avec une solution pas à pas et des notions correspondant à chaque pas de la solution.
  • Le module 2 apprend les représentations des questions en exploitant les étapes de résolution et les connaissances clés (K.C.) grâce à un objectif d’apprentissage adapté.
  • Le module 3 intègre les représentations de questions apprises dans les modèles de Knowledge Tracing existants.

Annoter des questions

C’est la recherche principale du Knowledge Tracing : trouver des Knowledge Components à partir d’une question. Cela permet de mieux comprendre la question, et donc de mieux localiser les faiblesses d’un apprenant.

Les auteurs de l’article utilisent un Large Language Model avec la technique de chain of thought qui consiste à chaîner des prompts.

Ils proposent plusieurs étapes :

Générer les étapes de la réponse

Pour comprendre la complexité d’une question, il faut connaître les étapes nécessaires pour y répondre. Par exemple, la question Un triangle rectangle a un côté de 3 cm et un autre de 4 cm. Quelle est la longueur de l’hypoténuse ? si on se base uniquement sur la question, un enseignant verrait Pythagore, etc. Mais un outil qui ne voit que le libellé pourrait passer à côté de notions importantes. C’est pourquoi les auteurs ont également généré les étapes de réponse, par exemple :

  • Étape 1 : Identifier que le triangle est rectangle, donc que le théorème de Pythagore s’applique
  • Étape 2 : Rappeler le théorème de Pythagore
  • Étape 3 : Identifier que 3 et 4 sont les côtés de l’angle droit (et non l’hypoténuse)
  • Étape 4 : Calculer les carrés
  • Étape 5 : Faire des additions
  • Étape 6 : Calculer une racine carrée

Le prompt est le suivant :

Your task is to generate clear and concise step by step solutions of the provided Math problem. Please consider the below instructions in your generation.
- You will also be provided with the final answer. When generating the step by step solution, you can leverage those information pieces, but you can also use your own judgment.
- It is important that your generated step by step solution should be understandable as stand-alone, meaning that the student should not need to additionally check final answer or explanation provided.
- Please provide your step-by-step solution as each step in a new line. Don't enumerate the steps. Don't put any bullet points. Separate the solution steps only with one newline \n.
Question: <QUESTION TEXT>
Final Answer: <FINAL ANSWER>
Step by Step Solution:

Si on décompose en étapes la réponse, on peut voir que derrière cette question on a des notions autour des triangles, des calculs, etc.

Exemple :

Pour cet exemple, ChatGPT répond :

Dans un triangle rectangle, on utilise le théorème de Pythagore : c² = a² + b², où c est l’hypoténuse.

On remplace les valeurs connues : c² = 3² + 4².

On calcule les carrés : 3² = 9 et 4² = 16.

On additionne : c² = 9 + 16 = 25.

On prend la racine carrée : c = √25 = 5.

La longueur de l’hypoténuse est donc 5 cm.

Une fois que les étapes ont pu être déterminées, les auteurs proposent que le LLM s’occupe de trouver des Knowledge Components pour chaque étape de réponse.

Générer les composants de connaissances

Maintenant que le LLM a déterminé les étapes de la solution, il a suffisamment de contexte pour donner les composants de connaissances sous-jacents à cette question.

Le prompt utilisé est le suivant :

You will be provided with a Math question, its final answer and its step by step solution. Your task is to provide the concise and comprehensive list of knowledge concepts in the Math curriculum required to correctly answer the questions. Please carefully follow the below instructions:
- Provide multiple knowledge concepts only when it is actually needed.
- Some questions may require a figure, which you won't be provided. As the step-by-step solution is already provided, Use your judgment to infer which knowledge concept(s) might be needed.
- For a small set of solutions, their last step(s) might be missing due to limited token size. Use your judgment based on your input and your ability to infer how the solution would conclude.
- Remember that knowledge concepts should be appropriate for Math curriculum between 1st and 8th grade.
If the annotated step-by-step solution involves more advanced techniques, use your judgment for more simplified alternatives.
Question: <QUESTION TEXT>
Final Answer: <FINAL ANSWER>
Step by Step Solution: <SOLUTION STEPS>

Il se base donc sur le résultat du précédent prompt.

ChatGPT répond :

Reconnaître un triangle rectangle Théorème de Pythagore (relation entre les côtés d’un triangle rectangle) Calcul des carrés d’un nombre Addition de nombres entiers Comprendre et calculer une racine carrée simple

À ce stade, les connaissances sous-jacentes à la question sont extraites et nous pouvons à présent les manipuler dans différents outils. C’est d’ailleurs ce que proposent les auteurs, qui vont se servir de ces données pour améliorer les modèles de knowledge tracing.

On va essayer de classer les notions sous-jacentes par rapport aux étapes de la réponse. Pour classer, on utilise un autre prompt qui se base sur les résultats précédents :

You are expert in Math education. You are given a Math question, its solution steps, and its knowledge concept(s), which you have annotated earlier. Your task is to associate which solution steps require which knowledge concepts. Note that all solution steps and all knowledge concepts must be mapped, while many-to-many mapping is indeed possible.
Each solution step and each knowledge concept is numbered. Your output should enumerate all solution step knowledge concept pairs as numbers. Your output should meet all the below criteria:
- Each solution step has to be paired.
- Each knowledge concept has to be paired.
- Map a solution step with a knowledge concept only if they are relevant.
- Your pairs cannot contain artificial solution steps. For instance, If there are 4 solution steps, the pair "5-2" is indeed illegal.
- Your pairs cannot contain artificial knowledge concepts. For instance, If there are 3 knowledge concepts, the pair "3-5" is indeed illegal.
You will output solution step - knowledge concept pairs in a comma separated manner and in a single line.
For example, if there are 4 solution steps and 5 knowledge concepts, one potential output could be the following: "1-1, 1-3, 1-5, 2-4, 3-2, 3-5, 4-2, 4-3, 4-5".
Observe that this output also meets all the criteria explained above. Now, for the given question, solution steps and knowledge concepts, please provide your mapping as the output.
Question: <QUESTION TEXT>
Solution steps: <SOLUTION STEP>
Knowledge concepts: <ANNOTATED KCS>
Solution step - KC mapping:

ChatGPT répond : 1-1, 1-2, 2-2, 3-3, 4-4, 5-5, 6-2

Soit :

  • Dans un triangle rectangle, on utilise le théorème de Pythagore : c² = a² + b², où c est l’hypoténuse.
    • Reconnaître un triangle rectangle
    • Théorème de Pythagore (relation entre les côtés d’un triangle rectangle)
  • On remplace les valeurs connues : c² = 3² + 4².
    • Théorème de Pythagore (relation entre les côtés d’un triangle rectangle)
  • On calcule les carrés : 3² = 9 et 4² = 16.
    • Calcul des carrés d’un nombre
  • On additionne : c² = 9 + 16 = 25.
    • Addition de nombres entiers
  • On prend la racine carrée : c = √25 = 5.
    • Comprendre et calculer une racine carrée simple
  • La longueur de l’hypoténuse est donc 5 cm.
    • Théorème de Pythagore (relation entre les côtés d’un triangle rectangle)

Les concepts sont organisés et exploitables par des algorithmes de machine learning ou de statistiques. Par exemple, si un apprenant échoue à une question, on peut voir quelles notions ne sont pas bien maîtrisées. On ne sait pas encore laquelle, car ce n’est pas le but de cet article, mais ça donne quand même un aperçu.

Apprendre les représentations vectorielles

Les notions sous-jacentes générées à l’étape précédente sont textuelles et ne peuvent donc pas être traitées directement par des algorithmes. Il faut donc une représentation vectorielle (embeddings) qui permettra de faire un rapprochement sémantique pour déterminer les questions qui ont des concepts proches. Les techniques actuelles de rapprochement sémantique, telles que les modèles BERT, sont trop générales et ne permettent pas de déterminer des concepts proches s’ils sont éloignés sémantiquement. Par exemple, « racine carrée » et « Pythagore » un modèle BERT classique les verrait comme éloignés.

C’est pour cette raison que les auteurs ont entraîné un modèle par apprentissage contrastif. Il s’agit d’une méthode appartenant à l’apprentissage auto-supervisé. Cet apprentissage a besoin de paires pour fonctionner, et c’est précisément ce que l’on a construit dans les étapes précédentes. Les concepts associés aux étapes de réponse forment des paires que les auteurs utilisent pour entraîner un modèle capable de rapprocher des concepts pédagogiques. Ces embeddings permettent aux modèles de Knowledge Tracing de mieux comprendre les liens entre les questions. Par exemple, si un élève réussit toutes les questions proches de « Pythagore », le modèle pourra prédire qu’il réussira probablement une nouvelle question sur ce thème. C’est l’objet principal du Knowledge Tracing : prédire le taux de réussite d’un apprenant à une question.

Les auteurs ont pu tester avec plus de 15 modèles de Knowledge Tracing. Les résultats montrent que les performances des modèles testés ont considérablement augmenté.

Conclusion

Cette étude répond à deux besoins distincts. Le premier, celui de déterminer des notions à partir d’une question. Ce ne sont pas les seuls à mener des recherches dans ce domaine, mais ils ont le mérite de l’avoir fait avec l’élégance de la simplicité. En effet, ici il y a juste un enchaînement de trois prompts et le LLM détermine toutes les notions clés sous-jacentes.

L’intérêt pour un enseignant en mathématiques serait de pouvoir classifier des notions faibles. En effet, là où les apprenants réussissent le moins les questions, étant donné qu’on peut avoir à présent des notions liées à ces questions, le système peut automatiquement déterminer les notions qui ont le plus posé de problème. Ce n’est pas un système de détection d’erreur. On ne peut pas savoir si l’élève a fait une erreur sur les racines carrées ou sur l’application du théorème de Pythagore. En revanche, on se retrouve avec un espace des notions plausibles sur lesquelles on peut travailler davantage en proposant des exercices ou des leçons. Ce qui peut être également fait de manière automatique avec un outil qui se sert de ces notions pour proposer des cours et apprendre au fur et à mesure pour déterminer quelles notions ne sont pas maîtrisées par l’apprenant. L’outil propose alors des exercices sur chaque notion et, en fonction des résultats, c’est alors qu’apparaît la notion la moins maîtrisée.

Le second apport de cette étude est de pouvoir augmenter les performances des modèles de Knowledge Tracing existants, ce qui permet d’avoir une meilleure prédiction du taux de réussite d’un apprenant à une question donnée. Ici, l’intérêt est de pouvoir proposer également des cours en fonction des chances de réussite de l’apprenant.

Comme toujours, quelques limites méritent d’être soulignées. La première est que le modèle a été conçu principalement pour les mathématiques, même s’il peut être transféré à des domaines comme la physique. La condition est que la réponse à une question puisse se décomposer en plusieurs étapes, une simple question oui/non ne s’y prête pas. La seconde limite concerne la dépendance au LLM utilisé. Que l’on travaille avec Claude, ChatGPT, un SLM ou un modèle local, les résultats peuvent varier : les notions extraites seront différentes et potentiellement de moindre qualité selon le modèle choisi.

Sources

Partager