Download - PLANTEAMIENTO DE UN SISTEMA RECOMENDADOR …
PLANTEAMIENTO DE UN SISTEMA RECOMENDADOR BASADO EN
CONTENIDO Y COLABORATIVO PARA LA ELECCIÓN DE LIBROS
XENIA VIVIANA CADENA DÍAZ
NELSON ARLEY CARANTÓN GALEANO
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS
FACULTAD DE INGENIERÍA
ESPECIALIZACIÓN EN INGENIERÍA DE SOFTWARE
BOGOTA D.C.
2017
PLANTEAMIENTO DE UN SISTEMA RECOMENDADOR BASADO EN
CONTENIDO Y COLABORATIVO PARA LA ELECCIÓN DE LIBROS
XENIA VIVIANA CADENA DÍAZ
20171099004
NELSON ARLEY CARANTÓN GALEANO
20171099005
ANTEPROYECTO
ROBERTO FERRO
Director
JORGE MARIO CALVO
Revisor
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS
FACULTAD DE INGENIERÍA
ESPECIALIZACIÓN EN INGENIERÍA DE SOFTWARE
BOGOTA D.C.
2017
AGRADECIMIENTOS
A nuestros padres quienes con su paciencia nos ayudaron a llevar el proceso de la
especialización.
A nuestro director quien a pesar de su agenda ocupada nos dedicó tiempo y nos guio en el
proceso de este proyecto.
A nuestro revisor quien con su conocimiento nos hizo todas las correcciones pertinentes
para dejar este libro de la mejor manera posible.
A nuestros compañeros de clase quienes nos hicieron todos los comentarios oportunos con
respecto a su perspectiva y pudimos pulir mucho más el libro de este proyecto.
A la Universidad Distrital Francisco José de Caldas que nos brindó la oportunidad de hacer
esta especialización que nos enriqueció en conocimiento y nuevos amigos.
CONTENIDO
RESUMEN ........................................................................................................................................ 13
INTRODUCCIÓN ............................................................................................................................ 14
1. ESTUDIO DEL PROBLEMA DE INVESTIGACIÓN ............................................................ 16
1.1 PLANTEAMIENTO DEL PROBLEMA .......................................................................... 16
1.2 FORMULACIÓN DEL PROBLEMA .............................................................................. 17
1.3 SISTEMATIZACIÓN DEL PROBLEMA ........................................................................ 17
2. JUSTIFICACIÓN...................................................................................................................... 18
2.1 JUSTIFICACIÓN PRÁCTICA ............................................................................................. 18
3. HIPÓTESIS DE TRABAJO ...................................................................................................... 19
4. OBJETIVOS ............................................................................................................................. 20
4.1 OBJETIVO GENERAL .................................................................................................... 20
4.2 OBJETIVOS ESPECÍFICOS ............................................................................................ 20
5. MARCO REFERENCIAL .................................................................................................... 21
5.1 ESTADO DEL ARTE ........................................................................................................ 21
5.1.1 El templo de las mil puertas ...................................................................................... 21
5.1.2 Qué libro leo .............................................................................................................. 21
5.1.3 Ebrolis ....................................................................................................................... 21
5.1.4 Boolino ...................................................................................................................... 22
5.1.5 Roca Libros ............................................................................................................... 22
5.1.6 Tú que lees ................................................................................................................ 22
5.1.7 BookSeer ................................................................................................................... 22
5.2 MARCO TEÓRICO .......................................................................................................... 23
5.2.1 Sistema Recomendador ................................................................................................. 23
6. RESULTADOS.......................................................................................................................... 25
6.1 PLANEACIÓN DE FASES DEL PROYECTO ................................................................ 25
6.1.1 Fase de Diseño y Desarrollo ...................................................................................... 25
6.1.2 Fase de Pruebas del Sistema Recomendador ............................................................ 27
6.1.3 Fase de Cierre ............................................................................................................ 28
6.2 DISEÑO MÉTRICA PARA EL SISTEMA RECOMENDADOR .................................... 29
6.2.1 Planteamiento Inicial de Sistema Recomendador ..................................................... 29
6.2.2 Entradas del Sistema Recomendador ........................................................................ 30
6.2.3 Salidas del Sistema Recomendador ........................................................................... 32
6.2.4 Métrica Propuesta ...................................................................................................... 32
6.2.4.1 Método Híbrido ......................................................................................................... 32
6.2.4.2 Método Colaborativo ................................................................................................. 34
6.2.4.3 Método Basado en Contenido ................................................................................... 35
6.2.5 Retroalimentación ..................................................................................................... 37
6.2.6 Grado de Personalización .......................................................................................... 38
6.2.7 Diseño de encuestas para determinación de pesos iniciales ...................................... 39
6.2.8 Implementación e interpretación de datos encuestas................................................. 41
6.3 DISEÑO Y DESARROLLO DE PERSISTENCIA DE DATOS ...................................... 44
6.3.1 Diseño Cadena Lógica de Negocio ........................................................................... 44
6.3.2 Construcción de Tablas – Modelo DF ....................................................................... 46
................................................................................................................................................... 46
6.3.3 Diseño Diagrama Base de Datos ............................................................................... 47
6.4 DESARROLLO DEL MODULO RECOMENDADOR ................................................... 49
6.5 PRUEBAS SISTEMA RECOMENDADOR .................................................................... 52
6.5.1 Pruebas con usuarios ................................................................................................. 52
6.5.2 Encuesta de resultados .............................................................................................. 62
6.5.3 Implementación e Interpretación de encuestas .......................................................... 64
6.5.4 Resultado de la retroalimentación del sistema .......................................................... 68
6.5.5 Verificación de preguntas de investigación ............................................................... 73
6.5.5.1 Primera Pregunta de Investigación ............................................................................ 73
6.5.5.2 Segunda Pregunta de Investigación ........................................................................... 73
6.5.5.3 Tercera Pregunta de Investigación............................................................................. 73
6.5.6 Verificación de objetivos ........................................................................................... 74
6.5.7 Verificación de hipótesis ........................................................................................... 74
7. CONCLUSIONES .................................................................................................................... 75
8. RABAJOS FUTUROS .............................................................................................................. 76
8.1 SISTEMA CON MAYOR GRADO DE PERSONALIZACIÓN .......................................... 76
8.2 SISTEMA GAMIFICADO ............................................................................................... 76
8.3 PLATAFORMA WEB ............................................................................................................. 77
8.3 PLATAFORMA MOVIL ................................................................................................... 77
9. BIBLIOGRAFÍA ....................................................................................................................... 78
9.1 BIBLIOGRAFÍA WEB ........................................................................................................... 80
LISTA DE FIGURAS
Figura 1. Fases del proyecto (Autores) ............................................................................ 25
Figura 2. Fase de Diseño y Desarrollo (Autores) ............................................................. 25
Figura 3. Subfase de Diseño Métrica para el Sistema Recomendador (Autores) ............. 26
Figura 4. Subfase de Diseño y Desarrollo de Persistencia de Datos (Autores) ................ 26
Figura 5. Subfase de Diseño y Desarrollo de Módulo Recomendador (Autores) .............. 27
Figura 6. Fase de Pruebas de sistema recomendador (Autores) ..................................... 27
Figura 7. Fase de cierre (Autores) ................................................................................... 28
Figura 8. Sistema Recomendador Planteado (Autores) ................................................... 30
Figura 9. Encabezado encuesta (Autores) ....................................................................... 39
Figura 10. Preguntas encuesta (Autores)......................................................................... 40
Figura 11. Resultados Pregunta Opcional encuesta inicial (Autores) .............................. 42
Figura 12. Cadena Lógica de Negocio del Sistema CLNS Base de Datos (Autores) ....... 45
Figura 13. Diagrama Relacional BD (Autores) ................................................................. 48
Figura 14. Estructura MVC de sistema recomendador 1 (Autores) .................................. 49
Figura 15. Estructura MVC de sistema recomendador 2 (Autores) .................................. 50
Figura 16. Ejemplo de recomendación generada por el sistema (Autores) ...................... 51
Figura 17. Ejemplo de retroalimentación generada en el sistema (Autores) ..................... 51
Figura 18. Encabezado encuesta de resultados (Autores) ............................................... 62
Figura 19. Preguntas de satisfacción encuesta de resultados (Autores) .......................... 63
Figura 20. Pregunta de opinión encuesta de resultados (Autores) ................................... 64
Figura 21. Evidencia de finalización de encuesta de resultados (Autores) ....................... 65
Figura 22. Interacción Gamificación Sistema (Autores) .................................................... 77
LISTA DE TABLAS
Tabla 1. Estructura de Libro (Autores) .............................................................................. 31
Tabla 2. Estructura Perfil Lector (Autores) ........................................................................ 31
Tabla 3. Estructura Recomendación (Autores) ................................................................. 32
Tabla 4. Valor de USum dep. De la Calificación (Autores) ................................................ 37
Tabla 5. Usuario de prueba 1 (Autores) ........................................................................... 52
Tabla 6. Usuario de prueba 2 (Autores) ........................................................................... 53
Tabla 7. Usuario de prueba 3 (Autores) ........................................................................... 53
Tabla 8. Usuario de prueba 4 (Autores) ........................................................................... 54
Tabla 9. Usuario de prueba 5 (Autores) ........................................................................... 54
Tabla 10. Usuario de prueba 6 (Autores).......................................................................... 55
Tabla 11. Usuario de prueba 7 (Autores) .......................................................................... 55
Tabla 12. Usuario de prueba 8 (Autores).......................................................................... 56
Tabla 13. Usuario de prueba 9 (Autores).......................................................................... 56
Tabla 14. Usuario de prueba 10 (Autores) ........................................................................ 57
Tabla 15. Usuario de prueba 11 (Autores) ........................................................................ 57
Tabla 16. Usuario de prueba 12 (Autores) ........................................................................ 58
Tabla 17. Usuario de prueba 13 (Autores) ........................................................................ 58
Tabla 18. Usuario de prueba 14 (Autores) ........................................................................ 59
Tabla 19. Usuario de prueba 15 (Autores) ........................................................................ 59
Tabla 20. Usuario de prueba 16 (Autores) ........................................................................ 60
Tabla 21. Usuario de prueba 17 (Autores) ........................................................................ 60
Tabla 22. Usuario de prueba 18 (Autores) ........................................................................ 61
Tabla 23. Usuario de prueba 19 (Autores) ........................................................................ 61
Tabla 24. Usuario de prueba 20 (Autores) ........................................................................ 62
Tabla 25. Resultado de Pesos por Tipo de Recomendación (Autores) ............................. 68
Tabla 26. Resultado de Pesos Recomendación Colaborativa (Autores) ........................... 69
Tabla 27. Resultado de Pesos Recomendación Basada en Contenido (Autores) ............. 70
Tabla 28. Calificación de Satisfacción por Recomendación (Autores) .............................. 71
LISTA DE GRÁFICAS
Gráfica 1. Resultados Pregunta 1 encuesta inicial (Autores) ............................................ 41
Gráfica 2. Resultados Pregunta 2 encuesta inicial (Autores) ............................................ 41
Gráfica 3. Resultados Pregunta 3 encuesta inicial (Autores) ............................................ 42
Gráfica 4. Resultados Primera Recomendación (Autores) ............................................... 65
Gráfica 5. Resultados Segunda Recomendación (Autores) ............................................. 66
Gráfica 6. Resultados Tercera Recomendación (Autores) ................................................ 66
Gráfica 7. Resultados Cuarta Recomendación (Autores) ................................................. 67
Gráfica 8. Resultados Quinta Recomendación (Autores) ................................................. 67
Gráfica 9. Resultados Pregunta de Opinión (Autores)...................................................... 68
Gráfica 10. Resultado de Pesos por Tipo de Recomendación (Autores) .......................... 69
Gráfica 11. Resultado de Pesos Recomendación Colaborativa (Autores) ........................ 70
Gráfica 12. Resultado de Pesos Recomendación Basada en Contenido (Autores) .......... 71
Gráfica 13. Calificación de Satisfacción por Recomendación (Autores) ........................... 72
13
RESUMEN
El proyecto presentado en este libro, contiene el planteamiento de un sistema recomendador
basado en contenido (recomendación con los atributos de los libros que ya leyó el usuario)
y colaborativo (recomendación con los atributos de los usuarios con perfiles similares a los
del usuario que solicita la recomendación), mediante el planteamiento de un algoritmo
basado en los pesos de los atributos; se plantea que el peso de los atributos por los cuales se
realiza la recomendación de libros, son importantes para poder generar un mejor resultado.
Inicia con el planteamiento de ecuaciones que distribuyen el peso del 100% entre la
recomendación colaborativa y la basada en contenido; luego de esto se redistribuye el peso
de cada tipo de recomendación entre los atributos que posee cada una.
Después de realizado el prototipo del sistema se buscaron 20 usuarios para realizar las
pruebas iniciales del sistema, a los cuales se les realizaron 5 recomendaciones a cada uno,
la primera se realiza otorgándole a cada tipo de recomendación el 50% de peso y así mismo
dividido en partes iguales a los atributos de cada recomendación. La segunda
recomendación se realizó con los pesos obtenidos en una encuesta realizada inicialmente a
100 usuarios de los cuales 60 contestaron y con los que se generaron pesos iniciales. Las
otras tres recomendaciones se realizaron con la retroalimentación obtenida de la
recomendación anterior.
Para poder determinar los resultados ser realizaron encuestas a los 20 usuarios, con las que
se concluyó que el peso de cada atributo si varía con cada recomendación y que además
estos si son importantes para que al usuario se le genere la recomendación que mejor se
adecúe a sus gusto.
14
INTRODUCCIÓN
Con el pasar de los años, el mundo Web ha presentado un crecimiento exponencial
hablando de sitios, documentos Web y el uso del internet. Es por esto que el manejo de la
gran cantidad de información que existe en este mundo, es cada vez más complicado, sobre
todo a la hora de buscar información. Es aquí donde han ido consolidándose herramientas
que ayudan a disminuir la sobrecarga de información; entre estas herramientas existen los
SR (Sistemas Recomendadores), los cuales filtran los ítems de la información a partir de
técnicas que identifican los principales atributos que más se acomodan a las preferencias de
los usuarios, recomendaciones que se generan a partir de gustos de otros usuarios o del
contenido de la información [1].
La estructura de estos sistemas, plantea que deben tener unas entradas y unas salidas, debe
manejar un método (basado en contenido y colaborativos) [2][3] que genere las
recomendaciones (salidas) y un grado de personalización (no personalizados,
personalización efímera y personalización persistente). Cabe destacar que los métodos no
son excluyentes y se pueden usar en el mismo sistema para generar recomendaciones [4].
Existen una gran variedad de SR en el mundo Web, Netflix por ejemplo le brinda al usuario
recomendaciones de series o películas a partir del contenido al que ya haya accedido
anteriormente el mismo usuario, método basado en contenido. Tinder por ejemplo
recomienda a sus usuarios usando el método colaborativo, recomendando posibles parejas
basado en el perfil del usuario. Pero no hay que quedarse ahí, sistemas como el buscador de
Google implementan un SR híbrido para arrojar el mejor resultado en la búsqueda, cuando
busca el contenido de las páginas web basándose en la búsqueda y para clasificar esos
resultados según la geolocalización de la persona que realiza la consulta [5]. También
existen SR como Waze que se apoyan de los recorridos hechos por otros usuarios en tiempo
real para recomendar la ruta óptima para llegar al destino.
15
El objetivo principal en este proyecto es el planteamiento de un Sistema Recomendador
basado en contenido y colaborativo para generarle al usuario la mejor recomendación de
libros para su próxima lectura. Se quiere que el sistema implemente un híbrido con los
métodos de recomendación ya mencionados y para esto se planteará una métrica basada en
pesos asignados a los atributos de los libros y los usuarios con los que se generará la
recomendación y retroalimentará la métrica del sistema cada vez que se genere.
16
1. ESTUDIO DEL PROBLEMA DE INVESTIGACIÓN
1.1 PLANTEAMIENTO DEL PROBLEMA
Un “sistema recomendador” analiza y procesa información histórica de los usuarios (edad,
compras previas, calificaciones…), de los productos o de los contenidos (marcas, modelos,
precios, contenidos similares…) y la transforma en conocimiento accionable, es
decir, predice qué producto puede ser interesante para el usuario y para la empresa. Los
recomendadores, además, tienen cierto nivel de autonomía a la hora de presentar las
recomendaciones al usuario final. Estos sistemas se han hecho muy populares en los
últimos años. Entre los ámbitos más extendidos se encuentran las recomendaciones de
productos en tiendas online, películas, vídeos, música, libros, productos o recomendaciones
de perfiles a los que seguir en redes sociales.
Existen sistemas recomendadores de libros que le indican al usuario los libros que podría
leer, basado en calificaciones de otras personas; esto genera un problema, las calificaciones
no siempre representan lo que el usuario quiere y además podrían presentarse
ambigüedades a la hora de generar una recomendación. También existen sistemas que
recomiendan a partir de las características de los libros y las escogencias anteriores de sus
usuarios dándole un peso similar a todas las características mencionadas; pero todo esto si
compras libros desde su tienda. No existen sistemas populares que recomienden libros
basados en más características y que además le dé prioridad a determinadas características
dependiendo de resultados anteriores. Hasta el momento no se ha encontrado una
aplicación que tenga en cuenta el historial de lecturas del usuario y que además combine
estas características con el historial de perfiles similares a los del usuario; pero esto no es
todo, las aplicaciones actuales no retroalimentas su método, por lo que si se equivocan en
su recomendación lo seguirán haciendo porque no aprenderán de las recomendaciones
anteriores.
17
Es decir, un sistema recomendador de libros que no recomiende con base a un historial de
lectura, perfiles similares, calificaciones y que además se retroalimente para mejorar con
cada recomendación; puede llevar a generar la recomendación más cercana a los gustos del
usuario.
1.2 FORMULACIÓN DEL PROBLEMA
¿Cómo recomendar a un usuario la mejor opción de libro a leer y que a su vez esta
recomendación ayude a retroalimentar el sistema?
1.3 SISTEMATIZACIÓN DEL PROBLEMA
- ¿Cuál es el mejor algoritmo de recomendación para un sistema que recomiende libros?
- ¿Qué método es útil para que el sistema recomendador aumente su exactitud con
respecto a los gustos del usuario?
- ¿Cuáles son los atributos que más pesos deben tener a la hora de generar una
recomendación de libros?
18
2. JUSTIFICACIÓN
2.1 JUSTIFICACIÓN PRÁCTICA
Algunas personas toman la iniciativa de empezar a leer un libro ya sea por investigar o por
entretenimiento, pero se les presenta el problema más común para el mundo de los lectores
¿Qué libro leer? Existen herramientas que basadas en calificaciones de otros usuarios le
recomiendan a la persona el libro que podría leer, pero estas herramientas no siempre son
las más efectivas. Las calificaciones que dan otros usuarios podrían no ser iguales al
pensamiento del usuario que consulta. Además de esto, las bases de datos suelen no
aumentar su información y los resultados empiezan a repetirse.
Es por esto que es importante unir la recomendación basada en contenido junto con la
colaborativa y plantear una métrica que se retroalimente para que genere una lista de libros
recomendados basados en el historial de lecturas del usuario y el historial de otras personas
con su mismo perfil, también se presenta la necesidad retroalimentar el sistema con cada
recomendación que se genere para que el sistema actualice la importancia de cada atributo
con respecto a las anteriores.
19
3. HIPÓTESIS DE TRABAJO
Los Sistemas Recomendadores, surgen para facilitar la toma de decisiones en temas en los
que las opciones son numerosas y variadas. Estos sistemas son utilizados para indicar
información, productos, y otros ítems a los usuarios que los visitan, tratan de automatizar
aspectos de un modelo de búsqueda de información completamente distinto al tradicional
[6]. Con base a esto y lo planteado para el sistema se afirma qué:
- Un sistema recomendador basado en el historial de lectura del usuario y su perfil, es
más eficiente que aquellos que se basan en calificaciones de otros usuarios.
- El uso de pesos para cada atributo dependiendo de recomendaciones pasadas,
aproximan al sistema a generar una recomendación acertada para el usuario.
- Los algoritmos que se retroalimentan por las decisiones que toman los usuarios, son
más acertadas para arrojar recomendaciones a las personas.
20
4. OBJETIVOS
4.1 OBJETIVO GENERAL
Plantear un sistema de recomendación basado en contenido y colaborativo para facilitar la
elección de libros y facilite la retroalimentación del sistema.
4.2 OBJETIVOS ESPECÍFICOS
- Diseñar un algoritmo de recomendación basado en contenido y colaborativo con pesos
dinámicos para los atributos, que genere la recomendación que mejor se adapte al
usuario.
- Plantear un método de recomendación que se retroalimente con cada recomendación
para que con cada ejecución mejore su exactitud con respecto a los atributos del
usuario y los libros.
- Desarrollar un prototipo básico del sistema recomendador planteado para determinar si
el algoritmo planteado funciona con los usuarios escogidos para la generación de
resultados.
21
5. MARCO REFERENCIAL
5.1 ESTADO DEL ARTE
5.1.1 El templo de las mil puertas
El Templo de las Mil Puertas es una revista de literatura juvenil online, gratuita y bimestral.
El Recomendador es un test que hace una serie de preguntas para averiguar qué tipo de
libro está buscando el lector y descartar las demás opciones. El orden en que salen las
preguntas del Recomendador es aleatorio. Si se quiere hacer muchos cambios, es
recomendable empezar el test de nuevo. El Recomendador tiene una base de datos de más
de cuatrocientas reseñas. [20][20]
5.1.2 Qué libro leo
Quelibroleo.com es una web de intercambio de gustos literarios con una extensa base de
datos en la que la opinión de cada lector es importante. [21]
5.1.3 Ebrolis
Ebrolis es un servicio de email gratuito que informa sobre las mejores ofertas de libros
electrónicos. El usuario selecciona los tipos de libro que le interesan y Ebrolis le sugiere
ebooks gratis o a precio muy bajo dentro de esos géneros. Las categorías van desde
misterios hasta libros sobre negocios, pasando por historia, política, cocina y mucho más.
[22]
22
5.1.4 Boolino
Boolino blog es un espacio de actualidad donde comparten ideas y opiniones sobre temas
relacionados con la literatura infantil y la animación lectora, artículos de actualidad y
recomendaciones de libros y apps. boolino es un proyecto participativo e interactivo. [23]
5.1.5 Roca Libros
Roca Libros es una editorial que recomienda libros basado en las emociones del usuario.
Está asociada con más editoriales y con escritores nuevos. [24]
5.1.6 Tú que lees
Esta página busca una recomendación de libros a partir de los últimos libros leídos por el
usuario. [25]
5.1.7 BookSeer
Bookseer recomienda al usuario su siguiente lectura a partir del último libro leído por el
mismo autor. [26]
23
5.2 MARCO TEÓRICO
5.2.1 Sistema Recomendador
Un Sistema Recomendador SR está asociado con un conjunto de ítems I = { i1,...,in } y su
objetivo es recomendar a los usuarios ítems de I que les puedan ser de interés. Por ejemplo,
se podría diseñar un SR para la recomendación de películas; de hecho a lo largo de la
literatura hemos encontrado numerosos ejemplos de SR de películas, tales como Film-
Conseil, MovieFinder, Reel o MetaLens entre otros. En el caso de un SR para la
recuperación de documentos los ítems serían los documentos almacenados [12].
La implementación de técnicas para el desarrollo de los SR está íntimamente relacionada
con el tipo de información que se vaya a utilizar. Una primera fuente de información a tener
en cuenta es el tipo de ítems con los que vamos a trabajar. Habrá situaciones en las que
únicamente conozcamos un identificador de cada ítem. Por ejemplo en el caso de la
recomendación de películas solemos conocer únicamente el título. En otras situaciones,
dispondremos de más información sobre los ítems, a través de una serie de atributos. En el
caso de la recomendación de películas, podrían ser el año en que se hizo la película, el
género, el director, protagonistas, etc. En el caso de recuperación de documentos, la
información con la que contamos serían los términos índice usados en su representación. En
general, cuanto más sofisticada es la representación de los ítems mejor se puede desarrollar
la actividad de los SR [12].
En cualquier caso, algunos aspectos que debemos considerar sobre las recomendaciones en
el diseño de SR son [12]:
- Representación de las recomendaciones: Los contenidos de una evaluación pueden
venir dados por un único bit (recomendado o no) o por comentarios de texto sin
estructurar.
24
- Expresión de las recomendaciones: Las recomendaciones pueden ser introducidas de
forma explícita o bien de forma implícita.
- Aspectos de identificación de la fuente: Las recomendaciones pueden realizarse de
forma anónima, identificando la fuente, o bien usando un pseudónimo.
- Forma de agregar las evaluaciones: Se refiere a cómo vamos a ir agregando las
evaluaciones disponibles sobre los ítems de cara a generar las recomendaciones. Más
adelante entraremos en más detalle sobre este aspecto que es de suma importancia de
cara a clasificar los SR.
- Uso de las recomendaciones: Las recomendaciones se pueden usar de distintas formas.
Por ejemplo, se podrían mostrar los ítems en forma de lista ordenada según las
recomendaciones de cada uno, o a la hora de visualizar los ítems que se muestre
también su recomendación.
25
6. RESULTADOS
6.1 PLANEACIÓN DE FASES DEL PROYECTO
El enfoque principal en este proyecto es el diseño para la métrica de recomendación.
Seguido del prototipo con el que se probará la métrica planteada y por último la recolección
de la información para presentar los resultados del proyecto. Para esto se hizo planeación
para tres fases principales adicionales a la planeación que es la fase que se está explicando:
Diseño y Desarrollo, Pruebas
Figura 1. Fases del proyecto (Autores)
6.1.1 Fase de Diseño y Desarrollo
Esta fase comprende tres subfases que contienen el diseño de la métrica de recomendación,
diseño y desarrollo de la persistencia de datos y diseño y desarrollo del módulo
recomendador.
Figura 2. Fase de Diseño y Desarrollo (Autores)
26
La subfase de Diseño Métrica para el Sistema Recomendador es la más importante para el
proyecto, ya que es donde se plantea la forma en que el sistema va a recomendar los libros,
comprende el diseño de las encuestas para determinar valores iniciales, el análisis de la
misma y por último el planteamiento de la métrica.
Figura 3. Subfase de Diseño Métrica para el Sistema Recomendador (Autores)
La subfase de Diseño y Desarrollo de Persistencia de Datos, contiene el diseño de la base
de datos para el sistema.
Figura 4. Subfase de Diseño y Desarrollo de Persistencia de Datos (Autores)
27
La subfase de Diseño y Desarrollo de Modulo Recomendador es en la que se elabora el
prototipo con el que se probará la métrica planteada.
Figura 5. Subfase de Diseño y Desarrollo de Módulo Recomendador (Autores)
6.1.2 Fase de Pruebas del Sistema Recomendador
Esta fase comprende el proceso en el que se definen los resultados de la implementación de
la métrica con el prototipo y la aplicación a 20 usuarios.
Figura 6. Fase de Pruebas de sistema recomendador (Autores)
28
6.1.3 Fase de Cierre
Esta fase es la que se realiza después de terminar el proceso de diseño de métrica,
desarrollo de prototipo y pruebas del sistema recomendador, aquí se desarrolla la fase de
documentación y entrega del proyecto.
Figura 7. Fase de cierre (Autores)
29
6.2 DISEÑO MÉTRICA PARA EL SISTEMA RECOMENDADOR
Los sistemas de recomendación ayudan a filtrar información de interés para los usuarios,
información como noticias, páginas web, música, películas, libros entre otros. Por lo tanto
requieren procesos de entrada y salida, trabajan con un método (basado en contenido o
colaborativo o ambos) [2][3] los cuales generan las recomendaciones es decir salidas y todo
mediante un grado de personalización:
i. No personalizados
ii. Personalización efímera
iii. Personalización persistente
Este grado de personalización define que tan enfocado está el sistema recomendador en
cada usuario, algo como un grado 1, 2 o 3 el más alto. Además de todo esto los métodos
mencionados no son excluyentes y por eso se pueden usar ambos para generar
recomendaciones [4]. A continuación se realiza el planteamiento del sistema recomendador
el cual es un híbrido entre la recomendación colaborativa (recomendación a partir del perfil
de otros usuarios similares al perfil del usuario que consulta) y la basada en contenido
(recomendación a partir de las últimas lecturas del usuario). [19]
6.2.1 Planteamiento Inicial de Sistema Recomendador
Como ya se mencionó el sistema que se plantea es un híbrido entre la recomendación
basada en contenido y la recomendación colaborativa; con un grado de personalización
persistente [10] y una retroalimentación para actualizar la métrica con cada recomendación
aceptada por el usuario. La figura 8 muestra cómo se pretende plantear el sistema
recomendador. [19]
30
Figura 8. Sistema Recomendador Planteado (Autores)
6.2.2 Entradas del Sistema Recomendador
El sistema recomendador estará apoyado en dos tipos de entradas, entradas de
recomendación basada en contenido (RBC) y entradas para recomendación colaborativa
(RC).
Las entradas de la recomendación basada en contenido son los últimos 3 libros leídos por el
usuario, como requerimiento para registrarse en el sistema el usuario deberá inscribir 3
libros que ya haya leído, y si no tienen opciones para inscribir se generará recomendaciones
inicialmente con la colaborativa. Volviendo a la RBC la estructura de cada libro será la
mostrada en la tabla 1. [19]
31
Atributo Descripción
Título Título del libro.
Autor Autor del libro
Género Género literario del libro
Descripción Breve sinopsis del libro.
Donde
Encontrarlo
Esta parte está dedicada para que los usuarios informen donde consiguieron
el libro, ya sea una tienda o página web
Imagen Imagen de la portada del libro si se tiene, de lo contrario el sistema le
asignará una por defecto dependiendo del género literario.
Calificación
Esta es la calificación o puntuación generada a partir de las personas que ya
leyeron el libro, se divide así:
- No me gustó
- Ni me gustó ni me disgustó
- Me gustó
- Lo recomiendo
- De mis favoritos
Comentarios Comentario(s) de personas que ya hayan leído el libro.
Tabla 1. Estructura de Libro (Autores)
Para la recomendación colaborativa RC la entrada es el perfil del usuario que solicita la
recomendación, la estructura del perfil del lector se muestra en la tabla 2.
Atributo Descripción
Nombre Nombre Completo del usuario
Año
Nacimiento Fecha de nacimiento del usuario
País de
Nacimiento País en que nació el usuario
País de
Residencia País donde vive actualmente el usuario.
Sexo Femenino / Masculino / Otro
Nivel
Educativo Primaria, Bachillerato, Pregrado, Especialización, Maestría, Doctorado.
Estado Civil Estado Civil del usuario
Géneros de
Interés
Son los temas de interés que el usuario tiene sobre las lecturas,
relacionados con los géneros literarios.
Puntaje
Lector
Este campo se pretende usar para trabajos futuros, es el puntaje de
acciones realizadas en el sistema por parte del usuario.
Libros Leídos Lista de libros que ya ha leído el usuario
Libros por
leer
Listado de libros por leer que el usuario agregó a la hora de solicitar
recomendaciones, los cuales tienen la misma estructura de los libros
seleccionados en la recomendación.
Tabla 2. Estructura Perfil Lector (Autores)
32
6.2.3 Salidas del Sistema Recomendador
Las salida del sistema recomendador es una lista ordenad por ponderación de los libros
recomendados por el sistema, cada libro además de mostrar la información de cada uno,
tendrá asociado una estructura la cual será temporal. Esta estructura se muestra en la tabla
3. [19]
Atributo Descripción Título Atributo único del libro
Ponderación Calificación generada por el sistema a la hora de realizar la recomendación.
Característica
General Define si el libro fue seleccionado por RBC, por RC o por ambas.
Característica
Específica Listado de los atributos por los cuales el libro fue recomendado.
Leído
Característica dedicada al usuario el cual podrá definir si el libro que se le
recomienda ya lo leyó para que sea guardado en su lista de leídos y el usuario
pueda darle una calificación.
Por Leer Característica dedicada al usuario el cual guarda el libro en la lista de libros por
leer del usuario.
Calificación Característica que el usuario genera cuando selecciona la opción de leído.
Tabla 3. Estructura Recomendación (Autores)
6.2.4 Métrica Propuesta
Como se mencionó anteriormente, el planteamiento de este sistema propone usar los dos
tipos de recomendación ya dichos, la recomendación basada en contenido que se enfoca en
las preferencias del usuario activo y los atributos de los ítems a recomendar; y el
colaborativo que usa la información conocida sobre las preferencias de otros usuarios para
realizar la recomendación al usuario que la solicita. [13]
6.2.4.1 Método Híbrido
El método híbrido es la unión de ambos métodos para mostrar resultados al usuario. Se
propone asignar una ponderación a cada tipo de recomendación y la unión de las dos dará el
100% del sistema recomendador o sistema híbrido. La máxima ponderación para cada
método se calculará de la siguiente forma:
33
𝑃𝑇𝐶 = 𝑃𝑅𝐵𝐶 + 𝑃𝑅𝐶 (1)
𝑃𝑅𝐵𝐶 = 𝑁𝑆𝑅𝐵𝐶 ∗ 𝑃𝑇𝐶
𝑁𝑆𝑇𝑜𝑡 (2)
𝑃𝑅𝐶 = 𝑁𝑆𝑅𝐶 ∗ 𝑃𝑇𝐶
𝑁𝑆𝑇𝑜𝑡 (3)
𝑁𝑆𝑇𝑜𝑡 = 𝑁𝑆𝑅𝐵𝐶 + 𝑁𝑆𝑅𝐶 (4)
En donde:
PTC: Puntuación ponderada máxima, la cual será 100
PRBC: Puntuación Máxima de Recomendación basada en contenido.
PRC: Puntuación Máxima de Recomendación Colaborativa.
Cabe destacar que los valores de PRBC y PRC deben ser enteros, por lo que se realizará
una aproximación en su cálculo para eliminar decimales. [19]
𝑁𝑆𝑇𝑜𝑡: 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑠𝑒𝑙𝑒𝑐𝑐𝑖𝑜𝑛𝑒𝑠 𝑡𝑜𝑡𝑎𝑙𝑒𝑠
𝑁𝑆𝑅𝐵𝐶: 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑠𝑒𝑙𝑒𝑐𝑐𝑖𝑜𝑛𝑒𝑠 𝑝𝑎𝑟𝑎 𝑅𝐵𝐶
𝑁𝑆𝑅𝐶: 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑠𝑒𝑙𝑒𝑐𝑐𝑖𝑜𝑛𝑒𝑠 𝑝𝑎𝑟𝑎 𝑅𝐶
Esta ponderación calculada para cada método pasará a ser el 100% sobre el cual se realizará
el cálculo del peso de cada atributo del método de recomendación. Si hay libros
recomendados que estén en las dos listas entonces se suma la ponderación que tenga en
ambas selecciones y se deja un solo registro. Finalmente se ordena de mayor a menor por la
ponderación de cada libro y esta es la lista que se muestra al usuario. [19]
NOTA: Para el comienzo de la aplicación se realizará una encuesta para determinar la
puntuación máxima de cada método y el peso inicial de cada atributo el cual será cambiante
dependiendo de las elecciones de los usuarios.
34
6.2.4.2 Método Colaborativo
En el método Colaborativo se buscan dentro de los usuarios perfiles similares al del usuario
que realiza la solicitud. Para esto primero se traen todos los perfiles que tengan al menos un
atributo en común con el usuario activo. Las características que se buscan son [19]:
- Edad
- País de nacimiento
- País de residencia
- Año de nacimiento
- Sexo
- Nivel Educativo
- Estado Civil
- Géneros de interés
Primero se calcula el peso de cada atributo para así generar la ponderación de cada uno y su
sumatoria. Para esto se parte de los valores que se tenían anteriormente en el método
híbrido [19]:
𝑁𝑆𝑅𝐶: 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑠𝑒𝑙𝑒𝑐𝑐𝑖𝑜𝑛𝑒𝑠 𝑝𝑎𝑟𝑎 𝑅𝐶
PRC: Puntuación Máxima de Recomendación Colaborativa.
Con estos valores se generan los siguientes cálculos:
%𝑃𝐴𝑡𝑟𝑖𝑏 =𝑁𝑆𝐴𝑡𝑟𝑖𝑏 ∗ 1
𝑁𝑆𝑅𝐶 (5)
𝑃𝐴𝑡𝑟𝑖𝑏 = %𝑃𝐴𝑡𝑟𝑖𝑏 ∗ 𝑃𝑅𝐶
100 (6)
En donde:
%𝑃𝐴𝑡𝑟𝑖𝑏 ∶ 𝑃𝑜𝑟𝑐𝑒𝑛𝑡𝑎𝑗𝑒 𝑑𝑒 𝑝𝑒𝑠𝑜 𝑑𝑒𝑙 𝑎𝑡𝑟𝑖𝑏𝑢𝑡𝑜
𝑃𝐴𝑡𝑟𝑖𝑏 ∶ 𝑃𝑒𝑠𝑜 𝑑𝑒𝑙 𝑎𝑡𝑟𝑖𝑏𝑢𝑡𝑜
35
Este peso es el que se le da a cada atributo y se suman para tener la ponderación. Pero
existen atributos que además de tener un peso se debe calcular el subpeso ya que el perfil
puede tener más de uno en el atributo, es el caso para “géneros de interés” el peso del
atributo que se calculó anteriormente es para la totalidad del atributo. Entonces se debe
calcular un subpeso mostrado en la ecuación 7 [19]:
𝑆𝑏𝑝𝐴𝑡𝑟𝑖𝑏 = 𝑃𝐴𝑡𝑟𝑖𝑏
𝑁𝐼𝐴𝑡𝑟𝑖𝑏 (7)
En donde:
𝑆𝑏𝑝𝐴𝑡𝑟𝑖𝑏: 𝑆𝑢𝑏𝑝𝑒𝑠𝑜 𝑑𝑒𝑙 𝑎𝑡𝑟𝑖𝑏𝑢𝑡𝑜
𝑁𝐼𝐴𝑡𝑟𝑖𝑏: 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑖𝑡𝑒𝑚𝑠 𝑑𝑒𝑙 𝑎𝑡𝑟𝑖𝑏𝑢𝑡𝑜
Así pues para las áreas profesionales 𝑁𝐼𝐴𝑡𝑟𝑖𝑏 es el número de géneros de interés del perfil
del usuario activo. Luego de tener el ponderado de cada atributo se suman los pesos de cada
atributo en común encontrado con el perfil del usuario activo. Con esto se tienen los
ponderados de cada perfil y se ordena de mayor a menor, pero se necesitan es libros, por lo
que se seleccionan de la lista de libros leídos de cada perfil los 5 libros con mejor
calificación y que no haya leído el usuario activo y se les da como ponderación la que se le
dio al perfil. [19]
6.2.4.3 Método Basado en Contenido
El método basado en contenido busca coincidencias con los atributos de los libros respecto
a los últimos 10 libros con mejor calificación que haya leído el usuario activo. Los atributos
por los que se busca coincidencia son:
- Autor
- Género
- Año de nacimiento del autor
36
Primero toca calcular el peso de cada atributo para así generar la ponderación de cada uno y
su sumatoria. Para esto se parte de los valores que se tenían anteriormente en el método
híbrido [19]:
𝑁𝑆𝑅𝐵𝐶: 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑠𝑒𝑙𝑒𝑐𝑐𝑖𝑜𝑛𝑒𝑠 𝑝𝑎𝑟𝑎 𝑅𝐵𝐶
PRBC: Puntuación Máxima de Recomendación Basada en Contenido.
Con estos valores se generan los siguientes cálculos:
%𝑃𝐴𝑡𝑟𝑖𝑏 =𝑁𝑆𝐴𝑡𝑟𝑖𝑏 ∗ 1
𝑁𝑆𝑅𝐵𝐶 (8)
𝑃𝐴𝑡𝑟𝑖𝑏 = %𝑃𝐴𝑡𝑟𝑖𝑏 ∗ 𝑃𝑅𝐵𝐶
100 (9)
En donde:
%𝑃𝐴𝑡𝑟𝑖𝑏 ∶ 𝑃𝑜𝑟𝑐𝑒𝑛𝑡𝑎𝑗𝑒 𝑑𝑒 𝑝𝑒𝑠𝑜 𝑑𝑒𝑙 𝑎𝑡𝑟𝑖𝑏𝑢𝑡𝑜
𝑃𝐴𝑡𝑟𝑖𝑏 ∶ 𝑃𝑒𝑠𝑜 𝑑𝑒𝑙 𝑎𝑡𝑟𝑖𝑏𝑢𝑡𝑜
Para el subpeso del atributo “Género” se realiza el mismo cálculo de la ecuación 7 y así
obtener el subpeso de cada género del conjunto de los 10 libros leídos por el usuario activo.
𝑆𝑏𝑝𝐴𝑡𝑟𝑖𝑏 = 𝑃𝐴𝑡𝑟𝑖𝑏 ∗ %𝑆𝑏𝑝_𝑃𝐴𝑡𝑟𝑖𝑏
100 (10)
Con estos pesos se realiza la suma de cada atributo en común con los libros del usuario
activo y se obtendrá la ponderación de cada libro para luego ordenarla de mayor a menor
por ponderación. [19]
37
6.2.5 Retroalimentación
El usuario tendrá la opción para cada libro de decir si ya lo leyó o si lo va a leer, para cada
recomendación escogida existirá un comportamiento diferente que el sistema generará para
retroalimentar la métrica de ponderación para la recomendación de libros.
Caso 1: El usuario escogió un libro y lo seleccionó como ya leído, se realiza la siguiente
retroalimentación:
Primero le aparecerá al usuario la opción de calificar el libro y si lo desea dejar un
comentario sobre el libro. Después para el usuario quedará en su perfil el libro guardado en
la lista de libros leídos. Esto por parte del usuario, para el sistema todavía queda una tarea
más. Con la calificación se determina si la unidad a sumar 𝑈𝑆𝑢𝑚 es 1 o -1 dependiendo de
la calificación es así [19]:
Calificación Valor de 𝑼𝑺𝒖𝒎
No me gustó -1
Ni me gustó ni me disgustó 0
Me gustó 1
Lo recomiendo 1
De mis favoritos 1
Tabla 4. Valor de USum dep. De la Calificación (Autores)
Se suma 𝑼𝑺𝒖𝒎 a 𝑵𝑺𝑻𝒐𝒕
a) Si el libro seleccionado tiene como característica general RBC se sumará 𝑈𝑆𝑢𝑚 al
valor 𝑁𝑆𝑅𝐵𝐶 pero, si la característica general es RC se sumará 𝑈𝑆𝑢𝑚 al valor 𝑁𝑆𝑅𝐶
b) Si en cambio la característica general es RBC y RC entonces se le suma (2 ∗ 𝑈𝑆𝑢𝑚)
a 𝑁𝑆𝑇𝑜𝑡 y 𝑈𝑆𝑢𝑚 a 𝑁𝑆𝑅𝐵𝐶 y 𝑁𝑆𝑅𝐶
c) Luego de realizar estas sumas se vuelve a realizar el cálculo de PRBC y PRC.
Para el caso de los pesos de cada atributo se realiza la siguiente suma:
38
𝑁𝑆𝐴𝑡𝑟𝑖𝑏 = 𝑁𝑆𝐴𝑡𝑟𝑖𝑏 + 𝑈𝑆𝑢𝑚
𝑁𝐴𝐶𝑀𝑒𝑡 (11)
En donde:
𝑁𝐴𝐶𝑀𝑒𝑡: Número de atributos en común del libro para el método, ya sea RBC o RC.
Por último se procede a calcular de nuevo el peso de cada atributo 𝑃𝐴𝑡𝑟𝑖𝑏 para las siguientes
recomendaciones.
Caso 2: El usuario selecciona un libro y escoge la opción “por leer”, se realiza la siguiente
retroalimentación:
Se agrega el libro a la lista de libros por leer del usuario con las características de libro
recomendado, cuando el usuario ingrese a su perfil y determine que ya leyó el libro, se
realizarán los mismos pasos que el Caso 1 [19].
6.2.6 Grado de Personalización
Como ya se mencionó anteriormente existen 3 grados de personalización [10]:
a) Cuando los SR proporcionan las mismas recomendaciones a todos los usuarios, son
clasificados en este ámbito como no personalizados.
b) Los SR que tienen en cuenta la información actual del usuario objeto de las
recomendaciones, proporcionan personalización efímera.
c) Los SR que ofrecen el mayor grado de personalización son los que usan personalización
persistente ofreciendo recomendaciones distintas para distintos usuarios, incluso cuando
estén buscando el mismo ítem.
39
Para este sistema se determinó con base en estos conceptos, que el grado de
personalización del sistema es “Persistente”, ya que se logra una recomendación por cada
perfil de usuario y gustos, cada vez que realiza la consulta el sistema se enfoca únicamente
en el usuario activo [19].
6.2.7 Diseño de encuestas para determinación de pesos iniciales
Se diseñó una encuesta sencilla en la que se requiere saber lo que más le importa a los
usuarios para seleccionar un libro para leer. A continuación se muestra la encuesta que se
diseñó desde formularios de google.
Figura 9. Encabezado encuesta (Autores)
40
Figura 10. Preguntas encuesta (Autores)
41
6.2.8 Implementación e interpretación de datos encuestas
Se le envió la encuesta a 60 personas, de las cuales 52 contestaron la encuesta obteniendo
como resultado lo siguiente:
Gráfica 1. Resultados Pregunta 1 encuesta inicial (Autores)
Gráfica 2. Resultados Pregunta 2 encuesta inicial (Autores)
42
Gráfica 3. Resultados Pregunta 3 encuesta inicial (Autores)
Figura 11. Resultados Pregunta Opcional encuesta inicial (Autores)
43
Viendo los resultados de la encuesta se evidencia lo siguiente:
i. A los usuarios encuestados les importa más las características del libro que los
libros escogido por perfiles similares al suyo.
ii. Para la recomendación basada en contenido RBC se evidencia que lo que más le
importa al usuario es el género literario del libro, seguido en igual importancia el
autor y el título del libro.
iii. Para la recomendación colaborativa RC se escogió como característica principal los
temas o géneros de interés del usuario, seguido del nivel educativo. Se evidencia
que en ambas recomendaciones predomina el género literario del libro.
iv. Estos valores se van a tomar para valores iniciales de la métrica del sistema
recomendador.
v. Por último está la pregunta opcional hecha a los usuarios para saber si hay
características que no estemos tomando en cuenta, cada una de las opciones
recomendadas no fueron repetidas por ningún usuario, por lo que se tendrán en
cuenta para trabajos futuros del sistema recomendador.
44
6.3 DISEÑO Y DESARROLLO DE PERSISTENCIA DE DATOS
El diseño de la base de datos se realizó teniendo en cuenta las siguientes entidades
principales:
Libro
Lector
Recomendación
A partir de estas entidades surgieron las demás, el diseño de la base de datos del proyecto se
evidencia a continuación.
6.3.1 Diseño Cadena Lógica de Negocio
La cadena lógica de negocio del sistema contempla lo que se va a controlar que son las
lecturas, los libros y las recomendaciones y muestra para quien se va a controlar, en este
caso es el lector.
45
Figura 12. Cadena Lógica de Negocio del Sistema CLNS Base de Datos (Autores)
46
6.3.2 Construcción de Tablas – Modelo DF
Convenciones: PK, FKD, FKP
Id_Lector, Nombre, NickName, Año_nacimiento, Pais_nacimiento,
Lector: Pais_residencia, Sexo, Nivel_Educativo, Género_Interes, Estado_Civil,
Puntaje_Lector, Password, Email
Lector_Género_Interes: Id_Lector + Id_Género_Interes
Género: Id_Género, Nombre, Descripción
País: Id_País, Nombre
Nivel_Educativo: Id_Nivel, Nombre
Estado_Civil: Id_Estado, Nombre
Id_Lectura, Libro, Lector, Fecha_Lectura, Estado,
Lectura:
Calificación, Comentario, Recomendación
47
Id_Libro, Nombre, Autor, Genero, Descripción,
Libro:
Donde_Encontrarlo, Calificación, Imagen, Num_Califi
Autor: Id_Autor, Nombre. Año_Nacimiento, Año_Muerte, Pais_Nacimiento
Recomendación: Id_Recomendación, Fecha, Libro, Ponderado
Atributo_Seleccionado: Id_Atrib_Sel, Nombre, Recomendación, Tipo_Recomendación
Tipo_Recomendación: Id_Tipo_Rec, Nombre, Puntuación, Número_Selecciones
Id_Atributo, Nombre, Tipo_Recomendación, Peso, Porcentaje,
Atributo:
Número_Hijos, Atributo_Padre, Número_Selecciones
6.3.3 Diseño Diagrama Base de Datos
A continuación se muestra el diagrama relacional que resultó después del análisis realizado
anteriormente.
48
Figura 13. Diagrama Relacional BD (Autores)
49
6.4 DESARROLLO DEL MODULO RECOMENDADOR
El sistema recomendador se desarrolló en el lenguaje de programación JAVA con el
Framework Spring; se usó la arquitectura MVC con la ayuda del framework. La estructura
de cómo quedó el sistema se ve a continuación:
Figura 14. Estructura MVC de sistema recomendador 1 (Autores)
50
Figura 15. Estructura MVC de sistema recomendador 2 (Autores)
Como se evidencia se está aplicando la arquitectura MVC ya que se está implementado por
un lado el mapeo de las entidades de las bases de datos mediante la ayuda de Spring que
usa JPA. Luego se puede observar la parte de los controladores que se encargan de conectar
los modelos con las vistas y los DAOS que se conectan con la base de datos.
No se desarrolló una interfaz gráfica por lo que todos los resultados de las recomendaciones
se obtuvieron a través de una estructura JSON en una vista HTML sin estructura alguna. En
la siguiente figura se muestra como el sistema arroja los resultados. Cabe aclarar que para
poder probar con usuarios, se ingresó manualmente la información de éstos mismos a la
base de datos directamente. Se pretende mencionar que todo esto se automatizará con la
plataforma web en los trabajos futuros del proyecto.
51
Figura 16. Ejemplo de recomendación generada por el sistema (Autores)
Para la retroalimentación del sistema se muestra la siguiente imagen, que indica que los
pesos se han actualizado con la recomendación que el usuario escogió:
Figura 17. Ejemplo de retroalimentación generada en el sistema (Autores)
52
6.5 PRUEBAS SISTEMA RECOMENDADOR
6.5.1 Pruebas con usuarios
Después de realizado el prototipo del sistema recomendador se aplicó a 20 personas para
poder ver el resultado del recomendador y el comportamiento del peso de los atributos
conforme se retroalimenta el sistema por cada recomendación realizada a los usuarios. Se
realizaron 5 recomendaciones a cada usuario y luego de que el usuario leyó la sinopsis y el
primer capítulo de cada libro, realizaron una calificación del libro y su apreciación con
respecto a la recomendación realizada. La primera recomendación se realizó con pesos
distribuidos equitativamente, es decir 50% para recomendación basada en contenido y 50%
para recomendación colaborativa. La segunda recomendación se realizó con los pesos
obtenidos en las encuestas realizadas a usuarios y su parecer con respecto a la importancia
de cada atributo. Las recomendaciones tercera, cuarta y quinta se hicieron con los pesos que
resultaron después de cada retroalimentación generada por las recomendaciones anteriores.
Los 20 usuarios a los que se les realizaron las 5 recomendaciones y sus perfiles son los
siguientes:
Atributo Valor
Nombre Alejandra Usme
Año Nacimiento 1997
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Pregrado
Estado Civil Soltera
Géneros de Interés Romántica, Erótica, Histórica
Libro Leído 1 Reportaje de la historia de Colombia – Jorge Orlando Melo
Libro Leído 2 Los Asesinos del Emperador – Santiago Posteguillo
Libro Leído 3 50 Sombras de Grey – E. L. James
Libro Recomendado 1 La traición de Roma – Santiago Posteguillo
Libro Recomendado 2 50 Sombras más oscuras – E. L. James
Libro Recomendado 3 50 Sombras Liberadas – E. L. James
Libro Recomendado 4 El Rey del Invierno – Bernard Cornwell
Libro Recomendado 5 María – Jorge Isaacs Tabla 5. Usuario de prueba 1 (Autores)
53
Atributo Valor
Nombre Andrés Ricardo Barreto
Año Nacimiento 1992
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Soltero
Géneros de Interés Acción y Aventura, Policial, Ciencia Ficción, Terror
Libro Leído 1 El Libro de los Muertos – Douglas Preston
Libro Leído 2 La Historia Interminable – Michael Ende
Libro Leído 3 El Pintor Maldito – Peter Harris
Libro Recomendado 1 La Biblia de Los Caídos – Fernando Trujillo
Libro Recomendado 2 Fin de Guardia – Stephen King
Libro Recomendado 3 Cuentos Completos – Edgar Allan Poe
Libro Recomendado 4 El gato negro – Edgar Allan Poe
Libro Recomendado 5 El Símbolo Perdido – Dan Brown Tabla 6. Usuario de prueba 2 (Autores)
Atributo Valor
Nombre Andrés Camilo Santana
Año Nacimiento 1993
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Casado
Géneros de Interés Policial, Acción y Aventura, Biográfica
Libro Leído 1 Opio en las Nubes - Rafael Chaparro Madiedo
Libro Leído 2 Origen – Dan Brown
Libro Leído 3 Steve Jobs – Walter Isaacson
Libro Recomendado 1 Muerte Helada – Ian Rankin
Libro Recomendado 2 Steve Jobs – Walter Isaacs
Libro Recomendado 3 El diario de Ana Frank – Ana Frank
Libro Recomendado 4 Aguas Peligrosas – Bernard Cornwell
Libro Recomendado 5 Inferno – Dan Brown Tabla 7. Usuario de prueba 3 (Autores)
54
Atributo Valor
Nombre Antonio Álvarez
Año Nacimiento 1995
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Especialización
Estado Civil Soltero
Géneros de Interés Ficción, Histórica, Novela
Libro Leído 1 2001 Odisea en el espacio – Stanley Kubrick
Libro Leído 2 Sherlock Holmes – Arthur Conan Doyle
Libro Leído 3 100 años de soledad – Gabriel García Márquez
Libro Recomendado 1 La Plaga –Jeff Carlson
Libro Recomendado 2 Crónicas Marcianas TD – Ray Bradbury
Libro Recomendado 3 La vida perra de Juanita Narboni – Ángel Vázquez
Libro Recomendado 4 Juliano el apóstata – Gore Vidal
Libro Recomendado 5 La última Milla Tabla 8. Usuario de prueba 4 (Autores)
Atributo Valor
Nombre Camilo Andrés Urrego
Año Nacimiento 1993
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Soltero
Géneros de Interés Ciencia Ficción, Históricas
Libro Leído 1 Star Wars Episodio VIII – George Lucas
Libro Leído 2 Perdido en el Amazonas – Germán Castro Caycedo
Libro Leído 3 El día del Odio – José Antonio Osorio
Libro Recomendado 1 La bruja – Germán Castro Caycedo
Libro Recomendado 2 Mi alma se la dejo al diablo Germán Castro Caycedo
Libro Recomendado 3 El camino en la sombra – José Antonio Osorio
Libro Recomendado 4 Origen – Dan Brown
Libro Recomendado 5 Opio en las Nubes - Rafael Chaparro Madiedo Tabla 9. Usuario de prueba 5 (Autores)
55
Atributo Valor
Nombre Carlos Suarez Silvestre
Año Nacimiento 1994
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Soltero
Géneros de Interés Romántica, Acción y Aventura, Terror, Novela
Libro Leído 1 La casa de los espíritus – Isabel Allende
Libro Leído 2 Opio en las nubes – Rafael Chaparro
Libro Leído 3 El Jardín Olvidado – Kare Morton
Libro Recomendado 1 El primer hombre de Roma – Colleen McCullough
Libro Recomendado 2 Juliano el apóstata – Gore Vidal
Libro Recomendado 3 Alejandro Magno – Gisbert Haefs
Libro Recomendado 4 El amor en los tiempos del cólera – Gabriel García Márquez
Libro Recomendado 5 Escrito en el Agua – Paula Hawkins Tabla 10. Usuario de prueba 6 (Autores)
Atributo Valor
Nombre Carmen Luz Díaz
Año Nacimiento 1966
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Bachillerato
Estado Civil Casada
Géneros de Interés Romántica, Ficción / Fantasía
Libro Leído 1 María – Jorge Isaacs
Libro Leído 2 Amanecer – Stephanie Meyer
Libro Leído 3 El ciclo de la Puerta de la Muerte – Margaret Weis
Libro Recomendado 1 El amor en los tiempos del cólera – Gabriel García Márquez
Libro Recomendado 2 50 Sombras de Grey – E. L. James
Libro Recomendado 3 El Símbolo Perdido – Dan Brown
Libro Recomendado 4 El código DaVinci – Dan Brown
Libro Recomendado 5 Lituma En los Andes – Mario Vargas Llosa Tabla 11. Usuario de prueba 7 (Autores)
56
Atributo Valor
Nombre Cristina Cadena
Año Nacimiento 1987
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Especialización
Estado Civil Soltera
Géneros de Interés Romántica, Cómics, Novela
Libro Leído 1 Hija de la Fortuna – Isabel Allende
Libro Leído 2 Miguel Strogoff – Julio Verne
Libro Leído 3 El código Davinci – Dan Brown
Libro Recomendado 1 María – Jorge Isaacs
Libro Recomendado 2 La vuelta al mundo en 80 días – Julio Verne
Libro Recomendado 3 La casa de los espíritus – Isabel Allende
Libro Recomendado 4 Inferno – Dan Brown
Libro Recomendado 5 El Símbolo Perdido – Dan Brown Tabla 12. Usuario de prueba 8 (Autores)
Atributo Valor
Nombre Diana Polanía Perdomo
Año Nacimiento 1992
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Especialización
Estado Civil Soltera
Géneros de Interés Thriller, Acción y Aventura, Periodismo, Ensayo
Libro Leído 1 Operación Masacre – Rodolfo Walsh
Libro Leído 2 La guerra moderna – Martín Caparrós
Libro Leído 3 Dios es redondo – Juan Villoro
Libro Recomendado 1 Cultura Libre – Lawrence Lessig
Libro Recomendado 2 Memorias Líquidas – Enric Gonzáles
Libro Recomendado 3 ¿Quién mató a Rosendo? – Rodolfo Walsh
Libro Recomendado 4 Variaciones en rojo – Rodolfo Walsh
Libro Recomendado 5 El gato negro – Edgar Allan Poe Tabla 13. Usuario de prueba 9 (Autores)
57
Atributo Valor
Nombre Diego Alberto Cruz
Año Nacimiento 1993
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Soltero
Géneros de Interés Histórica, Biográfica, Ciencia Ficción
Libro Leído 1 El rey del invierno – Vernard Cornwell
Libro Leído 2 Diario de Ana Frank - Ana Frank
Libro Leído 3 El símbolo perdido – Dan Brown
Libro Recomendado 1 Inferno – Dan Brown
Libro Recomendado 2 El Asirio – Nocholas Guild
Libro Recomendado 3 La gesta del marrano – Marcos Aguinis
Libro Recomendado 4 Circo Máximo – Santiago Posteguillo
Libro Recomendado 5 Lituma en los Andes – Mario Vargas Llosa Tabla 14. Usuario de prueba 10 (Autores)
Atributo Valor
Nombre Fanny Galeano Clavijo
Año Nacimiento 1969
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Bachillerato
Estado Civil Casada
Géneros de Interés Romántica, Novela
Libro Leído 1 El amor en los tiempos de Colera – Gabriel García Márquez
Libro Leído 2 Orgullo y Prejuicio – Jane Austen
Libro Leído 3 Cumbres Borrascosas – Emily Bronte
Libro Recomendado 1 El Coronel no tiene quien le escriba – Gabriel García Márquez
Libro Recomendado 2 100 años de soledad – Gabriel García Márquez
Libro Recomendado 3 Persuación – Jane Austen
Libro Recomendado 4 Lady Susan – Jane Austen
Libro Recomendado 5 12 cuentos peregrinos – Gabriel García Márquez Tabla 15. Usuario de prueba 11 (Autores)
58
Atributo Valor
Nombre Hernán Javier Castillo
Año Nacimiento 1991
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Soltero
Géneros de Interés Ciencia Ficción, Históricas
Libro Leído 1 Los hijos de la droga – Christiane F.
Libro Leído 2 Juego de Tronos, En los Siete Reinos – George R. R. Martin
Libro Leído 3 Juego de Tronos, En el Muro – George R. R. Martin
Libro Recomendado 1 Juego de Tronos, Choque de reyes – George R. R. Martin
Libro Recomendado 2 Juego de Tronos, Festín de Cuervos – George R. R. Martin
Libro Recomendado 3 Juego de Tronos, Vientos de invierno – George R. R. Martin
Libro Recomendado 4 Los niños de la estación del Zoo – Christiane F.
Libro Recomendado 5 La Plaga – Jeff Carlson Tabla 16. Usuario de prueba 12 (Autores)
Atributo Valor
Nombre Juan Salvador Arias
Año Nacimiento 1994
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Soltero
Géneros de Interés Policial, Acción y Aventura, Ficción, Narrativa, Periodismo,
Cuentos y Relatos, Novela
Libro Leído 1 20 Leguas de viaje submarino – Julio Verne
Libro Leído 2 El padrino – Mario Puzo
Libro Leído 3 El viejo y el mar – Ernest Hemingway
Libro Recomendado 1 El símbolo perdido – Dan Brown
Libro Recomendado 2 Lituma en los Andes – Mario Vargas Llosa
Libro Recomendado 3 El águila en la nieve – Wallace Breem
Libro Recomendado 4 La última milla – David Baldacci
Libro Recomendado 5 Escrito en el agua – Paula Hawkins Tabla 17. Usuario de prueba 13 (Autores)
59
Atributo Valor
Nombre Juan Carlos Zuleta
Año Nacimiento 1989
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Casado
Géneros de Interés Ficción, Cuentos y Relatos, Narrativa, Novela,
Libro Leído 1 Odisea – Homero
Libro Leído 2 El Viejo y El Mar – Ernest Hemingway
Libro Leído 3 100 mil Leguas de Viaje Submarino – Julio Verne
Libro Recomendado 1 La isla misteriosa – Julio Verne
Libro Recomendado 2 Fiesta – Ernest Hemingway
Libro Recomendado 3 Iliada – Homero
Libro Recomendado 4 12 cuentos peregrinos – Gabriel García Márquez
Libro Recomendado 5 La Plaga – Jeff Carlson Tabla 18. Usuario de prueba 14 (Autores)
Atributo Valor
Nombre Laura Daniela Acosta
Año Nacimiento 1992
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Pregrado
Estado Civil Soltera
Géneros de Interés Policial, Acción y Aventura, Ficción, Periodismo, Cuentos,
Histórica, Erótica, Ensayo, Novela, Poesía
Libro Leído 1 Festín de Cuervos – George R.R. Martin
Libro Leído 2 Cuentos Extraños para Niños Peculiares – Ranson Riggs
Libro Leído 3 La Historia Interminable – Michael Ende
Libro Recomendado 1 El símbolo perdido – Dan Brown
Libro Recomendado 2 Danza de Dragones – George R. R. Martin
Libro Recomendado 3 El amor en los tiempos del cólera – Gabriel García Marquez
Libro Recomendado 4 La conspiración – Dan Brown
Libro Recomendado 5 Cuentos – Tomás Carrasquilla Tabla 19. Usuario de prueba 15 (Autores)
60
Atributo Valor
Nombre Laura Daniela Molina
Año Nacimiento 1994
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Bachillerato
Estado Civil Casada
Géneros de Interés Romántica, Cuentos, Periodismo
Libro Leído 1 Cuentos –Tomás Carrasquilla
Libro Leído 2 De cómo perdió sus vidas el gato – Oscar Perdomo Gamboa
Libro Leído 3 El Coronel no tiene quien le escriba – Gabriel García Márquez
Libro Recomendado 1 12 cuentos peregrinos – Gabriel García Márquez
Libro Recomendado 2 100 años de soledad – Gabriel García Márquez
Libro Recomendado 3 Ella, mi sueño y el mar – Oscar Perdomo Gamboa
Libro Recomendado 4 Memorias Líquidas – Enric Gonzáles
Libro Recomendado 5 Los ritos del agua – Eva García Sáenz Tabla 20. Usuario de prueba 16 (Autores)
Atributo Valor
Nombre Lorena Cadena
Año Nacimiento 1986
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Maestría
Estado Civil Soltera
Géneros de Interés Romántica, Acción y Aventura, Terror, Ficción, Juvenil, Novela,
Poesía
Libro Leído 1 La María – Jorge Isaacs
Libro Leído 2 100 años de soledad – Gabriel García Márquez
Libro Leído 3 El mundo de Sofía – Jostein Garder
Libro Recomendado 1 El amor en los tiempos del cólera – Gabriel García Márquez
Libro Recomendado 2 Escrito en el agua – Paula Hawkins
Libro Recomendado 3 Septiembre puede esperar – Susana Fortes
Libro Recomendado 4 Cuentos – Tomas Carrasquilla
Libro Recomendado 5 12 cuentos peregrinos – Gabriel García Márquez Tabla 21. Usuario de prueba 17 (Autores)
61
Atributo Valor
Nombre Paola Cadena
Año Nacimiento 1989
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Pregrado
Estado Civil Casada
Géneros de Interés Romántica, Novela
Libro Leído 1 Cuando el Amor Despierta – Ruth M. Lerga
Libro Leído 2 El Duque y Yo – Julia Quinn
Libro Leído 3 Sentido y Sensibilidad – Jane Austen
Libro Recomendado 1 Los ritos del agua – Eva García Sáenz
Libro Recomendado 2 Septiembre puede esperar – Susana Fortes
Libro Recomendado 3 El coronel no tiene quien le escriba – Gabriel García Márquez
Libro Recomendado 4 Nieve en Marte – Pablo Tébar
Libro Recomendado 5 Ella, mi sueño y el mar – Oscar Perdomo Gamboa Tabla 22. Usuario de prueba 18 (Autores)
Atributo Valor
Nombre Rafael Sánchez
Año Nacimiento 1992
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Masculino
Nivel Educativo Pregrado
Estado Civil Soltero
Géneros de Interés Ciencia Ficción
Libro Leído 1 Neuromancer – William Gibson
Libro Leído 2 La Guerra de los Mundos – H.G. Wells
Libro Leído 3 Ringworld – Larry Niven
Libro Recomendado 1 La Plaga – Jeff Carlson
Libro Recomendado 2 El símbolo perdido – Dan Brown
Libro Recomendado 3 Conde Cero – William Gibson
Libro Recomendado 4 La paja en el ojo de Dios – Larry Niven
Libro Recomendado 5 La máquina del tiempo – H. G. Wells Tabla 23. Usuario de prueba 19 (Autores)
62
Atributo Valor
Nombre Viviana Ortegón
Año Nacimiento 1992
País de Nacimiento Colombia
País de Residencia Colombia
Sexo Femenino
Nivel Educativo Especialización
Estado Civil Soltera
Géneros de Interés Policial, Romántica, Acción y Aventura, Terror, Ficción, Juvenil,
Narrativa, Cuentos, Histórica, Erótica, Novela
Libro Leído 1 El Laberinto – Kate Mosse
Libro Leído 2 Inferno – Dan Brown
Libro Leído 3 La Chica del Tren – Paula Hawkins
Libro Recomendado 1 La Guerra de los Mundos – H.G. Wells
Libro Recomendado 2 Sentido y Sensibilidad – Jane Austen
Libro Recomendado 3 La Conspiración – Dan Brown
Libro Recomendado 4 La chica del tren – Paula Hawkins
Libro Recomendado 5 Cuentos – Tomas Carrasquilla Tabla 24. Usuario de prueba 20 (Autores)
6.5.2 Encuesta de resultados
Para poder validar los resultados del recomendador se realizó una encuesta a los 20
usuarios de prueba y poder ver si con cada recomendación realizada, se mejora el resultado
para el usuario. La encuesta planteada a los usuarios es la siguiente:
Figura 18. Encabezado encuesta de resultados (Autores)
63
Se les preguntó a los 20 usuarios el grado de satisfacción con respecto a cada
recomendación de las 5 realizadas. Y por último su parecer con respecto a la teoría
manejada en el planteamiento del sistema recomendador.
Figura 19. Preguntas de satisfacción encuesta de resultados (Autores)
64
Figura 20. Pregunta de opinión encuesta de resultados (Autores)
6.5.3 Implementación e Interpretación de encuestas
Luego de realizar las 5 recomendaciones a cada usuario, se les realizó la encuesta planteada
anteriormente, en donde se les aclaró a los usuarios que la recomendación no iba a ser del
todo certera ya que la cantidad de libros registrados en la base de datos no es suficiente para
un sistema de recomendación; se obtuvieron los siguientes resultados:
65
Figura 21. Evidencia de finalización de encuesta de resultados (Autores)
La primera recomendación realizada fue con pesos distribuidos equitativamente para cada
tipo de recomendación y sus atributos, los resultados son los siguientes:
Gráfica 4. Resultados Primera Recomendación (Autores)
Se observa que no hubo mucha satisfacción con los libros recomendados en esta fase, se
obtuvo un promedio de calificación de 2.8 de satisfacción por parte del usuario. La segunda
recomendación realizada fue con los pesos obtenidos de la primera encuesta realizada para
este proyecto, los resultados son los siguientes:
66
Gráfica 5. Resultados Segunda Recomendación (Autores)
Se observa que el grado de satisfacción aumento con respecto a la primera recomendación,
se obtuvo una calificación promedio de 4.05 de satisfacción. La tercera, cuarta y quinta
recomendación se realizó con la retroalimentación obtenida del sistema por cada
recomendación realizada. Los resultados son los siguientes:
Gráfica 6. Resultados Tercera Recomendación (Autores)
67
Gráfica 7. Resultados Cuarta Recomendación (Autores)
Gráfica 8. Resultados Quinta Recomendación (Autores)
En estas tres últimas recomendaciones se observa que el grado de recomendación
aumento conforme iban avanzando el número de recomendaciones para cada usuario.
Las calificaciones en promedio fueron de 4.85, 5.80 y 6.85 para la tercera, cuarta y quinta
recomendación respectivamente. También se realizó una pregunta de opinión al usuario
para saber si ellos están de acuerdo con la teoría planteada con el algoritmo, los
resultados muestran que si están de acuerdo con la hipótesis de que los pesos de los
atributos son importantes para realizar la recomendación:
68
Gráfica 9. Resultados Pregunta de Opinión (Autores)
6.5.4 Resultado de la retroalimentación del sistema
Como se planteó inicialmente, después de realizada cada recomendación el usuario
calificaría el resultado dependiendo de esto, los pesos irían cambiando; el comportamiento
de los pesos se muestran a continuación:
Los pesos por tipo de recomendación se muestran a continuación:
Tabla 25. Resultado de Pesos por Tipo de Recomendación (Autores)
69
Gráfica 10. Resultado de Pesos por Tipo de Recomendación (Autores)
Como se evidencia en los resultados, la Recomendación Basada en Contenido es la que más
peso tiene para los usuarios, lo que quiere decir que les gusta más las recomendaciones que
se generan a partir de los atributos de los libros; pero también se evidencio que a lo largo de
cada recomendación la Recomendación Colaborativa fue tomando peso con respecto a la
otra. Esto nos va demostrando que el peso en los atributos si es importante.
Los pesos de la recomendación Colaborativa son:
Tabla 26. Resultado de Pesos Recomendación Colaborativa (Autores)
0,00%
10,00%
20,00%
30,00%
40,00%
50,00%
60,00%
70,00%
80,00%
90,00%
R1 R2 R3 R4 R5
Colaborativa
Basada enContenido
70
Gráfica 11. Resultado de Pesos Recomendación Colaborativa (Autores)
Para la recomendación colaborativa se muestra que el atributo género de interés es el que
más peso va tomando por cada recomendación. Se evidencia además que los pesos si van
variando por cada ejercicio realizado.
Los pesos de la Recomendación Basada en Contenido son:
Tabla 27. Resultado de Pesos Recomendación Basada en Contenido (Autores)
0,00%
1,00%
2,00%
3,00%
4,00%
5,00%
6,00%
7,00%
8,00%
9,00%
10,00%
R1
R2
R3
R4
R5
71
Gráfica 12. Resultado de Pesos Recomendación Basada en Contenido (Autores)
La recomendación basada en contenido fue bajando su peso conforme avanzaron las
recomendaciones, pero los pesos de sus atributos también fueron variando. Dando como
resultado al atributo Género como el más importante para el usuario, seguido del Autor y la
descripción del libro.
Por último se muestra la gráfica del promedio de las calificaciones obtenidas por los 20
usuarios de prueba con respecto a las 5 recomendaciones realizadas a cada uno:
Tabla 28. Calificación de Satisfacción por Recomendación (Autores)
0,00%
5,00%
10,00%
15,00%
20,00%
25,00%
30,00%
35,00%
40,00%
R1
R2
R3
R4
R5
72
Gráfica 13. Calificación de Satisfacción por Recomendación (Autores)
Como se evidencia en estas calificaciones, la satisfacción por las recomendaciones hechas
al usuario van aumentando conforme varían los pesos de los atributos; por lo que es una
relación clara de que la recomendación si está atada al peso del atributo.
0,00
1,00
2,00
3,00
4,00
5,00
6,00
7,00
R1 R2 R3 R4 R5
Calificación de Satisfacción
Calificación deSatisfacción
73
6.5.5 Verificación de preguntas de investigación
6.5.5.1 Primera Pregunta de Investigación
¿Cuál es el mejor algoritmo de recomendación para un sistema que recomiende
libros?
No se puede afirmar que el mejor algoritmo para recomendación de libros es el que se usa
en este proyecto, ya que faltan más pruebas que puedan ratificar los resultados aquí
obtenidos. Lo que sí se puede afirmar es que con las pruebas realizadas a la recomendación
híbrida que usa tanto la recomendación colaborativa como la recomendación basada en
contenido.
6.5.5.2 Segunda Pregunta de Investigación
¿Qué método es útil para que el sistema recomendador aumente su exactitud con
respecto a los gustos del usuario?
Con respecto a los resultados obtenidos se puede responder que el método que más se
acomoda al sistema para que éste aumente su exactitud, es la retroalimentación a partir de
cada recomendación escogida por el usuario, ya que actualiza en tiempo real los pesos de
los atributos para que en la próxima recomendación su exactitud mejore.
6.5.5.3 Tercera Pregunta de Investigación
¿Cuáles son los atributos que más pesos deben tener a la hora de generar una
recomendación de libros?
Los que resultaron en este proyecto fueron el género del libro y los géneros de interés de las
personas. Pero no se puede afirmar que sean siempre los que van a determinar la
recomendación ya que con la retroalimentación se actualizan constantemente. Además de
esto no se asegura que estén todos los atributos que se deban contemplar a la hora de hacer
una recomendación de libros. Por lo que se recomienda aumentar los atributos en lo que
más se pueda.
74
6.5.6 Verificación de objetivos
Plantear un sistema de recomendación basado en contenido y colaborativo para
facilitar la elección de libros y facilite la retroalimentación del sistema.
El sistema recomendador se planteó satisfactoriamente usando la recomendación basada en
contenido y la colaborativa; se planteó y usó un algoritmo que redistribuye los pesos de los
atributos por cada recomendación escogida. Se generaron recomendaciones para los
usuarios de prueba y además se desarrolló la retroalimentación para que el sistema actualice
los pesos de los atributos con cada recomendación escogida por el usuario.
6.5.7 Verificación de hipótesis
- Un sistema recomendador basado en el historial de lectura del usuario y su perfil, es
más eficiente que aquellos que se basan en calificaciones de otros usuarios.
Hipótesis Confirmada
- El uso de pesos para cada atributo dependiendo de recomendaciones pasadas,
aproximan al sistema a generar una recomendación acertada para el usuario.
Hipótesis Confirmada
- Los algoritmos que se retroalimentan por las decisiones que toman los usuarios, son
más acertadas para arrojar recomendaciones a las personas.
Hipótesis Confirmada
75
7. CONCLUSIONES
Los Sistemas Recomendadores son un paso más para que el manejo de los datos se
convierta en el futuro, en el activo más importante para las humanidad; por esto es que un
sistema recomendador puede determinar el gusto de un usuario, en este caso los libros que
más se acomodan al gusto de los lectores.
Mientras más métodos de recomendación se usen, es decir mientras más información se use
para llegar a un resultado, este será más efectivo. Por lo que se comprobó que la
recomendación colaborativa y la basada en contenido son métodos que trabajan mejor
juntos.
Los atributos con los cuales se realiza una recomendación son importante a la hora de
realizarla, ya que estos determinan cual característica es más importante para el usuario, por
esto no se puede dar el mismo peso para el año de nacimiento del usuario que para su
estado civil, o para el género del libro que para el país de nacimiento del autor. Con este
proyecto se logró demostrar que los pesos de cada atributo si pueden determinar la
exactitud de la recomendación realizada al usuario.
Se logró demostrar que los pesos si determinan una exactitud en la recomendación, pero
como se pudo ver, no se pudo lograr una calificación más allá de los 7 puntos de
satisfacción, esto es debido a que la base de datos del prototipo no posee los suficientes
libros para un sistema de recomendación y solo poseía los 20 usuarios con lo que se realizó
la prueba. Se plantea que con una mayor información tanto de usuarios como de libros, se
puede llegar a una mayor exactitud de la recomendación.
76
8. RABAJOS FUTUROS
8.1 SISTEMA CON MAYOR GRADO DE PERSONALIZACIÓN
Se pretende como trabajo futuro para el prototipo ampliar el grado de personalización, ya
que se cree que esto puede mejorar la exactitud del mismo. Actualmente el sistema se
retroalimenta con cada recomendación, y actualiza los pesos de los atributos, pero estos
pesos son para todos los usuarios. Por esto se propone que cada usuario tenga su propio
sistema de pesos, ya que no todos los usuarios se inclinan por lo mismo; puede que la
mayoría de los usuarios prefieran ciertos atributos, pero no es bueno dejar de un lado a la
minoría, aprovechando el poder de almacenamiento al que se puede acceder hoy en día y el
que se tendrá en el futuro.
8.2 SISTEMA GAMIFICADO
En este sistema se va a manejar un sistema de puntos que incentiven al usuario a ayudar
con la alimentación del sistema y que sea pro-fidelización. Lo importante es que el usuario
sea el principal alimentador de la base de datos del sistema. La siguiente figura muestra el
ciclo de la interacción usuario aplicación respecto a la gamificación.
Ya sea que los puntos se conviertan en un personaje o le den más beneficios sobre su perfil,
(parte que se definirá en el desarrollo de la aplicación) estos puntos se podrán compartir en
diferentes redes sociales, para que el usuario pueda presumir sus actividades con la
plataforma. Se otorgarán puntos por las siguientes actividades:
i. Registrarse en la aplicación
ii. Registrar libros que no estén en la base de datos.
iii. Por cada libro leído.
iv. Por cada comentario de libros leídos.
v. Por compartir la plataforma en redes sociales.
77
Estas actividades estarán sujetas a modificaciones en el transcurso del diseño de la
aplicación. Lo importante es incentivar al usuario por las actividades que realice en la
aplicación.
Figura 22. Interacción Gamificación Sistema (Autores)
8.3 PLATAFORMA WEB
Se pretende pasar el sistema recomendador a una plataforma web, la cual pueda estar
disponible para todos los usuarios que lo deseen, por lo que se quiere que sean los mismos
usuarios los que ayuden a aumentar el nivel de los datos y además se pueda mejorar la
recomendación. Y automatizar procesos como el registro de usuarios nuevos, libros nuevos
y demás información que el sistema necesite.
8.3 PLATAFORMA MOVIL
Las aplicaciones de celular están en auge con la tecnología, por lo que si se quiere en un
futuro llegar a más personas, implementar el sistema recomendador en una aplicación
Android o IOS es una alternativa para el futuro del proyecto.
78
9. BIBLIOGRAFÍA
[1] E. Herrera-Viedma, L. Olvera, E. Peis, C. Porcel. “Revisión de los sistemas de
recomendaciones para la recuperación de información. Tendencias de investigación en
organización del conocimiento (Trends in knowledge organization research)” José
Antonio Frías, Ed. Críspulo Travieso, Universidad de Salamanca, (2003), 507-513.
[2] R.R. Yager. “Fuzzy Logic Methods in Recommender Systems”. Fuzzy Sets and
Systems, Volume 136, Issue 2 (2003), 133-149.
[3] G. Bafoutsou, G. Mentzas. “Review and Functional Classification of Collaborative
Systems”. International Journal of Information Management, 22 (2002), 281-305.
[4] P. Resnick, H.R. Varian, Guest Editors. Recommender Systems. Communications of the
ACM, 40 (3) (1997), 56-89.
[5] J.B. Schafer, J.A. Konstan, J. Riedl. “MetaRecommendation Systems: User-controlled
Integration of Diverse Recommendations”. ACM Conference on Information and
Knowledge Management (CIKM-02), November 5-7, 2002, McClean, VA.
[6] Vélez Langs, O. Santos, C. Aproximando a los Sistemas Recomendadores desde los
Algoritmos Genéticos. REVISTA COLOMBIANA DE COMPUTACIÓN. VII- 2. 9.
2006.
[7] L. Bejarano, J. Meza. Clase Seminario de Investigación I – Especialización en
Ingeniería de Software – Universidad Distrital Francisco José de Caldas (2017)
[8] ¿Qué es una encuesta? Características Generales. - Estadistica.mat.uson (2010) -
http://www.estadistica.mat.uson.mx/Material/queesunaencuesta.pdf
79
[9] M. Arriaza Balmón. “Guía práctica de análisis de datos” Consejería de Innovación,
Ciencia y Empresa. Ideagonal Diseño Gráfico.[21-32] (2008)
[10] E. Herrera, C. Porcel, L. Hidalgo. “Sistemas de recomendaciones:
herramientas para el filtrado de información en Internet” – Universidad Pompeu
Fabra, 2 Edición (2004)
[11] Extractado de La Guía de Arquitectura Versión 2.0a del grupo de Patterns
and Practices de Microsoft.
[12] S.M. Pepa. “Suite de algoritmos de recomendación en aplicaciones reales”
Universidad Autónoma de Madrid – Escuela Politécnica Superior (2014)
[13] K. Swearingen, R. Sinha. “Beyond Algorithms: An HCI Perspecitve on
Recommender Systems. Recommender Systems”. Papers and Notes from the 2001
Workshop New Orleans, LA. In conjuntion with ACM SIGIR Conference on
Research and Development in Information Retrieval.
[14] G. Aciar, S. Aciar. “Recomendador de usuarios en una plataforma
colaborativa en base a su perfil y reputación” Instituto de Informática Universisdad
Nacional de San Juan, Argentina. 14th Argentine Symposium on Artificial
Intelligence, ASAI 2013
[15] Resnick, P. Varian, H. R. Recommender systems. Commun. ACM 40, 3.56-
58. Marzo, 1997.
[16] Vélez Langs, O. Santos, C. Aproximando a los Sistemas Recomendadores
desde los Algoritmos Genéticos. REVISTA COLOMBIANA DE COMPUTACIÓN.
VII- 2. 9. 2006.
[17] Pablo Noriega, Carles Sierra and Juan Antonio Rodríguez. The Fishmarket
Project. Reflections on Agent-mediated institutions for trustworthy ECommerce.
80
Position Paper at the Workshop on Agent Mediated Electronic Commerce (AMEC-
98; Seoul)
[18] Montaner, M., L´opez, B., and de la Rosa, J. L. Opinion-based filtering
through trust. In Proceedings of CIA’02. LNAI 2446., pp. 164-178.
[19] Cadena V., Caranton A., Abuchar A. - Prototipo a sistema recomendador
gamificado para escoger libros – Ponencia CICOM 2017
9.1 BIBLIOGRAFÍA WEB
[20] El templo de las mil puertas, revista online de literatura juvenil
http://www.eltemplodelasmilpuertas.com/recomendador/
[21] Quelibroleo.com descubre tu próxima lectura. http://www.quelibroleo.com/
[22] Ebrolis https://www.ebrolis.com/
[23] Boolino https://www.boolino.es/es/
[24] Roca Libros http://www.rocalibros.com/buscador-emocional/
[25] Tú que lees http://www.tuquelees.com/almas-gemelas
[26] Bookseer http://bookseer.com/
[27] Curioseando (Dic-2016) “¿Cuántos géneros literarios existen?” Available:
https://curiosoando.com/cuantos-generos-literarios-existen