Blog

Implantamos un sistema para aplicar la inteligencia artificial en el proceso de aprendizaje

01/12/2020

En ASPgems hemos implantado un sistema basado en xAPI. xAPI es una especificación definida a medida para recopilar los datos del proceso de aprendizaje de los usuarios en diferentes plataformas con el objetivo de reducir el tiempo dedicado al proceso de limpieza y transformación de esos datos.

Aplicando Learning Analytics

La Inteligencia Artificial nos puede ayudar a mejorar procesos y sistemas en diferentes áreas. Una de estas áreas es la formación o aprendizaje.  A veces se utiliza el término educación, y e-learning cuando la experiencia de aprendizaje la realizamos online.

Las aproximaciones a cómo aplicar Inteligencia Artificial al proceso de aprendizaje de las personas son diversas y podemos adaptarlas a las necesidades concretas. Por ejemplo, es posible que dependiendo de la edad o de si es un aprendizaje en la escuela o en una empresa, los objetivos sean diferentes. O quizás no, y podemos crear Inteligencias Artificiales que aprenden y se adaptan. No tengo la respuesta a esta última reflexión. De momento comencemos dando los primeros pasos en el camino.

Aplicación de la inteligencia artificial en el proceso de enseñanza-aprendizaje

Veamos tres conceptos alrededor de los cuales creo puede girar una propuesta de aplicación de la Inteligencia Artificial al proceso de enseñanza-aprendizaje:

  • Aprendizaje adaptativo es un método educativo que, gracias a la modificación de los contenidos en tiempo real, se adapta al ritmo y conocimientos de los estudiantes. Para ello se basa en la Inteligencia Artificial y el análisis de datos.
  • Aprendizaje personalizado donde cada estudiante recibe un “plan” basado en cómo aprende, qué sabe y cuáles son sus habilidades e intereses.
  • La metacognición es una herramienta muy útil para mejorar las destrezas intelectuales, optimizar los procesos de aprendizaje, e, incluso, facilitar la ejecución de tareas cotidianas, tan sencillas como, por ejemplo, tomar una decisión.

La importancia de los datos.

En cursos, en casos de uso, en charlas de personas expertas, en conversaciones con personas que trabajan en proyectos de Inteligencia Artificial, siempre aparecen como primer paso y como la parte más importante del proyecto Los Datos. Sin buenos datos no conseguiremos buenos resultados.

Obtener, limpiar y transformar los datos para poder trabajar con ellos y aplicarles los algoritmos de nuestros modelos, es el proceso al que más tiempo dedicaremos en la mayoría de los casos.

xAPI. Datos de calidad de la experiencia de aprendizaje

En la fase de obtención y tratamiento de los datos influye drásticamente la calidad de los datos en el origen. Por ejemplo, si el origen de los datos que tenemos es un log de sistema o un CSV, o nuestro origen de datos son dos formatos diferentes porque integramos diferentes aplicaciones, el trabajo para homogeneizar estos datos será alto.

Nosotros estamos implantando un sistema basado en xAPI. xAPI es una especificación definida a medida para recopilar los datos de la actividad de las personas en el proceso de aprendizaje. De este modo, los datos se almacenan siguiendo esta especificación, que además la mayoría de plataformas de learning ya incorporan.

Por ejemplo, podemos recopilar los datos de aprendizaje de las personas de diferentes plataformas. Por ejempolo un LMS, Brightcove, Linkedin Learning, Coursera, SumTotal, así como de contenidos SCORM y TinCan (xAPI) generados con Authoring Tools. Los datos generados en las diferentes plataformas los almacenamos en un LRS (Learning Record Store). Almacenados en el mismo lugar y con el mismo formato.

Con xAPI conseguimos reducir el tiempo dedicado al proceso de limpieza y transformación de los datos.

Visualizando y entendiendo los datos

Una vez que tenemos datos de calidad, y en el proceso de mejora continua que propongo que sea un proyecto de Inteligencia Artificial, es conveniente aplicar algunas técnicas de visualización y revisión. Por ejemplo: Detalles estadísticos como máximos, mínimos, percentiles, outliers. Selección de Features relevantes. Gráficas de distribución, series temporales, Heatmap, etc.

Dos casos en los que sencillas visualizaciones nos ayudaron a identificar mejoras o ajustes en los datos:

  • Outliers. Aplicando visualizaciones Box plots y scatter plot identificamos varios outliers. En este caso en concreto es un proyecto con profesores y alumnos, y una de la variables de entrada en el verbo, la acción, que la persona realiza en la plataforma. Los profesores eran outliers, ya que además de profesores eran alumnos y tenían mayor actividad. Parte de la actividad no era relevante en el proceso de estudio de los alumnos y decidimos separarlo en actividad de profesores y actividad de alumnos.
  • Inactividad en Serie temporal. Visualizamos la cantidad de actividad diaria y la comparamos entre diferentes países. Así, detectamos un valle sin datos en la visualización de los datos en uno de los países. Inicialmente pensamos que había sido un fallo de software o servidores. La ausencia de datos era debida a que era un periodo de vacaciones de varios días en ese país, 11/11.

De nuevo la importancia de los datos y cómo, la fase de visualización y entendimiento de los datos, nos ayuda a mejorar. En nuestro caso incorporamos los días festivos como origen de datos para tenerlo en cuenta a posteriori.

La mayoría de las personas entendemos mejor y nos resulta más fácil interpretar datos en gráficas que en tablas. Encontremos el equilibrio, las tablas también nos ayudan en este proceso.

Aplicando Machine Learning a los datos

Veamos algunos ejemplos de cómo utilizando la Inteligencia Artificial mejorar la experiencia de las personas involucradas en los procesos de enseñanza-aprendizaje.

Estas son algunas de las claves desde el punto de vista pedagógico, que podemos tomar como problemas a resolver o partes del problema, y en las que iremos profundizando a medida que iteremos nuestros modelos: identificar las características de los alumnos, enseñarles desde sus intereses y desde la práctica, detectar posibles dificultades, darles autonomía en el proceso de aprendizaje, ofrecerle varios contenidos o actividades para que pueda elegir, utilizar recursos variados, materiales adaptados al nivel.

Clasificación de contenidos mediante clustering

  • Cómo ayudar a los alumnos a continuar aprendiendo

Identificando grupos de estudiantes utilizando clustering

  • Cómo ayudar a los formadores a identificar roles y particularidades de los estudiantes.
  • Cómo ayudar en la creación de grupos de aprendizaje

Para aplicar el modelo de clustering, identificamos las variables relevantes en nuestro proyecto, por ejemplo: tipo de actividad realizada, formato contenidos más utilizados o que producen aprendizaje más significativo (video, pdf, artículo, Tincan), tiempo dedicado, skills, dificultad de los contenidos realizados, etc.

Aplicando algoritmos de clustering y realizando los ajustes al modelo, identificando por ejemplo el número de clusters óptimo para nuestros datos. Podemos obtener clusters de Learners, que pueden ser de ayuda para los profesores por ejemplo para identificar los roles y realizar acciones concretas dependiendo del rol. También, a la hora de crear grupos de aprendizaje puede resultar de ayuda para el profesor para crear estos grupos con roles que sirvan de apoyo a otros alumnos o que sean roles complementarios que favorezcan un mejor aprendizaje individual y del grupo.

Mediante grafos sociales podemos estudiar cuáles son las interacciones que se producen entre los estudiantes para conocer el nivel de implicación de cada uno, conocer qué alumno es el que más influye dentro del grupo, detectar qué alumnos trabajan mejor juntos o incluso detectar alumnos aislados.

Predicción de la actividad con series temporales

  • Cómo ayudar a los formadores a planificar sus sesiones y contenidos.

Al conocer el historial de cada alumno, los profes pueden identificar dificultades de aprendizaje. De esta manera mejorarán los contenidos e intervendrán en momentos concretos, haciendo del aprendizaje un proceso más efectivo, e incluso, personalizado. El Aprendizaje Personalizado, que es uno de los objetivos a alcanzar, apoyándonos en la Inteligencia Artificial, facilitar a los profesores y alumnos herramientas que mejoren el proceso de enseñanza-aprendizaje.

Uno de los modelos de Machine Learning que podemos aplicar a los datos de la experiencia de aprendizaje son predicciones temporales. Podemos entrenar un modelo con los datos de años anteriores, teniendo en cuenta variables como días festivos, país, quizás climatología, etc.

El resultado de la predicción puede ayudar a profesores a saber qué va a ocurrir en las siguientes semanas y así planificar sus sesiones y contenidos, ajustándose a las circunstancias concretas de los alumnos y alumnas.

Un ejemplo: profesora de Alemania que va lanzar nuevos contenidos a los alumnos de una plataforma de e-learning. Buscar los días festivos de los 10 países en los que se publicarán sus contenidos, y conocer las diferencias en horarios y costumbres es un trabajo que requiere de una gran cantidad de tiempo. Un modelo de predicción puede mostrarle a la profesora de este ejemplo recomendaciones de cuándo lanzar sus contenidos dependiendo de las diferentes variables.

Sistema de recomendación de contenidos

  • Cómo ayudar a los formadores a recomendar contenidos similares o complementarios.
  • Cómo el sistema puede recomendar contenidos a los alumnos.

Obtener datos nos permite mejorar la calidad de los cursos, puesto que identifica patrones «de consumo» de contenidos.

Además, como he indicado anteriormente, partiendo de unos datos de calidad, podemos implementar un sistema de recomendación de contenidos. Mi propuesta en este caso es comenzar por un sistema sencillo e ir creciendo en función de los datos y de los resultados.

