Cómo la IA de Duolingo aprende lo que necesitas aprender
La IA que impulsa la aplicación de aprendizaje de idiomas hoy podría interrumpir la educación mañana
Es la hora del almuerzo cuando tu El teléfono te hace sonar con un búho verde que alegremente te recuerda "¡Mantén feliz a Duo!" Es un empujón de Duolingo, la popular aplicación de aprendizaje de idiomas, cuyos algoritmos saben que es más probable que hagas tus 5 minutos de práctica de español a esta hora del día. La aplicación elige sus palabras de notificación en función de lo que funcionó para usted en el pasado y los detalles de sus logros recientes, agregando una pizca de novedad llamativa. Cuando abre la aplicación, la lección que está en la cola se calibra para su nivel de habilidad e incluye una revisión de algunas palabras y conceptos que falló durante su última sesión.
Duolingo, con su enfoque de juego y su elenco de brillantes personajes de dibujos animados, presenta una interfaz de usuario simple para guiar a los estudiantes a través de un plan de estudios que conduce al dominio del idioma, o incluso a la fluidez. Pero detrás de escena, están en funcionamiento sofisticados sistemas de inteligencia artificial (IA). Un sistema en particular, llamado Birdbrain, mejora continuamente la experiencia del alumno con algoritmos basados en décadas de investigación en psicología educativa, combinados con avances recientes en aprendizaje automático. Pero desde la perspectiva del alumno, simplemente se siente como si el búho verde estuviera mejorando cada vez más en la personalización de las lecciones.
Los tres hemos estado íntimamente involucrados en la creación y mejora de Birdbrain, del cual Duolingo lanzó recientemente su segunda versión. Consideramos que nuestro trabajo en Duolingo promueve la misión general de la empresa de "desarrollar la mejor educación del mundo y hacerla universalmente disponible". Los sistemas de inteligencia artificial que continuamos perfeccionando son necesarios para escalar la experiencia de aprendizaje más allá de los más de 50 millones de estudiantes activos que actualmente completan alrededor de mil millones de ejercicios por día en la plataforma.
Aunque Duolingo es conocida como una aplicación para aprender idiomas, las ambiciones de la empresa van más allá. Recientemente lanzamos aplicaciones que cubren la alfabetización infantil y las matemáticas de tercer grado, y estas expansiones son solo el comienzo. Esperamos que cualquier persona que desee ayuda con el aprendizaje académico algún día pueda recurrir a la amigable lechuza verde en su bolsillo que les grita: "¿Listos para tu lección diaria?"
En 1984, el psicólogo educativo Benjamin Bloom identificó lo que se ha dado en llamar el problema 2-sigma de Bloom. Bloom descubrió que los estudiantes promedio que recibieron tutoría individual se desempeñaron dos desviaciones estándar mejor que en un salón de clases. Eso es suficiente para elevar los puntajes de las pruebas de una persona del percentil 50 al 98.
Cuando Luis von Ahn y Severin Hacker lanzaron Duolingo en 2012 a partir de un proyecto de investigación de la Universidad Carnegie Mellon, el objetivo era crear un tutor de idiomas en línea fácil de usar que pudiera aproximarse a ese efecto de supercarga. Los fundadores no estaban tratando de reemplazar a los grandes maestros. Pero como inmigrantes (de Guatemala y Suiza, respectivamente), reconocieron que no todos tienen acceso a grandes maestros. En los años siguientes, el creciente equipo de Duolingo siguió pensando en cómo automatizar tres atributos clave de los buenos tutores: conocen bien el material, mantienen a los estudiantes interesados y hacen un seguimiento de lo que cada estudiante sabe actualmente, para que puedan presentar material que no es ni demasiado fácil ni demasiado difícil.
Duolingo utiliza el aprendizaje automático y otras tecnologías de vanguardia para imitar estas tres cualidades de un buen tutor. En primer lugar, para garantizar la experiencia, empleamos herramientas de procesamiento de lenguaje natural para ayudar a nuestros desarrolladores de contenido a auditar y mejorar nuestros más de 100 cursos en más de 40 idiomas diferentes. Estas herramientas analizan el vocabulario y el contenido gramatical de las lecciones y ayudan a crear una variedad de posibles traducciones (por lo que la aplicación aceptará las respuestas de los alumnos cuando haya varias formas correctas de decir algo). En segundo lugar, para mantener a los alumnos interesados, gamificamos la experiencia con puntos y niveles, usamos tecnología de texto a voz para crear voces personalizadas para cada uno de los personajes que pueblan el mundo de Duolingo y perfeccionamos nuestros sistemas de notificación. En cuanto a entrar en la cabeza de los alumnos y darles la lección correcta, ahí es donde entra en juego Birdbrain.
Birdbrain es crucial porque la participación del alumno y la dificultad de la lección están relacionadas. Cuando a los estudiantes se les da material que es demasiado difícil, a menudo se frustran y se dan por vencidos. El material que se siente fácil puede mantenerlos comprometidos, pero no los desafía tanto. Duolingo usa IA para mantener a sus alumnos en la zona en la que permanecen comprometidos pero aún están aprendiendo al límite de sus habilidades.
Uno de nosotros (Settles) se unió a la empresa solo seis meses después de su fundación, ayudó a establecer varias funciones de investigación y luego lideró los esfuerzos de inteligencia artificial y aprendizaje automático de Duolingo hasta el año pasado. Al principio, no había muchas organizaciones que hicieran aprendizaje interactivo en línea a gran escala. El análogo más cercano a lo que Duolingo intentaba hacer eran los programas que adoptaban un enfoque de "aprendizaje de dominio", en particular para la tutoría de matemáticas. Esos programas ofrecían problemas en torno a un concepto similar (a menudo llamado "componente de conocimiento") hasta que el alumno demostraba suficiente dominio antes de pasar a la siguiente unidad, sección o concepto. Pero ese enfoque no era necesariamente el más adecuado para el lenguaje, donde un solo ejercicio puede involucrar muchos conceptos diferentes que interactúan de manera compleja (como vocabulario, tiempos y género gramatical), y donde hay diferentes formas en que un estudiante puede responder (como traducir una oración, transcribir un fragmento de audio y completar las palabras que faltan).
El trabajo inicial de aprendizaje automático en Duolingo abordó problemas bastante simples, como la frecuencia con la que volver a una palabra o concepto de vocabulario en particular (que se basó en la investigación educativa sobre la repetición espaciada). También analizamos los errores de los alumnos para identificar puntos débiles en el plan de estudios y luego reorganizamos el orden en que presentamos el material.
Duolingo luego se duplicó en la construcción de sistemas personalizados. Alrededor de 2017, la empresa comenzó a realizar una inversión más enfocada en el aprendizaje automático, y fue entonces cuando los coautores Brust y Bicknell se unieron al equipo. En 2020 lanzamos la primera versión de Birdbrain.
Antes de Birdbrain, Duolingo había hecho algunos intentos sin inteligencia artificial para mantener a los alumnos comprometidos en el nivel correcto, incluida la estimación de la dificultad de los ejercicios en función de la heurística, como la cantidad de palabras o caracteres en una oración. Pero la compañía a menudo descubrió que estaba lidiando con compensaciones entre cuánto aprendían realmente las personas y qué tan comprometidas estaban. El objetivo con Birdbrain era lograr el equilibrio adecuado.
La pregunta con la que comenzamos fue esta: para cualquier alumno y cualquier ejercicio dado, ¿podemos predecir qué probabilidad hay de que el alumno haga ese ejercicio correctamente? Hacer esa predicción requiere que Birdbrain calcule tanto la dificultad del ejercicio como la competencia actual del alumno. Cada vez que un alumno completa un ejercicio, el sistema actualiza ambas estimaciones. Y Duolingo usa las predicciones resultantes en su algoritmo generador de sesiones para seleccionar dinámicamente nuevos ejercicios para la siguiente lección.
chico eddie
Cuando estábamos construyendo la primera versión de Birdbrain, sabíamos que tenía que ser simple y escalable, porque lo aplicaríamos a cientos de millones de ejercicios. Tenía que ser rápido y requerir pocos cálculos. Decidimos utilizar un tipo de regresión logística inspirado en la teoría de respuesta al ítem de la literatura psicométrica. Este enfoque modela la probabilidad de que una persona dé una respuesta correcta en función de dos variables, que pueden interpretarse como la dificultad del ejercicio y la habilidad del alumno. Estimamos la dificultad de cada ejercicio sumando la dificultad de las características que lo componen, como el tipo de ejercicio, las palabras de su vocabulario, etc.
El segundo ingrediente de la versión original de Birdbrain era la capacidad de realizar actualizaciones computacionalmente sencillas en estos parámetros de dificultad y capacidad. Implementamos esto realizando un paso de descenso de gradiente estocástico en los parámetros relevantes cada vez que un alumno completa un ejercicio. Esto resulta ser una generalización del sistema de clasificación Elo, que se utiliza para clasificar a los jugadores de ajedrez y otros juegos. En el ajedrez, cuando un jugador gana un juego, su capacidad estimada aumenta y la de su oponente disminuye. En Duolingo, cuando un alumno se equivoca en un ejercicio, este sistema reduce la estimación de su capacidad y aumenta la estimación de la dificultad del ejercicio. Al igual que en el ajedrez, el tamaño de estos cambios depende del emparejamiento: si un ajedrecista novato gana contra un jugador experto, la puntuación Elo del experto se reducirá sustancialmente y la puntuación de su oponente aumentará sustancialmente. De manera similar, aquí, si un alumno principiante hace correctamente un ejercicio difícil, los parámetros de habilidad y dificultad pueden cambiar drásticamente, pero si el modelo ya espera que el alumno sea correcto, ninguno de los parámetros cambia mucho.
Para probar el rendimiento de Birdbrain, primero lo ejecutamos en "modo sombra", lo que significa que hizo predicciones que simplemente se registraron para el análisis y que el Generador de sesiones aún no usa para personalizar las lecciones. Con el tiempo, a medida que los alumnos completaban ejercicios y obtenían respuestas correctas o incorrectas, vimos si las predicciones de Birdbrain sobre su éxito coincidían con la realidad y, si no era así, hicimos mejoras.
Lidiar con alrededor de mil millones de ejercicios todos los días requirió mucha ingeniería inventiva.
Una vez que estuvimos satisfechos con el desempeño de Birdbrain, comenzamos a realizar pruebas controladas: habilitamos la personalización basada en Birdbrain para una fracción de estudiantes (el grupo experimental) y comparamos sus resultados de aprendizaje con aquellos que todavía usaban el sistema heurístico más antiguo (el grupo de control). Queríamos ver cómo Birdbrain afectaría la participación de los alumnos, medida por el tiempo dedicado a las tareas en la aplicación, así como el aprendizaje, medido por la rapidez con que los alumnos avanzaron a material más difícil. Nos preguntábamos si veríamos compensaciones, como tantas veces antes cuando tratábamos de hacer mejoras utilizando técnicas más convencionales de desarrollo de productos o ingeniería de software. Para nuestro deleite, Birdbrain hizo que aumentaran constantemente las medidas de participación y aprendizaje.
Desde el principio, nos vimos desafiados por la gran escala de los datos que necesitábamos procesar. Lidiar con alrededor de mil millones de ejercicios todos los días requirió mucha ingeniería inventiva.
Uno de los primeros problemas con la primera versión de Birdbrain fue encajar el modelo en la memoria. Durante el entrenamiento nocturno, necesitábamos acceso a varias variables por alumno, incluida su estimación de capacidad actual. Debido a que los nuevos alumnos se registraban todos los días, y debido a que no queríamos arrojar estimaciones de los alumnos inactivos en caso de que regresaran, la cantidad de memoria creció cada noche. Después de unos meses, esta situación se volvió insostenible: no podíamos guardar todas las variables en la memoria. Necesitábamos actualizar los parámetros todas las noches sin tener que guardar todo en la memoria a la vez.
Nuestra solución fue cambiar la forma en que almacenamos los datos de las lecciones de cada día y el modelo. Originalmente, almacenamos todos los parámetros para el modelo de un campo determinado en un solo archivo, cargamos ese archivo en la memoria y procesamos secuencialmente los datos del día para actualizar los parámetros del campo. Nuestra nueva estrategia fue dividir el modelo: una pieza representaba todos los parámetros de dificultad del ejercicio (que no crecieron mucho), mientras que varios fragmentos representaban las estimaciones de la capacidad de aprendizaje. También fragmentamos los datos de aprendizaje del día en archivos separados de acuerdo con la participación de los alumnos y, lo que es más importante, utilizamos la misma función de fragmentación entre los alumnos tanto para el modelo del curso como para los datos de los alumnos. Esto nos permitió cargar solo los parámetros del curso relevantes para una parte determinada de los alumnos mientras procesábamos los datos correspondientes sobre esos alumnos.
Una debilidad de esta primera versión de Birdbrain fue que la aplicación esperó hasta que un alumno terminó una lección antes de informar a nuestros servidores qué ejercicios hizo bien el usuario y qué errores cometió. El problema con ese enfoque es que aproximadamente el 20 por ciento de las lecciones que comienzan en Duolingo no se completan, tal vez porque la persona dejó el teléfono o cambió a otra aplicación. Cada vez que eso sucedía, Birdbrain perdía los datos relevantes, ¡que eran datos potencialmente muy interesantes! Estábamos bastante seguros de que las personas no dejaban de fumar al azar; en muchos casos, lo más probable es que lo hicieran una vez que encontraron material que les resultaba especialmente desafiante o desalentador. Entonces, cuando actualizamos a Birdbrain versión 2, también comenzamos a transmitir datos a lo largo de la lección en fragmentos. Esto nos dio información crítica sobre qué conceptos o tipos de ejercicios eran problemáticos.
Otro problema con el primer Birdbrain fue que actualizó sus modelos solo una vez cada 24 horas (durante un punto bajo en el uso global de la aplicación, que era de noche en la sede de Duolingo, en Pittsburgh). Con Birdbrain V2, queríamos procesar todos los ejercicios en tiempo real. El cambio era deseable porque el aprendizaje opera tanto a escala de corto como de largo plazo; si estudia un determinado concepto ahora, probablemente lo recordará dentro de 5 minutos y, con un poco de suerte, también retendrá algo de él la próxima semana. Para personalizar la experiencia, necesitábamos actualizar nuestro modelo para cada alumno muy rápidamente. Por lo tanto, a los pocos minutos de que un alumno complete un ejercicio, Birdbrain V2 actualizará su "modelo mental" de su estado de conocimiento.
Además de ocurrir casi en tiempo real, estas actualizaciones también funcionaron de manera diferente porque Birdbrain V2 tiene una arquitectura diferente y representa el estado de conocimiento de un alumno de manera diferente. Anteriormente, esa propiedad se representaba simplemente como un número escalar, ya que necesitábamos mantener la primera versión de Birdbrain lo más simple posible. Con Birdbrain V2, teníamos la aceptación de la empresa para usar más recursos informáticos, lo que significaba que podíamos construir un modelo mucho más rico de lo que sabe cada alumno. En particular, Birdbrain V2 está respaldado por un modelo de red neuronal recurrente (específicamente, un modelo de memoria a largo plazo o LSTM), que aprende a comprimir el historial de interacciones de un alumno con los ejercicios de Duolingo en un conjunto de 40 números, o en la jerga de los matemáticos, un vector de 40 dimensiones. Cada vez que un alumno completa otro ejercicio, Birdbrain actualizará este vector en función de su estado anterior, el ejercicio que el alumno ha completado y si lo hizo bien. Es este vector, en lugar de un solo valor, el que ahora representa la capacidad de un alumno, que el modelo usa para hacer predicciones sobre cómo se desempeñarán en ejercicios futuros.
La riqueza de esta representación permite que el sistema capte, por ejemplo, que un alumno dado es excelente con los ejercicios en tiempo pasado pero tiene dificultades con el tiempo futuro. V2 puede comenzar a discernir la trayectoria de aprendizaje de cada persona, que puede variar considerablemente de la trayectoria típica, lo que permite una personalización mucho mayor en las lecciones que Duolingo prepara para esa persona.
Una vez que nos aseguramos de que Birdbrain V2 era preciso y estable, realizamos pruebas controladas para comparar su experiencia de aprendizaje personalizado con la del Birdbrain original. Queríamos estar seguros de que no solo teníamos un mejor modelo de aprendizaje automático, sino también que nuestro software brindara una mejor experiencia de usuario. Afortunadamente, estas pruebas demostraron que Birdbrain V2 hizo que las medidas de compromiso y aprendizaje aumentaran aún más. En mayo de 2022, apagamos la primera versión de Birdbrain y cambiamos por completo al sistema nuevo y mejorado.
Mucho de lo que estamos haciendo con Birdbrain y tecnologías relacionadas se aplica fuera del aprendizaje de idiomas. En principio, el núcleo del modelo es muy general y también se puede aplicar a las nuevas aplicaciones de matemáticas y alfabetización de nuestra empresa, o a lo que se le ocurra a Duolingo a continuación.
Birdbrain nos ha brindado un excelente comienzo para optimizar el aprendizaje y hacer que el plan de estudios sea más adaptable y eficiente. Hasta dónde podemos llegar con la personalización es una pregunta abierta. Nos gustaría crear sistemas adaptables que respondan a los alumnos en función no solo de lo que saben, sino también de los enfoques de enseñanza que funcionan mejor para ellos. ¿A qué tipos de ejercicios presta realmente atención un alumno? ¿Qué ejercicios parecen hacer que los conceptos hagan clic en ellos?
Ese es el tipo de preguntas con las que los grandes maestros podrían enfrentarse al considerar a varios estudiantes con dificultades en sus clases. No creemos que pueda reemplazar a un gran maestro con una aplicación, pero esperamos mejorar en la emulación de algunas de sus cualidades y llegar a más estudiantes potenciales en todo el mundo a través de la tecnología.
Es la hora del almuerzo cuando tu