Apprentissage profond pour intervenir là où ça compte

Comment nous avons construit une boucle de rétroaction pour optimiser les nudges dapprentissage

(Marianne Sorba) (14 août 2018)

Lapprentissage nest pas facile. Pour rendre les choses un peu plus faciles, nous avons lancé (Aide en cours), offrant des conseils comportementaux et pédagogiques à mesure que les apprenants se déplacent dans le matériel de cours. Dans cet article, nous couvrons notre processus et nos apprentissages dans la mise en œuvre dune boucle de rétroaction dapprentissage automatique pour personnaliser et optimiser ces coups de pouce.

Dans la première implémentation de laide en cours, tous les apprenants à un moment donné dun cours – par exemple, terminer le cours 9 du cours A ou échouer le questionnaire 3 du cours B – a reçu le même message. Cela nous a permis dintervenir de manière utile en moyenne et de faire bouger les choses sur la progression et la rétention du cours.

Mais nous avons également observé une hétérogénéité dimpact entre les apprenants et les messages. De même, dans un monde où tous les apprenants à un moment donné dans un cours donné recevaient le message, nous craignions de diffuser trop de messages.

Pour la prochaine implémentation, nous avons créé une boucle de rétroaction intelligente pour contrôler quels apprenants ont reçu chaque message. Le modèle est un réseau neuronal qui prend en entrée un large éventail de fonctionnalités, y compris les suivantes:

  • Les taux de clics passés de lapprenant pour divers messages
  • Ses données démographiques ( par exemple, sexe, âge, pays, niveau demploi, niveau déducation)
  • Ses données comportementales sur la plateforme (par exemple, si linscription est payée, langue du navigateur, nombre de cours terminés)
  • Caractéristiques au niveau du cours (par exemple, domaine, difficulté, classement)

En utilisant ces fonctionnalités, le modèle prédit la probabilité quun apprenant spécifique trouve un type spécifique de message contextuel utile sur un point particulier de son apprentissage. Sil prédit que le message aura un impact suffisamment positif, il déclenche le message; sinon, il retient le message. Les poids du modèle et ses prévisions sont mis à jour tous les soirs pendant que notre équipe de science des données dort – une grande amélioration par rapport à la ligne de base de tests A / B imbriqués complexes et de longue durée, léquipe effectuant des ajustements manuels des interventions en fonction des résultats observés. Le système de boucle de rétroaction s’étend également naturellement pour nous permettre de choisir parmi plusieurs versions d’un message qui peuvent être envoyées au même point au même apprenant, déclenchant uniquement la version prévue pour avoir le résultat le plus positif pour l’apprenant.

Aujourdhui, nous avons deux niveaux de filtrage: un filtrage au niveau de létat des éléments de cours pour décider quels messages conserver car ils sont suffisamment utiles, et un filtrage au niveau des états des éléments de cours utilisateur pour personnaliser les messages auxquels apprenants à un moment dapprentissage donné.

En bref, pour chaque coup de pouce possible sur chaque état délément dans chaque cours, le modèle de niveau élément de cours-état prédit la probabilité moyenne quun apprenant trouve le message utile en fonction des interactions passées avec le message et les données au niveau du cours. Intuitivement, si le modèle prédit que le message nest pas suffisamment utile, nous retenons complètement ce message à ce point de déclenchement (à condition que le nombre dimpressions soit suffisamment grand). Ce filtrage au niveau du déclencheur est particulièrement utile car nous étendons notre inventaire de messages car il détecte et filtre automatiquement les messages qui ne sont pas utiles – ou ne sont pas pour une classe ou un point de déclenchement particulier.

Lélément de cours- Le modèle au niveau de létat est superposé sous une boucle de rétroaction similaire qui filtre au niveau de létat de lélément de cours utilisateur. Prenons un exemple simple: nous voulons savoir sil faut envoyer un message particulier à Alan à un moment donné de son parcours dapprentissage. Pour lexposition, considérez un message pour lequel nous collectons directement lutilité autodéclarée de lapprenant. Dans limplémentation actuelle, il existe trois possibilités.

  1. Alan pourrait être choisi au hasard (aujourdhui avec une probabilité de 10%) pour recevoir le message quoi quil arrive ; cela garantit que nous disposons de suffisamment de données impartiales pour que le modèle continue à apprendre – et à saméliorer – tous les soirs.
  2. Alan pourrait être choisi au hasard (aujourdhui avec une probabilité de 90%) pour potentiellement recevoir le message, mais Alan est un nouvel apprenant et a à peine interagi avec nos messages. Comme nous navons pas suffisamment de données sur lui pour faire une prédiction fiable, nous lui envoyons le message pour collecter des données.
  3. Alan pourrait être choisi au hasard (avec la même probabilité 90%) pour potentiellement recevoir le message, et ont interagi avec suffisamment de messages ALICE pour que le modèle puisse faire une prédiction fiable.Ensuite, sur la base des données du profil de lapprenant dAlan et de ses interactions précédentes avec les messages daide en cours, le modèle génère trois probabilités: a) la probabilité quAlan clique sur «Oui, cela a été utile»; b) la probabilité quAlan clique sur «Non, cela na pas été utile»; c) la probabilité quAlan ninteragisse pas avec le message.

Nous envoyons le message si et seulement si a) dépasse suffisamment b) et c). Aujourdhui, la boucle de rétroaction retient environ 30% des messages et augmente de 43% le rapport entre les rapports utiles et non utiles.

Alors, quelle est la prochaine étape?

Tout dabord, nous allons itérer sur la fonction doptimisation. Lexemple ci-dessus considère loptimisation pour une adoption positive de lappel à laction (soit le signalement du message a été utile, soit le clic sur la recommandation). Pour certains coups de pouce, cependant, la fonction doptimisation peut et doit être plus en aval. Par exemple, si nous invitons lapprenant à réviser du matériel important, son clic sur le lien fourni ne nous donne pas suffisamment dinformations sur le fait que ce matériel de révision a réellement aidé ses résultats dapprentissage – seulement si elle a suivi notre recommandation. Pour ces types d’interventions, nous étendons la fonction d’optimisation afin d’incorporer les résultats d’apprentissage en aval tels que les éléments terminés.

Deuxièmement, avec cette sécurité intégrée, nous réfléchissons et lançons de nouveaux types d’interventions. Étant donné que le modèle choisit automatiquement les coups de pouce à exécuter où et pour qui, nous pouvons explorer de nouvelles façons dengager les apprenants, convaincus que ceux qui ne sont pas utiles seront efficacement retenus.

Intéressé à postuler la science des données à léducation? Coursera recrute !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *