Utiliser des plongements de programmes pour aider les apprenants

Encadrant(e)s: Nicolas Dugué & dominique Py
Equipe d’accueil : LIUM
Lieu : Le Mans
Contact : Nicolas.Dugue(at)univ-lemans.fr et Dominique.Py(at)univ-lemans.fr
Candidature : Envoyer CV + lettre de motivation à Nicolas Dugué et dominique Py avant le 20 Novembre 2022

 

Description : En modélisant informatiquement l’hypothèse distributionnelle des linguistes, les spécialistes du traitement automatique de la langue ont permis la création des approches de plongements lexicaux, à la racine de nombreuses applications de traitement du langage naturel. Depuis, ces approches ont été généralisées, notamment pour la représentation vectorielle des programmes informatiques. À partir de l’arbre syntaxique et de la trace d’exécution, il devient ainsi possible de modéliser les programmes et leur similarité en les plongeant dans un espace adéquat.

Le Laboratoire d’Informatique Fondamentale d’Orléans a mis en place de premières approches de représentations de programmes informatiques dans le cadre de l’apprentissage de la programmation. L’objectif était d’initier une réflexion quant aux apports possibles de ces approches dans la conception d’EIAH. Cette réflexion a eu pour premier objectif de démontrer la pertinence de l’espace de représentation, en s’assurant que ces représentations étaient assez fines pour, par exemple, différencier les réponses à différents exercices, et différencier les solutions au sein d’un même exercice. La question se pose maintenant d’interroger ces représentations pour fournir des outils au service de l’enseignant⋅e, ou de la réflexivité de l’étudiant⋅e. Du point de vue des EIAH, on peut envisager plusieurs cadres dans lesquels ces représentations pourraient se montrer utiles : la détection automatique d’erreurs typiques, mais également de solutions atypiques (programme fonctionnel mais dont la solution contourne l’énoncé) ; l’aide à la remédiation pour les étudiant⋅e⋅s via la proposition d’explications, d’indices ou encore de morceaux de code issus du travail des pairs pour aider à avancer ; la création d’outils pour pousser les apprenant⋅e⋅s à confronter leurs solutions, les discuter et apprendre du consensus.

Objectif du stage : L’objectif du stage est d’évaluer l’utilisabilité des plongements de programmes pour apporter une remédiation à l’apprenant en s’appuyant sur la structuration de l’espace des programmes.

 

Profil de la ou du candidat·e : Candidat.e motivé.e par l’intelligence artificielle et l’EIAH, inscrit.e en master d’informatique

 

Bibliographie

  • Guillaume Cleuziou, Frédéric Flouvat, Matthieu Exbrayat, Julien Robert, Romuald Thion. Apprentissage de représentations pour l’enseignement de la programmation : une approche centrée enseignant. 10e Conférence sur les Environnements Informatiques pour l’Apprentissage Humain, Marie Lefevre, Christine Michel, Juin 2021, Fribourg, Suisse. pp.58-69.
  • Guillaume Cleuziou, Frédéric Flouvat. Learning student program embeddings using abstract execution traces. 14th International Conference on Educational Data Mining, International Educational Data Mining Society, Jun 2021, Paris, France. pp.252-262.