Recomendación de Objetos de Aprendizaje basado en el

Transcripción

Recomendación de Objetos de Aprendizaje basado en el
Recomendación de Objetos de Aprendizaje basado en el
Perfil del Usuario y la Información de Atención
Contextualizada
Gladys Carrillo y Xavier Ochoa
Centro de Tecnologías de Información, Escuela Superior Politécnica del Litoral, Km. 30.5 Vía Perimetral,
Guayaquil, Ecuador
Resumen. La selección de los objetos de aprendizaje más relevantes para cada usuario es un tema de investigación y
desarrollo activo en el ámbito de las herramientas de aprendizaje en línea. Si bien los algoritmos de recomendación no
son nuevos, su adaptación y uso sobre objetos de aprendizaje es un campo aún abierto donde se ensayan diversos
enfoques tanto de modelamiento de perfiles como de la recomendación como tal. En el presente trabajo se ha
desarrollado un prototipo de sistema de recomendación de objetos de aprendizaje que ha sido utilizado para experimentar
con 3 diferentes algoritmos de recomendación basados en el perfil del usuario con el fin de determinar y comparar la
precisión de sus resultados.
Palabras Clave: sistemas de recomendación, objetos de aprendizaje, mahout
Abstract. The selection of relevant learning objects for each user is a subject of active research and development in the
field of e-learning. While recommendation algorithms are not new, their adaptation and use with learning objects is a
field still open where we test various approaches both modeling profiles as the recommendation as such. In this paper we
have developed a learning object recommendation system prototype that has been used to experiment with 3 different
recommendation algorithms based on the user profile in order to determine and compare the accuracy of their results.
Keywords: recommendation systems, learning objects, mahout
INTRODUCCIÓN
La educación a distancia ha existido desde hace mucho tiempo buscando siempre eliminar la barrera de la
distancia geográfica para acceder a algún tipo de formación. Los medios utilizados han variado considerablemente
desde el uso de la radio y el correo tradicional, hasta entornos de aprendizaje en línea utilizando el Internet.
Es indudable que el uso de Internet para esta labor ha mejorado ostensiblemente la cantidad tanto de la oferta
académica disponible como de los usuarios de la misma, así como la digitalización de los contenidos y soportes
educativos ha ayudado a una reducción de los costos de distribución de los mismos. Sin embargo, un aspecto a
mejorar es la satisfacción del usuario (estudiante) respecto a los materiales utilizados durante su proceso de
aprendizaje.
Además de la variedad y profundidad de conocimientos previos, los estudiantes pueden tener diferentes estilos de
aprendizaje, unos pueden preferir aprender mediante la lectura, otros mediante gráficos, audios o videos. También se
debe tomar en cuenta aspectos como el idioma.
Con todos estos factores y dada la cantidad de materiales que podrían estar disponibles para cada tema de
estudio, no todos los materiales almacenados en una plataforma de aprendizaje podrían ajustarse a las características
individuales de cada usuario, es necesario entonces evaluar y aplicar métodos que permitan que los usuarios tengan
disponibles los materiales que mejor se adecuen a su perfil.
El presente trabajo busca evaluar cuáles de los algoritmos utilizados para recomendación producen la mejor
precisión y exhaustividad al ser utilizado en ambientes reales. El artículo está estructurado de la siguiente manera.
En la sección 2 se presenta la revisión de la literatura donde se describen los algoritmos de recomendación así como
también avances sobre recomendación de objetos de aprendizaje. En la sección 3 se describe la metodología
utilizada donde se presentan los componentes del sistema de recomendación y los experimentos realizados para
evaluar la eficiencia de los métodos de recomendación propuestos. En la sección 4 se presenta el análisis de los
resultados obtenidos y finalmente se presentan las conclusiones del trabajo realizado.
ESTADO DEL ARTE
Los sistemas de recomendación, sin importar el tipo de datos o dominio de aplicación, de manera general se
clasifican, dependiendo del método utilizado, en: basados en contenido (content-based), colaborativos e híbridos.
Sistemas de Recomendación Basados en Contenido (Content-Based)
Los sistemas basados en contenido buscan utilizar la información disponible tanto del ítem como del usuario para
calcular la recomendación más adecuada.
Pazzani y Billsus, en su artículo “Content-Based Recommendation Systems” [1], tratan los sistemas que
presentan la recomendación de un ítem basada en una descripción del mismo y un perfil de los intereses del usuario,
los mismos que deben tratar y definir 3 aspectos importantes que son el modelamiento del item, el modelamiento de
las preferencias del usuario y el método o algoritmo para realizar la recomendación.
El modelamiento, representación y almacenamiento de los items puede presentar complicaciones y diferentes
mecanismos de implementación dependiendo de si se trata de datos estructurados, donde cada item es representado
por un conjunto conocido y limitado de atributos, o si por el contrario se trata de información más libre como
páginas web, artículos de noticias, críticas de expertos, etc, requiriendo un procedimiento adicional para normalizar
dicha información en datos estructurados. En el dominio de los entornos educativos, los objetos de aprendizaje
tienen la particularidad de que suelen estar definidos a través de metadatos estructurados, de manera que se
simplifica o elimina este proceso de modelamiento.
El modelamiento de los usuarios por su parte presenta una ventana mayor de posibilidades puesto que tanto el
método como el resultado dependerá en gran medida del procedimiento que se utilizará para realizar la
recomendación, variando desde perfiles simples definidos por el mismo usuario a través de formularios, pasando por
la definición del perfil a partir de la realización de un test al momento de registro e incluso llegando a modelar las
preferencias del usuario a partir de sus interacciones previas con el sistema.
El método o algoritmo que se use para contrastar los items con los usuarios es por lo general el tema central de
los diferentes estudios que exploraremos a continuación.
Betancur et al. [2] presenta un modelo de recomendación en el que los Objetos de Aprendizaje son representados
a través de metadatos definidos en el Esquema LOM (Learning Object Metadata) por el Grupo de Trabajo IEEE
P1484.12, mientras que el modelamiento de la recomendación es diferenciado dependiendo del usuario, para el caso
del profesor el modelo se basa en los temas dentro de los cuales desarrolla el curso, mientras que para el caso del
estudiante el perfil está formado por su información básica, preferencias y estilos de aprendizaje (identificados con
el Test de Felder). Se presentan además dos tipos de recomendación, el primer tipo se enfoca en aumentar el
conocimiento dentro del proceso de aprendizaje del estudiante en un curso determinado, tomando en cuenta los
objetivos del curso para obtener del repositorio los objetos de aprendizaje que podría utilizar como complemento.
El segundo tipo de recomendación examina el perfil del usuario en busca de sus estilos de aprendizaje y áreas de
interés para ofrecer materiales independientes a los cursos en los que se encuentra registrado y también para
promover el ingreso a otros cursos que se encuentran disponibles en el sistema de tutoría.
Casali et al. [3] también emplea LOM para la representación de los items (Objetos de Aprendizaje), además
considera la importancia relativa de las preferencias del usuario como parte de la fórmula para realizar la
recomendación, por lo que utiliza el modelo g-BDI (BGI graduado) para aplicar reglas que tomen en cuenta
valoraciones graduadas (no bivaluadas) de las preferencias del usuario.
Sistemas de Recomendación Basados en Filtrado Colaborativo (Collaborative-Filtering)
El filtrado colaborativo es una técnica empleada por los Sistemas de Recomendación que utiliza la información
de preferencias y calificación de un grupo de usuarios respecto a los items de un repositorio con el fin de predecir o
inferir la preferencia de un usuario en particular sobre un ítem y a partir de esto generar una recomendación
acertada.
El filtrado colaborativo presenta características y problemas específicos [4] tales como la escasez de datos
referentes a calificaciones y preferencias lo que afecta el rendimiento del sistema siendo el problema más común el
conocido como arranque en frío que se presenta con el ingreso de un nuevo usuario o ítem para el cual no existe
suficiente información previa. Para este problema se propone usar el método de filtrado colaborativo híbrido como
el medio para producir las predicciones de los nuevos usuarios o items. Otros desafíos del filtrado colaborativo son
la escalabilidad del sistema, la sinonimia o similitud semántica de items, la protección de la privacidad, entre otros.
Las técnicas de filtrado colaborativas pueden ser agrupadas en tres categorías[4]: los algoritmos basados en
memoria, que usan una base de datos usuario-item para generar una predicción y se basa en que cada usuario es
parte de un grupo con intereses similares, al identificar los vecinos similares de un nuevo usuario se pueden producir
predicciones de preferencias de nuevos items, la similaridad entre usuarios puede calcularse por ejemplo con los
algoritmos de correlación de Pearson, Spearman rank, Kendall o vector coseno. La segunda categoría son los
algoritmos de filtrado basados en modelo, con los que se intenta que el sistema aprenda a reconocer patrones
basados en datos de entrenamiento, entre los algoritmos para esta categoría están los modelos bayesianos, de
clustering y basados en regresiones. La tercera categoría es el filtrado híbrido, que combina el filtrado colaborativo
con otras técnicas de recomendación.
En [4] también se exponen métricas de evaluación para las técnicas de filtrado colaborativo, entre las mas usadas
están: error medio absoluto (MAE), recuperación y precisión y sensibilidad ROC.
Cechinel et al. [5] emplea la librería Apache Mahout para evaluar recomendaciones de recursos de aprendizaje
generados por diferentes algoritmos de filtrado colaborativo del tipo memory-based también conocidos como userbased, aplicados sobre conjuntos de datos obtenidos del repositorio MERLOT. Se evaluó un conjunto de datos con
la información de calificaciones que han dado los usuarios a los recursos, aplicando tres métricas de similaridad:
Pearson, Euclidean y LogLikelihood, se mostró que el algoritmo LogLikelihood fue capaz de generar
aproximadamente cuatro veces más recomendaciones que Pearson y Euclidean. Este trabajo expresa además la falta
de pruebas y evaluaciones de sistemas de recomendación con datos capturados en tiempo real, por lo que se lo
presenta como un primer intento a la evaluación de técnicas de filtrado colaborativo que puede ser usado como base
para otras evaluaciones de recomendación.
Sistemas de Recomendación Híbridos
Los sistemas híbridos combinan las técnicas de filtrado colaborativo y basado en contenido con el fin de mejorar
las recomendaciones resultantes o superar problemas como el arranque en frío [4] que presentan algunos de los
métodos anteriores al ser utilizados por separado.
Kim et al. [6] describe un método que combina el filtrado basado en contenido y el filtrado colaborativo. El
método parte de la obtención de la información para la creación de los perfiles de usuario. El perfil del usuario
indica la información necesaria de las preferencias relacionadas a los items que son de interés del usuario. La
creación del perfil puede ser realizada por un método de ponderación manual en el que cada usuario da un peso a los
atributos de los items de acuerdo a sus gustos o puede ser automática donde la ponderación se calcula usando
características de los atributos e información previa del usuario. Luego de creados los perfiles, éstos son agrupados
mediante algoritmos de clustering para proveer la información con contenido semántico, los grupos se forman
usando el algorimo de K-means. Luego estos clusters son tratados como items para formar una nueva matriz de
usuario-item, la similaridad de los usuarios de esta nueva matriz se obtiene con una combinación de los algoritmos
correlación coseno y Pearson. Finalmente predicciones para los nuevos usuarios se realizan aplicando sobre la
nueva matriz creada un algoritmo de filtrado colaborativo.
En Learning materials recommendation using good learners’ ratings and content-based filtering [7] se propone
un sistema recomendación para e-learning generado de la combinación de una recomendación basada en contenido y
luego una recomendación colaborativa basada en las calificaciones dadas a los materiales por los buenos alumnos,
aquellos que obtuvieron las mejores notas. Por medio de un experimento se ha comparado los resultados de la
recomendación basada en contenido versus la recomendación híbrida aplicando la métrica del error medio absoluto
(MAE), donde se demostró que al usar las calificaciones dadas por los buenos alumnos como suministro se ha
mejorado la selección de items de gran calidad y también se ha incrementado el rendimiento en el aprendizaje.
Un método similar es presentado Ruiz et al. [8], donde la recomendación se realiza a partir de una selección de
objetos filtrando los mismos usando la información de la metadata del objeto de acuerdo al contenido de la búsqueda
del usuario para luego pasar este resultado por un filtro colaborativo que considere las evaluaciones realizadas por
otros usuarios. Sin embargo, se pretende mejorar un poco más la calidad del proceso de recomendación al analizar el
perfil del usuario y verificar su historial y sus objetivos a corto y largo plazo de modo que los objetos que son
presentados sean de valor para el usuario ya que representarán su estado cognitivo, así se podría evitar que el
estudiante reciba un material que está muy avanzado para su nivel. El artículo muestra la aplicación de este método
de recomendación en un repositorio de recursos educativos de lenguajes de programación, pero concluye que puede
ser usado en otro dominio educativo.
Zapata et al. [9] proponen combinar varios tipos de filtrado para obtener una recomendación de objetos más
ajustada al perfil de un usuario, tratando de utilizar toda la información que se tenga disponible sobre objetos y
usuarios. Ésta información pasará por diversos métodos de clasificación como técnicas de filtrado y calificaciones,
técnicas basadas en metadata y contenido, uso de los objetos de aprendizaje y similaridad del perfil del usuario. El
método primero preselecciona objetos de aprendizaje del repositorio usando una búsqueda en base a los metadatos,
luego pasa por los otros proceso de filtros para obtener una lista final que será la que mejor se adapte al usuario.
Pruebas de funcionamiento han sido realizadas sobre un sistema llamado DELPHOS y se presenta un ejemplo donde
se puede observar cómo una lista de objetos recomendados va cambiando a medida que se van aplicando los
diferentes filtros.
Otros trabajos experimentan enfoques diferentes para mejorar el algoritmo de selección, como el uso de reglas de
inferencia [10] como el medio para ayudar a un usuario en su búsqueda de objetos. También hay trabajos donde se
emplean diferentes maneras de modelar los objetos, como la utilización ontologías de dominio [11], representando
los metadatos en términos de conceptos y seleccionando los objetos en el repositorio mediante el algoritmo
Spreading Activation, que recorre los arcos del grafo de la ontología y asigna una puntuación a los conceptos que
están relacionados semánticamente con los parámetros de búsqueda del usuario. De esta consulta se obtiene una lista
de objetos de aprendizaje a la que se aplica un método de recomendación primero filtrando por las preferencias del
usuario y luego por el contenido de los objetos buscando la similitud con los objetos que han sido accedidos
anteriormente por el usuario.
TABLA 1. Diferencias entre los Sistemas de Recomendación
Basado en Contenido
Filtrado Colaborativo
Híbrido
Análisis de los atributos del ítem
Si
No
Si
Análisis del perfil del usuario
Si
Si
Si
Análisis de las interacciones con el sistema
Si
Si
Si
Análisis de las calificaciones de los usuarios sobre los
items
No
Si
Si
Problema de Arranque en Frío
No
Si
No
Problemas de Escalabilidad
Si
Si
Si
Atención Contextualizada
La atención contextualizada es la información de las interacciones del usuario con el sistema dentro del contexto
de la tarea del usuario. Esta información también está siendo utilizada en el proceso de recomendación de algunos
sistemas.
Ochoa, X. y Duval, E. [12] proponen y detallan el uso de metadata de atención contextualizada (CAM)
recolectada en todas las fases del ciclo de vida de un objeto para la recomendación y ranking de objetos de
aprendizaje. Primero se listan las acciones que deben ser registradas con un breve detalle de la información a
almacenar con CAM durante cada fase del ciclo de vida del objeto. A continuación se propone las métricas para
recomendación y ranking, las cuales usarán la metadata del objeto de aprendizaje y las acciones registradas con
CAM. Se proponen 4 métricas: Análisis de enlaces basado en Ranking donde se utiliza la información de CAM
como un grafo del cual se pueden obtener varios rankings como de popularidad, de autor, de ponderación, de factor
de reuso y rango. Medidas de Similitud para Recomendación que pueden ser Similaridad de Objetos basada en el
número de descargas, Similaridad de Objetos basada en Reuso, Similaridad de Usuarios basado en descargas.
Similaridad de autores basado en reuso de componentes. Ranking Personalizado donde se puede generar un perfil de
usuario fuzzy a partir de la información de CAM y combinarlo con el objeto, Recomendación Contextual para
generar recomendación basada en lo que lo que el usuario está atendiendo al momento.
En Context-aware Recommender Systems for Learning: a Survey and Future Challenges [13] se trata de evaluar
en los sistemas de recomendación para Innovación en Educación (Technology Enhanced Learning - TEL) el grado
en el cual se ha incorporado el uso de información contextualizada sobre el usuario en el proceso de recomendación
con el objetivo de construir sistemas inteligentes que pueden predecir mejor y anticipar las necesidades de los
usuarios. Se presenta un framework de contexto que identifica las dimensiones relevantes de contexto para
aplicaciones TEL y a partir de estas dimensiones se presenta un análisis de los sistemas existentes. Los resultados
del estudio indican que existe mucho avance en el desarrollo de recomendadores context-aware en los últimos años.
En Object Recommendation based on Usage Context [14], Friedrich et al. parten de la hipótesis de que la
similaridad en uso da lugar a similaridad de contenido y por tanto puede ser usada para recomendaciones. Se define
la noción de perfil de contexto de uso para los objetos el cual puede ser generado a partir de un historial de uso y
contiene los objetos que fueron accesados antes y después del objeto. Con esto se plantea que la recomendación
puede ser mejorada comparando el historial de uso de un usuario con los perfiles de contexto de uso de los objetos.
Para las pruebas hace uso del proyecto MACE (Metadata for Architectural Contents in Europe), las interacciones del
usuario con este sistema (búsqueda, accesos, interacciones con objetos, etc) son monitoreadas y almacenadas usando
CAM. Esta información es utilizada para elaborar perfiles de contexto de uso de los objetos y combinarlos por
medio de cálculos de similaridad con la información del usuario para recomendar objetos. Para la recomendación
utiliza filtrado colaborativo item-based y un cálculo de similaridad que puede ser de tres maneras diferentes: primero
de contexto que está basado en los contextos de uso de los objetos, segundo la similaridad de metadata que está
basada en diferentes atributos de la metadata de los objetos (representados con LOM) y tercera una comparación
manual de una selección de objetos basado en contenido.
METODOLOGIA
Las herramientas de aprendizaje en línea poseen o acceden a repositorios de objetos de aprendizaje que deben
poner a disposición de los estudiantes de acuerdo a la asignatura o tema de estudio. Es lógico pensar que mientras
más grandes sean dichos repositorios, mayores posibilidades tienen los estudiantes de obtener mejores objetos para
su aprendizaje, sin embargo, se presenta el inconveniente de tener que realizar la búsqueda de los mismos, así como
de diferenciar cuales de todos ellos podrían ser más adecuados para cada usuario.
El método utilizado para afrontar dicho problema es el desarrollo de sistemas de recomendación de objetos de
aprendizaje que, empleando uno o varios algoritmos determinados, realice una comparación entre el perfil del
estudiante y las características e historial de uso de los objetos con el objetivo de proveer el subconjunto ordenado
de los mismos que aporte un mayor apoyo al proceso de aprendizaje.
Para el presente trabajo de investigación se utiliza el repositorio de objetos de aprendizaje del proyecto IGUAL
(Innovation for Equality in Latin American Universities), el mismo que tiene por objetivo proveer una herramienta
de aprendizaje en línea donde los estudiantes puedan accesar a los materiales que le ayuden a complementar su
proceso de aprendizaje. Este repositorio ha sido implementado empleando las siguientes herramientas de software
libre:
- Hadoop1 para el almacenamiento distribuido de los archivos.
- 4Store para el almacenamiento de la metadata con RDF
A partir del mencionado repositorio se ha desarrollado un prototipo de sistema de recomendación de objetos de
aprendizaje con el que se realizó una evaluación experimental con el objetivo de comparar los resultados obtenidos
mediante la aplicación de diferentes algoritmos de recomendación.
1
http://hadoop.apache.org/
Arquitectura del Sistema de Recomendación
El componente principal del prototipo implementado consiste en una Interfaz de Programación de Aplicaciones,
API por sus siglas en inglés, desarrollada en Java, que se encarga de la comunicación con el repositorio del Proyecto
IGUAL. Esta API implementa, entre otras, las funciones que ejecutan los algoritmos de recomendación
seleccionados.
Otro componente del prototipo es una interfaz web desarrollada con PHP y MySQL que provee dos
funcionalidades, la primera es la creación del perfil de usuario mediante el formulario de registro y la aplicación del
Test de Felder, la segunda funcionalidad es la búsqueda de objetos de aprendizaje, para lo cual utiliza una función de
la API que se encarga del filtrado de los objetos por el patrón de búsqueda y luego de la selección secuencial y
posterior ejecución del método de recomendación.
FIGURA 1. Arquitectura del Sistema de Recomendación
Perfil del Usuario
El perfil del usuario estará formado por los datos básicos que incluyen el nombre, apellido, usuario, clave,
dirección de correo electrónico e idioma y por los estilos de aprendizaje recolectados a través del Test de Felder.
Este test consiste en un cuestionario de 44 preguntas cuyo análisis clasifica los estilos de aprendizaje de una persona
en cuatro dimensiones:
•
•
•
•
Tipo de información: Sensitivo - Intuitivo
Tipo de estímulos preferenciales: Visual - Verbal
Forma de procesar y comprender la información: Secuencial – Global
Forma de trabajar con la información: Activo – Reflexivo
Cabe destacar que por razones de escalabilidad futura, ante la posibilidad de utilizar diferentes métodos o
pruebas para complementar el perfil del usuario, se ha decidido almacenar la información obtenida del Test de
Felder en una estructura de datos separada.
FIGURA 2. Estructura de Datos para el Perfil de Usuario
Objetos de Aprendizaje
Los objetos de aprendizaje están localizados en el repositorio del proyecto IGUAL, el mismo que ha sido
implementado en una arquitectura distribuida utilizando Hadoop y son descritos con metadatos en formato LOM,
además cada objeto de aprendizaje posee información de los estilos de enseñanza de acuerdo al modelo de Felder.
Las dimensiones de los estilos de enseñanza son:
• Contenido: Concreto-Abstracto
• Presentación: Visual-Verbal
• Organización: Inductivo-Deductivo
• Participación del estudiante:Activo-Pasivo
• Perspectiva:Secuencial-Global
FIGURA 3. Estructura de Datos para Objeto de Aprendizaje y Estilos de Enseñanza
Acciones Sociales
Las acciones sociales están representadas por las interacciones que realiza un usuario con los objetos de
aprendizaje como recomendar, calificar o definir gusto por los mismos. Estas interacciones representan el grado de
satisfacción o preferencia que un usuario tiene sobre cierto objeto y están almacenadas en el repositorio de la
siguiente manera:
FIGURA 4. Estructura de Datos para Acciones Sociales
Estas preferencias tienen dos funciones principales. En primer lugar sirven como fuente de datos en el proceso
de recomendación de objetos para otros usuarios por medio del método de filtrado colaborativo. La segunda función
es servir como fuente de información para comprobar cómo valora el usuario el objeto y de esta manera analizar si
el método de recomendación por el cual este objeto fue seleccionado satisface las necesidades del usuario.
Métodos de Recomendación
Recomendación basada en contenido: La técnica empleada para la recomendación basada en contenido consiste
en un método simple de asignación de puntos de acuerdo a la similitud de características compartidas entre el objeto
de aprendizaje y el perfil del estudiante.
En primer lugar se compara el idioma del objeto de aprendizaje contra el idioma del usuario, si estos son iguales
se suman dos puntos al peso del objeto. A continuación se analizan los estilos de enseñanza que se han definido
para los objetos y los estilos de aprendizaje del estudiante. En la siguiente tabla se muestra las características
examinadas y la puntuación correspondiente.
TABLA 2. Valoración para la Recomendación Basada en Contenido
Objeto de Aprendizaje
Estilos de Enseñanza
Alumno
Estilos de Aprendizaje
Puntos
sumados
Visual
Verbal
Valor del rango Visual/Verbal <=-5
Valor del rango Visual/Verbal >= 5
1
1
Secuencial
Global
Valor del rango Secuencial/Global <=-5
Valor del rango Secuencial/Global >= 5
1
1
Activo
Pasivo
Valor del rango Activo/Reflectivo <=-5
Valor del rango Activo/ Reflectivo >= 5
1
1
Concreto
Abstracto
Valor del rango Sensorial/Intuitivo <=-5
Valor del rango Sensorial/Intuitivo >= 5
1
1
Al final los objetos a recomendar se obtienen ordenándolos de mayor a menor de acuerdo al puntaje obtenido, de
esta manera los objetos que mejor se ajustan al perfil del usuarios serán los primeros en mostrarse.
Recomendación basada en filtrado colaborativo: Para esta recomendación se usarán las acciones sociales
realizadas por los usuarios sobre los objetos de aprendizaje, con el fin de recomendar al estudiante los materiales que
han resultado de mayor interés para otros usuarios y que él aún no ha revisado. Este proceso de recomendación usará
Mahout2, un proyecto de la Fundación Apache compuesto por un conjunto de librerías de código abierto para
aprendizaje automatizado.
El uso de Mahout para la recomendación con filtrado colaborativo incluye los siguientes pasos:
2
http://mahout.apache.org/
1.
2.
3.
4.
5.
Proporcionar el modelo de datos que consiste en un archivo de texto que representa las preferencias de los
usuarios a los objetos de aprendizaje, cada línea está expresada de la siguiente manera:
id_usuario, id_objeto, calificación
Seleccionar el algoritmo de similaridad, Mahout implementa varios algoritmos como Correlación de
Pearson, Medida Coseno, Coeficiente de Tanimoto, Log Likelihood , entre otros.
Establecer el tamaño del vecindario del usuario U 1 para determinar los usuarios con gustos similares a U 1 y
de esta manera obtener mejores recomendaciones.
Inicializar el recomendador en el que se especifica el modelo de datos, el algoritmo de similaridad y el
vecindario.
Finalmente los objetos recomendados se obtienen al indicar sobre cuál usuario se desea realizar la
recomendación.
FIGURA 5. Uso de la librería Mahout en la Recomendación Colaborativa
Recomendación Híbrida:Esta recomendación es una combinación de los dos métodos anteriores. En primer
lugar se aplica el método de recomendación basado en contenido para obtener una lista de objetos de aprendizaje de
los cuales se buscarán todas las acciones sociales que los usuarios han realizado sobre ellos. A continuación el
método de recomendación de filtrado colaborativo es aplicado utilizando esta entrada de datos.
Evaluación Experimental
Esta fase consiste en la aplicación de los métodos de recomendación implementados y la recolección de los datos
que sirven para la comparación y evaluación de los mismos. Consta de 2 tipos de experimentos:
• Experimento Sintético: El objetivo de este experimento es comparar la lista de objetos de aprendizaje
recomendados por cada uno de los métodos implementados en el prototipo, con aquellos sugeridos por un
usuario experto en la materia.
A un profesor de la materia de Fundamentos de Programación se le envió una lista de 10 temas de estudio
de la materia y se le solicitó que seleccione del repositorio aquellos objetos de aprendizaje que estén
relacionados con cada tópico, ordenándolos de acuerdo a si el estudiante prefiere materiales Visuales o si
tiene preferencia por materiales de tipo Verbal.
Adicionalmente, se utiliza el prototipo para ejecutar cada método de recomendación bajo el perfil de cada
tipo de estudiante (preferencias verbales o visuales), esperando que los resultados obtenidos sean similares
a los propuestos por el usuario experto.
• Experimento Natural: Este experimento tiene como finalidad medir los niveles de aceptación de los
resultados de cada método de recomendación, obtenidos a partir de la interacción de usuarios reales
(alumnos) con el sistema. Para esto se hace uso de las acciones sociales como like, recomendar y calificar,
disponibles en la misma interfaz de búsqueda.
La función de la API se encarga de alternar los métodos de recomendación en orden secuencial, de manera
transparente para el usuario, quien no tiene conocimiento sobre el método utilizado en cada momento, lo
que brinda neutralidad al momento de analizar cuál de los métodos recibe mejor aceptación.
Para la ejecución de este experimento se solicitó la colaboración de estudiantes de la materia Fundamentos
de Programación, quienes tuvieron libertad respecto a los tópicos sobre los cuales realizaron las búsquedas
de objetos de aprendizaje.
ANÁLISIS DE RESULTADOS
Resultados Experimento Sintético
Para evaluar los objetos recomendados por el tutor experto y aquellos recomendados por el sistema de
recomendación se realiza el cálculo de la variable Precisión, mientras que para medir la similaridad del orden de los
objetos recomendados se ha utilizado la Distancia de Kendall Tau.
Precisión = Número Documentos Relevantes Recuperados / Número Total de Documentos Recuperados
Para este análisis el número de documentos relevantes corresponde al número de objetos que están en el grupo de
los objetos recomendados por el tutor experto.
En los resultados que se muestran en las tablas a continuación R1 representa a Recomendación Filtrado
Colaborativo, R2 a Recomendación Basada en Contenido y R3 a Recomendación Híbrida.
La Tabla 3 muestra los resultados de la selección de materiales sobre manejo de memoria tanto del Tutor Experto
como del Sistema de Recomendación. Esta selección muestra los tres IDs de los materiales relacionados al tema,
ordenados de acuerdo a la preferencia del estudiante. Como se puede observar el orden de los materiales
recomendados coincide 100% en la selección del Tutor Experto y el Sistema de Recomendación para la Preferencia
de Objetos Visuales, para la Preferencia por Objetos Verbales el orden de la selección es diferente en la
recomendación por Filtrado Colaborativo.
TABLA 3. Resultados y Análisis de la búsqueda de materiales sobre manejo de memoria
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
114
126
127
126
127
114
126
127
114
114
126
127
114
126
127
114
126
127
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0.67
0
0
0
0
0
126
127
114
114
126
127
Los resultados de la selección de materiales sobre Arreglos se muestran en la Tabla 4, de manera similar a los
resultados presentados en la Tabla 3, los listados del Tutor Experto y del Sistema de Recomendación difieren
solamente en la recomendación por Filtrado Colaborativo.
TABLA 4. Resultados y Análisis de la búsqueda de materiales sobre Arreglos
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
19
35
1
1
19
35
1
19
35
19
35
1
19
35
1
19
35
1
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0.67
0
0
0
0
0
1
19
35
19
35
1
En la Tabla 5 se muestra los resultados de la selección de materiales sobre Operadores, la selección muestra ocho
identificadores de materiales relacionados a este tema, a diferencia de los ejemplos anteriores, la lista seleccionada
por el Tutor es diferente a las generadas por el Sistema de Recomendación tanto en las preferencias de objetos
visuales como los verbales, principalmente en la recomendación por Filtrado Colaborativo donde se puede notar IDs
que no están presentes en el listado del tutor que se ve reflejada en valor de 50% de precisión.
TABLA 5. Resultados y Análisis de la búsqueda de materiales sobre operadores
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
10
100
11
136
155
156
20
21
10
9
8
11
20
21
44
41
10
9
8
11
20
21
44
41
10
100
11
136
155
156
20
21
44
41
21
20
11
10
8
9
44
41
21
20
11
10
8
9
Precisión
50%
100%
100%
50%
100%
100%
Distancia Kendall Tau
-
0.18
0.18
-
0.39
0.39
8
9
10
11
20
21
41
44
20
21
41
44
8
9
10
11
Para la selección de materiales sobre switch mostrados en la Tabla 6, se puede observar que el listado del tutor y
los listados del sistema de recomendación coinciden 100% en las recomendaciones basadas en contenido e híbridas.
En la recomendación por Filtrado Colaborativo se puede observar un ID diferente entre los tres seleccionados para
ambas preferencias de objetos.
TABLA 6. Resultados y Análisis de la búsqueda de materiales sobre switch
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
15
163
28
15
28
43
15
28
43
15
163
28
28
43
15
28
43
15
Precisión
67%
100%
100%
66%
100%
100%
Distancia Kendall Tau
-
0
0
-
0
0
15
28
43
28
43
15
La Tabla 7 muestra los resultados para la búsqueda de materiales sobre condicionales. Todas las listas incluyen
los cuatro IDs relacionados a este tema y coinciden en el orden a excepción de la recomendación por Filtrado
Colaborativo para objetos visuales.
Los resultados de la búsqueda de materiales sobre variables se muestran en la Tabla 8. Aquí se puede notar que
los listados del Sistema de Recomendación y el listado del Tutor para la preferencia de objetos visuales coinciden
totalmente, a diferencia del listado de objetos verbales que aunque contiene los mismos objetos tienen un orden
diferente.
TABLA 7. Resultados y Análisis de la búsqueda de materiales sobre condicionales
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
11
27
28
43
11
27
28
43
11
27
28
43
11
27
28
43
27
28
43
11
27
28
43
11
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0
0
0
0.5
0
0
11
27
28
43
27
28
43
11
TABLA 8. Resultados y Análisis de la búsqueda de materiales sobre variables
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
107
16
19
33
16
33
107
19
16
33
107
19
107
16
19
33
107
19
16
33
107
19
16
33
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0.67
0.17
0.17
0
0
0
16
33
19
107
107
19
16
33
La Tabla 9 muestra los resultados de la selección de materiales sobre punteros. En esta tabla se puede observar
que aunque todos los listados contienen los mismos objetos el orden de selección es diferente en todos los casos.
TABLA 9. Resultados y Análisis de la búsqueda de materiales sobre punteros
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
128
114
13
14
37
13
14
128
114
37
13
14
128
114
37
128
114
13
14
37
128
114
37
13
14
128
114
37
13
14
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0.5
0.1
0.1
0.3
0.1
0.1
13
14
114
128
37
114
128
37
13
14
Los resultados de la selección de materiales sobre archivos se muestran en la Tabla 10, en este caso como solo se
dispone de dos objetos sobre este tema, las recomendaciones del Tutor y del Sistema de Recomendación coinciden
totalmente.
TABLA 10. Resultados y Análisis de la búsqueda de materiales sobre archivos
Tutor Experto
Preferencia Objetos
Verbales
Sistema de Recomendación
Preferencia Objetos
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
119
120
119
120
119
120
119
120
120
119
120
119
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0
0
0
0
0
0
119
120
120
119
La tabla 11 muestra la selección de materiales sobre sentencias de iteración. Las listas de objetos seleccionados
por el Tutor coinciden en cantidad y orden con las listas del Sistema de Recomendación a excepción de la lista de
objetos verbales recomendados por Filtrado Colaborativo que tiene un orden diferente.
TABLA 11. Resultados y Análisis de la búsqueda de materiales sobre sentencias de iteración
Tutor Experto
Sistema de Recomendación
Preferencia Objetos Preferencia Objetos
Verbales
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
45
7
15
7
15
45
7
15
45
45
7
15
45
7
15
45
7
15
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0.67
0
0
0
0
0
7
15
45
45
7
15
Los resultados de la selección de materiales sobre formato de cadenas se muestran en la Tabla 12, aunque la lista
es pequeña formada con tres objetos, se puede observan que el orden dado por el Tutor Experto es diferente al
elegido por el Sistema de Recomendación.
TABLA 12. Resultados y Análisis de la búsqueda de materiales sobre formato de cadenas
Tutor Experto
Sistema de Recomendación
Preferencia Objetos Preferencia Objetos
Verbales
Visuales
Preferencia Objetos Verbales
Preferencia Objetos Visuales
R1
R2
R3
R1
R2
R3
117
46
2
117
2
46
117
2
46
117
46
2
46
117
2
46
117
2
Precisión
100%
100%
100%
100%
100%
100%
Distancia Kendall Tau
0.66
0.34
0.34
0.66
0.34
0.34
2
117
46
46
2
117
De los resultados de las pruebas se puede notar que en todos los casos la recomendación basada en contenido y la
recomendación híbrida tiene una precisión del 100%. Para el caso de la recomendación basada en filtrado
colaborativo, al ser la muestra pequeña no se genera ninguna recomendación y el resultado es el generado por el
patrón de búsqueda. De acuerdo a los resultados de la recomendación el método híbrido no pudo generar la
recomendación usando información colaborativa lo que se ve reflejado en la igualdad de las recomendaciones R2 y
R3.
En cuanto a la similaridad del orden de los objetos, medida con la Distancia de Kendall Tau, se puede ver que en
la mayoría de los casos coinciden, siendo las más parecidas las recomendaciones por el método basado en contenido
e híbrido.
Resultados Experimento Natural
En este experimento participaron 44 estudiantes, 65% de ellos tiene preferencia por objetos visuales, 4.5%
preferencia por objetos verbales y 29.5% se encuentra en un rango de equilibrio entre estas dos dimensiones. Los
estudiantes realizaron pruebas con el repositorio que contiene 168 objetos de aprendizaje.
Lamentablemente por la cantidad limitada de objetos de aprendizaje y de usuarios, el método de recomendación
basado en filtrado colaborativo no generó resultados en la mayoría de su ejecución. También hay que anotar que el
método de recomendación de filtrado usando Mahout requiere que el archivo con la información colaborativa
contenga registros del usuario al que se va a realizar la recomendación. Esto también originó que muchas de las
recomendaciones híbridas tengan como resultado el equivalente a la recomendación basada en contenido.
A pesar de estos inconvenientes se pudo observar lo siguiente:
• De los patrones de búsqueda que devolvían entre 2 y 4 materiales, el 97% de los materiales fueron
seleccionados y el 58% recibió algún tipo de actividad social.
• Gran parte de los usuarios descargó los primeros objetos de la lista recomendada.
• Los resultados de la recomendación basada en contenido fueron las más aceptadas.
CONCLUSIONES
Durante la realización del presente proyecto se utilizó de manera exclusiva herramientas de software libre, lo que
reafirma la viabilidad de éstas en tareas de soporte a investigaciones. Además, la existencia y uso de librerías
especializadas, como el caso de Mahout para la evaluación de algoritmos de recomendación, permite ahorrar tiempo
y esfuerzo en el desarrollo de los prototipos y permiten enfocarse en otros aspectos de la investigación.
Aunque la aplicación de los métodos de recomendación colaborativa no arrojó los resultados esperados, se puede
atribuir esta situación a la poca cantidad de materiales disponibles, así como a la escasa actividad previa de parte de
los usuarios, que imposibilitó la creación del perfil basado en su comportamiento con el sistema.
Los buenos resultados obtenidos por el método de recomendación basado en contenido durante la etapa de
experimentación avalan no solo el algoritmo como tal, sino también la utilización del Test de Felder para agregar al
perfil del usuario información referente al estilo de aprendizaje.
Se confirma la ventaja de utilizar el método de recomendación híbrido sobre la recomendación colaborativa en
los casos de arranque en frío, puesto que mientras el método colaborativo simplemente muestra los resultados en el
orden obtenido por el filtro, los items recomendados por el algoritmo híbrido llevan al menos cierta información
relacionada al usuario provista por la recomendación basado en contenido.
AGRADECIMIENTOS
El presente trabajo ha sido financiado por la Comisión Europea a través del proyecto IGUAL - Innovación para
la Igualdad en la Universidad de América Latina (www.igualproject.org) (código DCIALA/19.09.01/10/21526/245315/ALFAHI(2010)123) del programa ALFA III.
REFERENCIAS
1. M. Pazzani y D. Billsus, "Content-Based Recommendation Systems. The Adaptive Web: Methods and Strategies
of Web Personalization", Lecture Notes in Computer Science, Vol. 4321, Mayo 2007
2. D. Betancur, J. Moreno, y D. Ovalle, "Modelo para la recomendación y recuperación de objetos de aprendizaje
en entornos virtuales de enseñanza/aprendizaje", Revista Avances en Sistemas e Informática Vol 6 Nº 1, Junio 2009.
3. A. Casali, V. Gerling, C. Deco y C. Bender, "Sistema inteligente para la recomendación de objetos de
aprendizaje". Revista Generación Digital Vol. 9 No. 1. Edición 16, Enero 2011.
4. X. Su y T. Khoshgoftaar, "A Survey of Collaborative Filtering Techniques". Advances in Artificial Intelligence
Vol 2009, Enero 2012.
5. C. Cechinel, M. Sicilia, S. Sánchez y E. García, "Evaluating collaborative filtering recommendations inside large
learning object repositories", Information Pocessing & Management, Agosto 2012.
6. B. Kim, Q. Li, Ch. Park, S. Kim y J. Kim, "A new approach for combining content- based and collaborative
filters", Journal of Intelligent Information Systems, Agosto 2006.
7. K. I. Ghauth y N. A. Abdullah, "Learning materials recommendation using good learners’ ratings and contentbased filtering", Educational Technology Research and Development 58, no. 6, Diciembre 2010.
8. A. Ruiz, G. Jiménez y M. Gómez, "Personalización en Recomendadores Basados en Contenido y su Aplicación a
Repositorios de Objetos de Aprendizaje", IEEE-RITA Vol. 5, Núm. 1, Febrero 2010.
9. A. Zapata, V. Menendez, M. Prieto, C. Romero, "A Hybrid Recommender Method for Learning Objects", Design
and Evaluation of Digital Content for Education Proceedings published by International Journal of Computer
Applications, 2011
10 D.Lemire, H. Boley, S. McGrath y M. Ball, "Collaborative Filtering and Inference Rules for Context-Aware
Learning Object Recommendation", Interactive Technology and Smart Education , Vol. 2 Iss: 3, pp.179 – 188,
Agosto 2005.
11. N. Machado y A. Montoyo, "Recomendación de objetos de aprendizaje almacenados en repositorios lor@server
según las preferencias del usuario", Proceedings of the 5th WSEAS International Conference on E- ACTIVITIES,
Noviembre 2006
12 X. Ochoa y E. Duval, "Use of contextualized attention metadata for ranking and recommending learning
objects", Proceedings of the 1st international workshop on Contextualized attention metadata: collecting, managing
and exploiting of rich usage information CIKM 2006, pp. 9-16, Noviembre 2006.
13 K. Verbert, N. Manouselis, X. Ochoa, M. Wolpers, H. Drachsler, I. Bosnic y E. Duval, "Context-aware
Recommender Systems for Learning: a Survey and Future Challenges", IEEE Transactions on Learning
Technologies Vol. 99, Abril 2012
14. M. Friedrich, K. Niemann, M. Scheffel, H. Schmitz y M. Wolpers, "Object Recommendation based on Usage
Context", Workshop about Context-aware Recommendation for Learning at the STELLAR Alpine Rendez-Vous,
2009.

Documentos relacionados