GID2017-1 | Estructuras de Datos y Algoritmos (INEDA)
Proyecto 2023
Tutor Virtual: Generación de Actividades de Autoevaluación y Retroalimentación en Asignaturas de Programación mediante Técnicas de Procesamiento del Lenguaje Natural
Resumen
La autoevaluación desempeña un papel fundamental en el proceso de aprendizaje, especialmente en entornos de enseñanza a distancia. Permite a los estudiantes avanzar de manera autónoma, adaptándose al ritmo que sus circunstancias personales requieran. En línea con esto, el objetivo de este proyecto de investigación consiste en llevar a cabo una personalización del sistema de autoevaluación previamente desarrollado por el grupo de innovación enproyectos anteriores.En el anterior proyecto se desarrolló una aplicación, en forma de bot de Telegram, que muestra a los estudiantes ejercicios agrupados según los conceptos de la asignatura. Esta herramienta les permite acceder a ejercicios de autoevaluación relacionados con los conceptos de la ontología, así como realizar consultas automáticas que les proporcionan información sobre el tema del ejercicio obtenidas de internet. Este sistema ha tenido una gran aceptación entre los estudiantes, que de acuerdo a encuestas específicas realizadas, así como a sus comentarios en los foros, la consideran de gran utilidad y de uso fácil.
En este proyecto nos proponemos mejorar este sistema en dos líneas principales:
- Generación automática de preguntas para la simulación de un examen en línea.
- La generación automática de explicaciones a partir del uso de modelos generativos de lenguaje sobre las respuestas correctas e incorrectas.
Ambos aspectos son fundamentales para mejorar la experiencia de aprendizaje
Objetivos
En el presente proyecto se persiguen los siguientes objetivos principales:
[OBJ.1] Generación automática de explicaciones utilizando las técnicas más novedosas de procesamiento de lenguaje natural: Tras la exploración preliminar realizada en el proyecto anterior de las alternativas para la generación de explicaciones en el sistema de autoevaluación, profundizaremos en la mejora de los textos explicativos utilizando los últimos modelos de generación de lenguaje.
[OBJ.2] Diseño e implementación de un modelo generativo de texto que mediante el uso de modelos pre-entrenados sea capaz de simplificar los elementos de retroalimentación desarrollados previamente.
[OBJ.3] Exploración de las capacidades de los modelos generativos de texto para proporcionar retroalimentación a partir del ajuste fino de modelos pre-entrenados.
[OBJ.4] Mejora del sistema de autoevaluación de forma que incorpore un simulador de exámenes: en la línea de mejorar la herramienta de autoevalución,que tiene tanta demanda entre los estudiantes, nos proponemos extender sus funcionalidades incorporando un generador de exámenes. De esta forma los estudiantes podrán solicitar la generación de un examen con una serie de preguntas (tomadas de la base de datos) y un tiempo para realizarlo. Al finalizar el tiempo la herramienta evaluará el examen de acuerdo alcriterio de evaluación de la asignatura, ayudando así a los estudiantes en su estudio de la asignatura y permitiéndoles autoevaluarse de forma previa a los exámenes oficiales.
Experiencia de Innovación
La metodología seguida durante el proyecto constó de las siguientes tareas:
Diseño y Planificación del Trabajo. La fase inicial consistió en el diseño y planificación del sistema, definiendo los objetivos específicos y la estructura de las tareas. En esta etapa, se estableció la metodología de implementación del sistema RAG y se evaluaron los posibles modelos generativos a utilizar para generar retroalimentación explicativa. Se asignaron roles y responsabilidades dentro del equipo de innovación docente para gestionar tanto el desarrollo técnico como la evaluación pedagógica de la herramienta.
Integración del Sistema RAG. Se implementó un sistema RAG basado en IA generativa que conecta el modelo de lenguaje con la base de datos de los ejercicios de autoevaluación, permitiendo generar explicaciones automáticas tanto para respuestas correctas como incorrectas.
Generación de Contenido Adaptativo. Para cada pregunta del banco de ejercicios, se llevó a cabo una gran labor de "Prompt Engineering" para dirigir a los modelos de lenguaje en su tarea de generación de explicaciones. Estas instrucciones consistieron en la descripción del contexto, el ajuste preciso de las instrucciones, el formato de las preguntas y respuestas y la configuración de los datos de salida entre los que se incluyen las explicaciones a cada respuesta.
Resultados obtenidos
Los sistemas de Recuperación de Información Generativa (RAG) representan una innovación clave en el ámbito de la educación, especialmente en el contexto de las evaluaciones y la retroalimentación automatizada. En el caso de las pruebas de autoevaluación, estos sistemas son capaces de generar explicaciones personalizadas y detalladas para cada respuesta, tanto correctas como incorrectas, lo que ofrece varios beneficios significativos para el proceso de aprendizaje.
Uno de los principales beneficios de los sistemas RAG es su capacidad para proporcionar retroalimentación adaptada a las respuestas específicas de cada estudiante. Estos sistemas no solo indican si una respuesta es correcta o incorrecta, sino que generan explicaciones detalladas que ayudan al estudiante a comprender los conceptos subyacentes. La retroalimentación generada toma en cuenta el contexto de la pregunta y se ajusta a las áreas donde el estudiante puede tener dificultades, ofreciendo una experiencia de aprendizaje más rica y significativa. Al recibir explicaciones completas sobre los errores cometidos, los estudiantes pueden entender mejor los conceptos sin necesidad de recurrir a búsquedas externas o tutorías adicionales. Esto es especialmente beneficioso en entornos de autoaprendizaje o educación a distancia, donde el acceso a recursos de apoyo puede ser limitado. Con un sistema RAG, los estudiantes pueden avanzar de manera autónoma y resolver dudas de forma inmediata, lo que facilita un aprendizaje más fluido y continuo.
La retroalimentación detallada y oportuna que proporcionan los sistemas RAG permite que los estudiantes identifiquen y aborden rápidamente sus errores y áreas de mejora. Esto contribuye a un proceso de aprendizaje más eficiente, ya que los estudiantes no solo reciben una corrección de sus respuestas, sino también una explicación profunda que refuerza el aprendizaje de los conceptos evaluados.
A diferencia de las metodologías tradicionales, los sistemas RAG son altamente escalables y se pueden adaptar a estudiantes de diferentes niveles de conocimiento. La retroalimentación puede ajustarse según el nivel de comprensión y el historial de respuestas del estudiante, permitiendo una experiencia de aprendizaje personalizada y ajustada a las necesidades individuales. Esto es particularmente valioso en cursos con gran cantidad de estudiantes como la UNED, donde proporcionar retroalimentación personalizada de manera manual sería inviable.
Las investigaciones previas en el uso de retroalimentación explicativa sugieren que los estudiantes tienden a retener mejor la información cuando comprenden el "por qué" de sus respuestas. Con un sistema RAG, la generación de explicaciones no solo ayuda a corregir errores, sino que también refuerza la memoria a largo plazo al aclarar conceptos y ofrecer contexto adicional, lo que podría traducirse en un aprendizaje más duradero y profundo.
El funcionamiento de los sistemas RAG, ilustrado en la siguiente figura, es el siguiente:
El profesor teclea un prompt formulando su pregunta, las respuestas y solicitando las explicaciones a estas respuestas falsas y verdaderas, que se convertirá en un vector numérico a través de un modelo de embeddings.
A continuación, se toma este modelo del texto y se compara con tantos documentos como se desee, en este caso el libro de la asignatura, y se extraen los fragmentos más similares.
Por último, se proporciona al LLM tanto el prompt como la información extraída de nuestra base de datos vectorial, proporcionándole automáticamente la información necesaria para generar las explicaciones acerca de las respuestas proporcionadas al estudiante.
A continuación, se incluye un ejemplo de pregunta, sus respuestas clasificadas como verdaderas y falsas y la explicación proporcionada por el sistema desarrollado de forma automática.
Pregunta: "Se dispone de un vector, V, que almacena números enteros en orden estrictamente creciente, y se desea averiguar si existe algún elemento que cumpla V[i]=i. ¿Cuál sería la estrategia más eficiente para resolver el problema?".
Posibles respuestas:
- Respuesta falsa 1: "Algoritmo voraz"
- Respuesta falsa 2: "Programación dinámica"
- Respuesta falsa 3: "Ninguna de las otras opciones es aplicable al problema"
- Respuesta verdadera 4: "Divide y vencerás"
Explicaciones Generadas por el sistema RAG:
- Respuesta falsa 1: "Algoritmo voraz", No es el esquema más eficiente para resolver el problema porque el algoritmo voraz consume todos los elementos del vector y no utiliza información sobre los valores previos. Además, el algoritmo voraz es ineficiente ya que tiene un tiempo de ejecución lineal en función del tamaño del vector.
- Respuesta falsa 2: "Programación dinámica", No es el esquema más eficiente para resolver el problema porque la programación dinámica no utiliza información sobre los valores previos y no es capaz de encontrar la solución de manera eficiente. Además, la programación dinámica puede tener un tiempo de ejecución lineal en función del tamaño del vector.
- Respuesta falsa 3: "Ninguna de las otras opciones es aplicable al problema", No es la respuesta correcta porque existen esquemas algorítmicos que pueden ser utilizados para resolver el problema, como el esquema de divide y vencerás.
- Respuesta verdadera 4: "Divide y vencerás", Es el esquema más eficiente para resolver el problema porque divide el vector en subvectores más pequeños y luego se utiliza información sobre los valores previos para encontrar la solución. Además, el esquema de divide y vencerás es eficiente en términos de tiempo de ejecución y puede ser utilizado para resolver problemas similares.
Aunque este sistema aún no ha sido implementado con estudiantes en un entorno real, los resultados esperados se pueden proyectar en base a la evidencia teórica y los beneficios observados en experiencias similares. Se anticipa que los estudiantes que utilicen este sistema para su autoevaluación mostrarán una mejora significativa en varios aspectos:
- Mayor Precisión y Comprensión en las Respuestas: Los estudiantes serán más capaces de identificar sus errores y entender los conceptos con mayor claridad, lo que se reflejará en un aumento en la precisión de sus respuestas en evaluaciones posteriores.
- Reducción en la Dependencia de Recursos de Apoyo Externos: Con la generación de explicaciones detalladas para cada respuesta, se espera que los estudiantes tengan menos necesidad de consultar materiales adicionales, foros de ayuda o incluso asistencia de profesores, dado que recibirán una retroalimentación completa directamente del sistema.
- Mejor Percepción y Actitud hacia el Aprendizaje Autónomo: La autonomía que brinda el sistema puede impactar positivamente en la confianza de los estudiantes y en su disposición a realizar autoevaluaciones como parte de su proceso de aprendizaje, lo que podría favorecer una actitud proactiva hacia el estudio y la práctica.
- Incremento en la Satisfacción y en la Eficiencia del Aprendizaje: La disponibilidad de retroalimentación automatizada y personalizada puede incrementar la satisfacción de los estudiantes con el proceso de aprendizaje, lo que a su vez puede acelerar su progreso en la comprensión de los conceptos evaluados.
Difusión y explotación
A continuación detallamos las publicaciones resultado de este proyecto de investigación:
Publisher: IEEE 2024
J. Martínez Romo, L. Araujo, L. Plaza, F. López Ostenero