Podríamos comenzar utilizando dos o tres variables que sean atributos de los cursos, como por ejemplo: temática, dificultad y tipo (PDF, Vídeo, Tincan, artículo, etc.). A partir de estos datos el sistema podría recomendar al usuario cursos relacionados, que pueden resultar interesantes.

En los siguientes pasos, podríamos incorporar modelos de NLP (Procesado del Lenguaje Natural), que extraigan las entidades de los diferentes campos del curso y de sus ficheros o contenidos. Por ejemplo, nuestro curso tiene Título, Descripción y contenido adjunto. Supongamos que el contenido adjunto es un vídeo (podría ser cualquier otro tipo de contenido). Con nuestro modelo de NLP extraemos las “Entity” del título y descripción. Para extraer las “Entity” del vídeo realizamos transcripción del audio a texto y aplicamos la extracción de entidades al texto.

De este modo podríamos categorizar nuestros cursos añadiendo automáticamente información que después utilizaremos como variables en nuestro recomendador de contenidos.

Otro paso más, podría ser registrar los contenidos elegidos por el usuario cuando el sistema se los recomienda, y que el sistema aprenda con algoritmos de aprendizaje por refuerzo qué ocurre y así mejorar las recomendaciones futuras y personalizadas para el usuario.

Acompañante (chatbot) del proceso de aprendizaje

  • Cómo conocer mejor al alumno y ofrecerle ayuda en la toma de decisiones.

Podemos crear un chatbot que realice diversas funciones que pueden ayudar al alumno y a los profesores.

Podemos empezar con un chatbot que responda a solicitudes del alumno o alumna. Por ejemplo: La alumna le pide al asistente que le recomiende un curso relacionado con una temática concreta o relacionado con su experiencia previa en la plataforma. El asistente basándose en los datos y modelos descritos en los ejemplos anteriores puede mostrarle un listado con las recomendaciones.

Podemos dotar a nuestro asistente de un poco de iniciativa y que actúe sin necesidad de petición del alumno. Avisando al alumno de nuevos cursos relacionados con su actividad, recordando cursos que no ha finalizado aún, proponiendo actividades en determinados momentos del día/semana/mes basado en su actividad previa, etc.

Partiendo de datos de NLP el asistente podría ofrecer resúmenes de contenidos y cursos y que el alumno tenga una idea de los aspectos que trata el contenido y decidir qué hacer.

El asistente también podría pedir/recopilar información adicional de la experiencia del usuario. Por ejemplo: pidiéndole opinión al finalizar un curso, preguntándole antes de realizar un curso qué conocimiento tiene sobre la temática o los contenidos del curso. Estos datos pueden ser útiles como entrada en modelos enfocados en la personalización de la experiencia de aprendizaje. Siguiendo con el mismo ejemplo, nuestra Inteligencia Artificial podría conocer los conocimientos previos y posteriores a la realización de un curso e identificar posibles mejoras en el proceso de aprendizaje, que el propio sistema puede notificar al profesor o utilizarlo para futuras recomendaciones al alumno.

Personalized Learning

  • Cómo adaptar el proceso de aprendizaje a las particularidades del alumno.

Si unimos las técnicas y modelos descritas en este artículo, y otras tantas que podemos incorporar dependiendo de por dónde empezamos y hasta donde queramos llegar, nos acercamos hacia un sistema que ofrezca a las personas un aprendizaje personalizado.

Podemos minimizar el abandono, reforzar el rendimiento, comprobar la efectividad de determinadas metodologías y estrategias, favoreciendo así un proceso de aprendizaje más personalizado.

Recopilando datos de calidad que reflejen el proceso de aprendizaje de las personas, aplicando a estos datos los modelos y algoritmos, comprobando los resultados obtenidos, iterando este proceso con profesores, alumnos y creadores de contenidos, podemos alcanzar una Inteligencia Artificial que ayude y apoye a todas las personas involucradas en el proceso de aprendizaje.

Una reflexión personal. Me ha ayudado mucho en mi proceso de aprendizaje conversar y compartir inquietudes y dudas con personas que saben más que yo de Ciencia de Datos, y con personas que tienen experiencia en la docencia, en los procesos de aprendizaje, metodologías, maestros y maestras, pedagogas, diseñadores de contenido, gestoras de plataformas. Es imprescindible conocer el contexto del problema que queremos resolver con la aplicación de la Inteligencia Artificial y que el equipo esté formado por personas que tengan un conocimiento profundo, en nuestro caso de la experiencia de aprendizaje.

Un post de Raúl Bordallo

También te puede gustar…

ASPgems se une a Sngular

ASPgems se une a Sngular

¡Ya formamos parte de Sngular!   Desde el 1 de enero nos hemos incorporado a Sngular, la compañía que lidera el ecosistema de innovación y tecnología que nos ha conquistado,...

ASPgems icon
C/ Sextante, 9
28023 Madrid,
España

Hablemos.

A %d blogueros les gusta esto: