Tesis
Doctorado en Ciencias de la Computación
MAGReS: un enfoque para generar recomendaciones a grupos
utilizando Sistemas Multiagente
Ing. Christian P. Villavicencio
Dr. Jorge Andrés Díaz-Pace
Director
Prof. Dra. Silvia Schiaffino
Co-Director
Facultad de Ciencias Exactas Departamento de Computación y Sistemas Universidad Nacional del Centro de la Pcia. de Bs. As.
Diciembre, 2018
Resumen
Los Sistemas de Recomendación han sido utilizados para generar recomendacio-nes a individuos en múltiples dominios, tales como: comercio electrónico, educación, películas, turismo, música. Sin embargo, en algunos de estos dominios el sujeto al cual se le realiza la recomendación no es un individuo sino un grupo de sujetos. Es-to ha motivado el surgimienEs-to de los Sistemas de Recomendación Grupales (SRG), los cuales conociendo quiénes son los miembros del grupo y sus perfiles de usuario (que contienen información relativa a sus intereses y otros datos relevantes) apuntan a generar recomendaciones que satisfagan al grupo como un todo. Los enfoques de SRG más extendidos hacen uso de técnicas de agregación (por ejemplo, el promedio o la minimización de miseria) para estimar las preferencias grupales, el perfil grupal, o para generar una recomendación grupal mediante la combinación de recomendaciones generadas para cada miembro del grupo.
A pesar de que los enfoques tradicionales han sido (y son) utilizados en muchos dominios, las limitaciones de las técnicas de agregación hacen que, en muchos casos, las recomendaciones generadas no logren satisfacer a todos los miembros del grupo de forma uniforme. Adicionalmente, muchas de esas técnicas de agregación no permiten modelar aspectos vinculados a los procesos de toma de decisiones de los grupos ni a características de cada individuo, lo que reduce el nivel de personalización de la recomendación generada. Por otro lado, son pocos los SRG que proveen explicaciones para sus recomendaciones, algo que es importante si se busca maximizar las chances de que los grupos acepten las recomendaciones que recibieron.
se comparó a MAGReS contra enfoques tradicionales y se encontró evidencia de que las recomendaciones generadas por MAGReS superan a las de dichos enfoques puesto que satisfacen a los miembros del grupo no sólo en mayor grado sino que también más uniformemente.
Agradecimientos
En primer lugar quiero agradecer a mi familia, a mis padres y a mi hermana, por darme la gran oportunidad de estudiar una carrera universitaria, por brindarme apoyo cada vez que lo necesité tanto durante mi carrera de grado como durante mi posgrado, por soportar mi mal humor cuando las cosas no resultaban como lo esperaba, y por comprender que a veces tardaba en responder o en llamar simplemente porque no notaba el paso del tiempo.
También quiero mostrar mi agradecimiento a las personas que me ayudaron duran-te la investigación y la escritura de esta duran-tesis. Especialmenduran-te a mis directores Andrés y Silvia, por tenerme paciencia, por guiarme cuando no sabía como proseguir, y por ayudarme a corregir los artículos aún cuando eso significaba trabajar durante los fi-nes de semana. Adicionalmente, agradezco al Instituto ISISTAN y a la Facultad de Ciencias Exactas de la Universidad UNICEN, porque brindaron el lugar físico y los equipos necesarios para desarrollar los experimentos de esta tesis. También agradezco al Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), porque sin su ayuda financiera no hubiese sido posible que realizara mis estudios doctorales.
Deseo agradecer también a mis compañeros y amigos del instituto de investigación, los cuales me acompañaron durante todo este proceso, me aconsejaron, me acompa-ñaron e hicieron del lugar de trabajo un espacio agradable para escribir e investigar.
A todos ellos, muchas gracias.
Índice General
Índice General 4
Índice de Figuras 9
Índice de Tablas 12
1. Introducción 15
1.1. La Tesis . . . 19
1.2. Organización de la tesis . . . 22
2. Marco Teórico 23 2.1. Sistemas de recomendación . . . 23
2.1.1. Recomendación a individuos . . . 23
2.1.1.1. Filtrado Colaborativo . . . 23
2.1.1.2. Filtrado Basado en Contenido . . . 26
2.1.1.3. Perfil Demográfico . . . 27
2.1.1.4. Recomendadores basados en utilidades . . . 27
2.1.1.5. Enfoques híbridos . . . 28
2.1.2. Recomendación a grupos . . . 29
2.1.2.1. Técnicas de adquisición de preferencias . . . 30
2.1.2.2. Estrategias de generación de recomendaciones . . . 31
2.1.2.3. Explicación de recomendaciones . . . 36
2.1.2.4. Soporte en la toma de la decisión final . . . 39
2.1.2.5. Evaluación de recomendaciones grupales . . . 40
2.2. Sistemas multiagente . . . 41
2.2.1. Modelos de negociación . . . 43
2.2.1.1. Según la cantidad de agentes involucrados . . . 43
2.2.1.2. Según el tipo de acuerdo . . . 43
2.2.1.3. Según el tipo de tema negociado . . . 44
2.2.1.4. Según la cantidad de temas negociados . . . 45
2.2.1.5. Según la privacidad de la información . . . 46
2.2.1.6. Según los objetivos de los agentes participantes . . . . 47
2.2.2. Protocolos de negociación . . . 47
2.2.2.2. Protocolos algorítmicos . . . 49
2.2.2.3. Protocolos mixtos . . . 50
2.3. Resumen . . . 52
3. Trabajos Relacionados 54 3.1. SMA aplicados a SRG . . . 54
3.1.1. Agentes como representantes de los usuarios . . . 54
3.1.2. Agentes para modelar componentes del sistema . . . 57
3.1.3. Agentes como representantes de los usuarios y para modelar componentes del sistema . . . 59
3.1.4. Discusión . . . 62
3.2. Explicaciones en recomendaciones a grupos . . . 65
3.3. Resumen . . . 70
4. Enfoque Propuesto 71 4.1. Problemas a resolver . . . 71
4.1.1. Problemas de las técnicas de agregación . . . 72
4.1.2. Explicaciones en las recomendaciones a grupos . . . 73
4.2. Enfoque propuesto: MAGReS . . . 74
4.3. Módulo de negociación . . . 75
4.3.1. Formalización del proceso de negociación . . . 77
4.3.2. Protocolo de negociación: MCP . . . 79
4.3.2.1. Initial Proposal strategy . . . 83
4.3.2.2. Agreement Criterion . . . 84
4.3.2.3. Proposal Acceptance strategy . . . 84
4.3.2.4. Already-Rated Punishment strategy . . . 86
4.3.2.5. Concession Criterion . . . 89
4.3.2.6. Concession Decision Rule . . . 91
4.3.2.7. Multilateral Concession strategy . . . 93
4.4. Módulo de generación de recomendaciones . . . 95
4.5. Módulo de generación de explicaciones . . . 97
4.5.1. Explicaciones de satisfacción . . . 97
4.5.1.1. Alcance: ítem . . . 98
4.5.1.2. Alcance: recomendación . . . 98
4.5.2. Explicaciones de afinidad . . . 101
4.5.2.1. Granularidad: par de usuarios . . . 101
4.5.2.2. Granularidad: grupo . . . 102
4.5.3. Cantidad insuficiente de ítems recomendados . . . 102
4.5.4. Explicaciones respecto de los perfiles de los miembros del grupo 103 4.6. Resumen . . . 104
5. Evaluación: Diseño Experimental 105 5.1. Datasets . . . 106
Índice General
5.3. Utilización de SRI . . . 111
5.4. Criterios de evaluación . . . 112
5.4.1. Métricas de satisfacción . . . 112
5.4.1.1. Group Satisfaction (GS) . . . 113
5.4.1.2. Members Satisfaction Dispersion (MSD) . . . 113
5.4.1.3. Fairness . . . 114
5.4.2. Métricas de privacidad de información . . . 114
5.4.2.1. Utility Function Information Leak (UFIL) . . . 115
5.4.2.2. Proposals Information Leak (PIL) . . . 116
5.4.3. Métricas de error . . . 116
5.4.3.1. Mean Absolute Error (MAE) . . . 116
5.4.3.2. Root Mean Square Error (RMSE) . . . 117
5.5. Parámetros de los experimentos . . . 117
5.6. Resumen . . . 120
6. Evaluación Offline: Dominio de Películas 121 6.1. Experimento 1: Comparación entre MAGReS y los baselines . . . 122
6.1.1. Configuración experimental . . . 122
6.1.2. Resultados . . . 123
6.1.3. Validación de resultados . . . 127
6.1.4. Observaciones . . . 127
6.2. Experimento 2: MCDD y su efecto sobre los conflictos prematuros . . 128
6.2.1. Configuración experimental . . . 128
6.2.2. Resultados . . . 128
6.3. Experimento 3: Estrategia PrA . . . 128
6.3.1. Configuración experimental . . . 130
6.3.2. Resultados . . . 130
6.3.3. Observaciones . . . 133
6.4. Experimento 4: Estrategia ARP . . . 133
6.4.1. Configuración experimental . . . 134
6.4.2. Resultados . . . 134
6.4.3. Observaciones . . . 135
6.5. Resumen . . . 137
7. Evaluación Offline: Dominio de POI 138 7.1. Experimento 1: Comparación entre MAGReS y los baselines . . . 139
7.1.1. Configuración experimental . . . 140
7.1.2. Resultados . . . 140
7.1.3. Validación de resultados . . . 141
7.1.4. Observaciones . . . 144
7.2. Experimento 2: MCDD y su efecto sobre los conflictos prematuros . . 144
7.2.1. Configuración experimental . . . 144
7.2.2. Resultados . . . 144
7.3.1. Configuración experimental . . . 145
7.3.2. Resultados . . . 146
7.3.3. Observaciones . . . 148
7.4. Experimento 4: Estrategia ARP . . . 148
7.4.1. Configuración experimental . . . 149
7.4.2. Resultados . . . 149
7.4.3. Observaciones . . . 149
7.5. Experimento 5: Uso de información de una LBSN . . . 151
7.5.1. Configuración experimental . . . 152
7.5.2. Experimento 1A: Uso de NN . . . 153
7.5.2.1. Resultados . . . 153
7.5.2.2. Validación de resultados . . . 155
7.5.3. Experimento 2: Uso de NNUZ . . . 155
7.5.3.1. Resultados . . . 155
7.5.3.2. Validación de resultados . . . 156
7.5.4. Experimento 5C: Comparación entre NN y NNUZ . . . 158
7.5.4.1. Resultados: NN versus NNUZ . . . 158
7.5.4.2. Observaciones . . . 161
7.6. Resumen . . . 164
8. Evaluación Online: Dominio de Películas 165 8.1. Experimento 1: Análisis de recomendaciones . . . 165
8.1.1. Configuración experimental . . . 166
8.1.2. Experimento 1A: Análisis de las estimaciones . . . 170
8.1.2.1. Resultados . . . 170
8.1.2.2. Validación de resultados . . . 171
8.1.2.3. Observaciones . . . 172
8.1.3. Experimento 1B: Análisis del feedback . . . 172
8.1.3.1. Resultados . . . 172
8.1.3.2. Validación de esultados . . . 174
8.1.4. Experimento 1C: Comparación entre estimaciones y feedback . . 174
8.1.5. Observaciones . . . 175
8.2. Experimento 2: Análisis de explicaciones . . . 176
8.2.1. Configuración experimental . . . 176
8.2.2. Resultados obtenidos . . . 177
8.2.2.1. Explicaciones a nivel ítem . . . 177
8.2.2.2. Explicaciones a nivel recomendación . . . 179
8.2.3. Observaciones . . . 183
8.3. Resumen . . . 184
9. Conclusiones 185 9.1. Contribuciones . . . 187
9.2. Limitaciones . . . 188
Índice General
A. Parámetros y Parametrizaciones 191
A.1. Técnicas selección de vecinos . . . 191
A.2. SRI . . . 191
A.3. MAGReS . . . 191
A.4. TRADGRec-PA . . . 193
A.5. TRADGRec-RA . . . 194
B. Cuestionario 196
C. Plantillas Utilizadas en la Generación de Explicaciones 199
1.1. Enfoques tradicionales para generación de recomendaciones . . . 16 1.2. Enfoque propuesto . . . 20 2.1. Ejemplo de datos estructurados: una base de datos de películas . . . 26 2.2. Agregación de perfiles. Estrategias: mayoría para el atributo “Sexo”,
promedio para el atributo “Edad” (se aplicó la función techo para
eli-minar la parte decimal) . . . 31 2.3. Ejemplo de agregación de preferencias usando la técnica de agregación
promedio. (*) Dado que los usuarios u1 yu3 no votaron el ítem item6,
se debe estimar el rating de ese ítem para los mencionados usuarios antes de calcular el promedio. . . 32 2.4. Agregación de recomendaciones . . . 33 2.5. Elección del rating grupal para un ítem siguiendo la estrategia “Promedio” 33 2.6. Elección del rating grupal para un ítem siguiendo la estrategia
“Prome-dio pesado” . . . 34 2.7. Elección del grupo siguiendo la estrategia “Minimización de Miseria” . 34 2.8. Elección del rating grupal para un ítem siguiendo la estrategia
“Maxi-mización de placer” . . . 35 2.9. Elección del rating grupal para un ítem siguiendo la estrategia
“Vota-ción de la mayoría”. . . 35 2.10. Elección del rating grupal para un ítem siguiendo la estrategia
“Vota-ción con aproba“Vota-ción” (th= 8) . . . 35
3.1. Proceso de generación de recomendaciones seguido por el SRG presen-tado en [98] . . . 56 3.2. Visualización del comportamiento de FlyTrap cuando hay dos usuarios
en una habitación. El primer usuario es fan de Bob Dylan, por lo que FlyTrap decide reproducir una canción de Bob Dylan, “Tell Me, Mom-ma” (izquierda). Luego, el segundo usuario, fan de Jhonny Cash, entra en la habitación. Ante esto, FlyTrap (al terminar de reproducir la can-ción previa), decide reproducir una cancan-ción de un álbum de Dylan y Cash, “T for Texas” (derecha). . . 60 3.3. Ejemplos de los tres tipos de interfaces utilizados por POLYLENS para
Índice de Figuras
3.4. Ejemplos de explicación provista por el enfoqueMake It Personal . . . 68
4.1. Enfoque propuesto: MAGReS . . . 76
4.2. Esquema general de funcionamiento delmódulo de negociación . . . 78
4.3. Descripción de los pasos de la adaptación de MCP realizada por MA-GReS (adaptado de [27]) . . . 80
4.4. Ejemplo de negociación utilizando MCP en el dominio de las películas . 82 4.5. Ejemplo de acuerdo potencial en la ronda i(con 2< i < k), el cual fue descartado debido a que los agentes usaban la PrA Strict. . . 86
4.6. Ejemplo de ronda en la cual una propuesta para el cual el producto de utilidades no es el mayor es aceptada por todos los agentes (si se usa la PrA Strict). . . 92
4.7. Ejemplo de propuestas candidatas del agenteag2 (ordenadas decrecien-temente con respecto al nivel de utilidad deag2) . . . 94
4.8. Esquema general de funcionamiento delmódulo de generación de reco-mendaciones . . . 96
4.9. Ejemplo de explicación de satisfacción a nivel ítem. Estilo: textual. Gra-nularidad: ambas . . . 98
4.10. Ejemplo de explicación de satisfacción a nivel ítem. Estilo: gráfico. Gra-nularidad: ambas . . . 99
4.11. Ejemplo de explicación de satisfacción a nivel ítem. Estilo: híbrido. Gra-nularidad: ambas . . . 100
4.12. Ejemplo de explicación de satisfacción a nivel recomendación. . . 101
4.13. Ejemplo de explicación de afinidad . . . 102
4.14. Ejemplo de explicación que indica que un miembro del grupo es “em-pático” . . . 103
4.15. Ejemplo de explicación que indica que se recomendaron menos ítems que los solicitados . . . 103
4.16. Ejemplo de explicación que indica que un usuario tiene un perfil de preferencias incompleto . . . 104
5.1. TRADGRec-PA . . . 109
5.2. TRADGRec-RA . . . 110
5.3. Descripción de los pasos del protocolo One-Step . . . 111
8.1. Aplicación Web utilizada para las pruebas: Interfaz para votar películas 168 8.2. Aplicación Web utilizada para las pruebas: Interfaz para crear grupos y pedir recomendaciones grupales . . . 168
8.3. Aplicación Web utilizada para las pruebas: Ejemplo de recomendación generada . . . 169
8.4. Aplicación Web utilizada para las pruebas: Interfaz para proveer feed-back individual y grupal . . . 170
8.5. GS y MSD computados en base a estimaciones. La MSD está graficada en forma de barras de error . . . 171
8.7. Error Absoluto Medio (MAE; menor es mejor) . . . 175
8.8. Respuestas a las preguntas Q1 y Q3 . . . 178
8.9. Respuestas a las preguntas Q4 y Q5 . . . 179
8.10. Respuestas a la preguntaQ6 . . . 180
8.11. Respuestas a las preguntas Q8 y Q10 . . . 181
8.12. Respuestas a las preguntas Q15 y Q16 . . . 182
Índice de Tablas
3.1. Clasificación de enfoques que aplican SMA a SR (SRI y SRG).
(1)En el sistema existen muchos agentes pero las negociaciones son
siem-pre bilaterales.(N.I.E) No informa explícitamente, en base a lo explicado
en el artículo se realizó una suposición. . . 63
4.1. Resumen de las estrategias y criterios de MCP . . . 83
5.1. Métricas de similaridad soportadas por los SRI . . . 119
6.1. GS promedio para cada parametrización de SRI y enfoque . . . 124
6.2. MSD promedio para cada parametrización de SRI y enfoque . . . 125
6.3. Fairness promedio para cada parametrización de SRI y enfoque . . . 125
6.4. UFIL promedio para cada parametrización de SRI y enfoque . . . 126
6.5. PIL promedio para cada parametrización de SRI y enfoque . . . 126
6.6. Cantidad de ítems recomendado según la variante de la estrategia MC utilizada . . . 129
6.7. Cantidad promedio de concesiones realizadas por agente, según la vari-ante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 131
6.8. GS promedio dependiendo de la variante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 131
6.9. MSD promedio dependiendo de la variante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 132
6.10. Fairness promedio dependiendo de la variante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 133
6.11. Cantidad promedio de recomendaciones realizadas a un grupo, depen-diendo de la variante de la PrA utilizada por los agentes y de la para-metrización del SRI . . . 134
6.12. Porcentaje deoverlap dependiendo de la variante de la ARP utilizada por los agentes y de la parametrización del SRI . . . 135
6.13. GS promedio dependiendo de la variante de la ARP utilizada por los agentes y de la parametrización del SRI . . . 136
7.1. GS promedio para cada parametrización de SRI y enfoque . . . 141
7.2. MSD promedio para cada parametrización de SRI y enfoque . . . 142
7.3. Fairness promedio para cada parametrización de SRI y enfoque . . . 142
7.4. UFIL promedio para cada parametrización de SRI y enfoque . . . 143
7.5. PIL promedio para cada parametrización de SRI y enfoque . . . 143
7.6. Cantidad de ítems recomendado según la variante de la estrategia MC utilizada . . . 145
7.7. Cantidad promedio de concesiones realizadas por agente, según la vari-ante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 146
7.8. GS promedio dependiendo de la variante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 146
7.9. MSD promedio dependiendo de la variante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 147
7.10. fairness promedio dependiendo de la variante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 147
7.11. Cantidad promedio de recomendaciones realizadas a un grupo, dependi-endo de la variante de la PrA utilizada por los agentes y de la parametrización del SRI . . . 148
7.12. Porcentaje deoverlap dependiendo de la variante de la ARP utilizada por los agentes y de la parametrización del SRI . . . 150
7.13. GS promedio dependiendo de la variante de la ARP utilizada por los agentes y de la parametrización del SRI . . . 150
7.14. Fairness promedio dependiendo de la variante de la ARP utilizada por los agentes y de la parametrización del SRI . . . 151
7.15. GS promedio para cada enfoque y parametrización de NN . . . 154
7.16. MSD promedio para cada enfoque y parametrización de NN . . . 154
7.17. Fairness promedio para cada enfoque y parametrización de NN . . . 154
7.18. GS promedio para cada enfoque y parametrización de NNUZ . . . 156
7.19. MSD promedio para cada enfoque y parametrización de NNUZ . . . 157
7.20. Fairness promedio para cada enfoque y parametrización de NNUZ . . . 157
7.21. NN versus NNUZ: cantidad de ítems por recomendación . . . 159
7.22. NN versus NNUZ: fairness . . . 160
7.23. NN versus NNUZ: MAE y RMSE . . . 162
7.24. NN versus NNUZ: Cantidad de vecinos encontrados para cada usuario . 163 A.1. Técnicas de selección de vecinos . . . 191
A.2. Parámetros de las estrategias de selección de vecinos . . . 192
A.3. Parametrizaciones de los SRI . . . 192
A.4. Parametrizaciones de MAGReS . . . 193
A.5. Parametrizaciones de MAGReS . . . 194
A.6. Estrategias de agregación de preferencias (PA Strategy). . . 194
Índice de Tablas
A.9. Parametrizaciones de TRADGRec-RA . . . 195 C.1. Variantes de la plantilla utilizada para generar las explicaciones de
afi-nidad . . . 199 C.2. Variantes de la plantilla utilizada para generar las explicaciones de
sa-tisfacción . . . 200 C.3. Variantes de la plantilla utilizada para generar las explicaciones respecto
de la cantidad de ítems recomendados . . . 200 C.4. Variantes de la plantilla utilizada para generar las explicaciones respecto
Introducción
En la actualidad la conectividad a Internet permite a los usuarios acceder a una gran cantidad de información en sólo instantes. En este contexto, un usuario que está interesado en comprar un producto, contratar un servicio o realizar una determinada actividad (como por ejemplo ver una película) enfrenta un problema conocido como “sobrecarga de información” [93, 106, 131]. Una simple búsqueda en Internet puede arrojar muchos resultados, los cuáles se corresponderán a una gran variedad de ítems potencialmente interesantes para el usuario. Sin embargo, son tantos los ítems suge-ridos por el buscador que resulta prácticamente imposible que el usuario los revise a todos y determine cuáles son realmente relevantes a sus intereses. Con el fin de aliviar este problema surgieron los Sistemas de Recomendación (SR) [89].
Los SR proveen asistencia a los usuarios con el objetivo de resolver el problema de elegir qué ítems, en un dominio dado, se ajustan mejor a sus preferencias, necesidades y gustos. Estos sistemas son capaces de generar sugerencias acerca de ítems en distin-tos dominios, tales como: comercio electrónico, educación, películas, turismo, música, entre otros. A lo largo del tiempo se han propuesto muchas técnicas de recomenda-ción, entre las que se pueden encontrar: las basadas en el análisis de similaridad del contenido de los ítems que se recomiendan, las técnicas de filtrado colaborativo que buscan usuarios similares en la comunidad, las que utilizan la información demográ-fica de los usuarios para generar recomendaciones, y técnicas híbridas que combinan distintos enfoques [89]. El problema de estas técnicas es que fueron desarrolladas para asistir individuos, por lo que no resultan directamente aplicables cuando el sujeto al que se le realiza la recomendación no es un individuo sino un grupo de individuos, algo que es muy común en algunos dominios como por ejemplo: películas [69], músi-ca [83] y turismo [88, 103]. Como respuesta a este problema surgieron los Sistemas de Recomendación a Grupos (SRG).
Figura 1.1: Enfoques tradicionales para generación de recomendaciones
miembros del grupo, lo cuál hace difícil que las recomendaciones generadas puedan satisfacer a todos los miembros del grupo por igual. Otro desafío radica en el hecho de que cada grupo tiene una dinámica propia al momento de tomar decisiones. Esta dinámica que debería ser tenida en cuenta al generar recomendaciones grupales. Otro desafío radica en el cambio del sujeto al que se le hace la recomendación: muchos sistemas de recomendación fueron creados para recomendar ítems a un único usuario, y por ende no contemplan el modelado de grupos ni de sus preferencias. Vinculado a esto, todo el proceso de recomendación se vuelve más complejo al trabajar con grupos. Por esta razón, autores como Jameson [45] sugieren dividir la “tarea de la recomendación grupal” en 4 subtareas: (i) adquirir información sobre las preferencias
grupales, (ii) generar las recomendaciones grupales, (iii) explicar las recomendaciones
generadas y (iv) dar soporte en la toma de decisiones final (por parte del grupo). Si
bien la generación de recomendaciones grupales es la subtarea en la que más se ha hecho foco en la última década, la subtarea de explicación de recomendaciones ha comenzado a cobrar importancia en los últimos años [29].
Las estrategias de (generación de) recomendación a grupos más extendidas hacen de uso enfoques “tradicionales” para generar las recomendaciones. Estos enfoques, ilustrados en la Figura 1.1, emplean de técnicas de agregación, como por ejemplo el promedio o la minimización de miseria, para generar recomendaciones grupales. La forma en que se utilicen las técnicas de agregación depende del enfoque [89]. De acuerdo a esto, los enfoques tradicionales se clasifican en tres categorías: (i) aquellos
que realizan agregación de preferencias, (ii) aquellos que realizan agregación de
perfi-les/modelos y (iii) aquellos que realizan agregación de recomendaciones. Los primeros
de agregación para combinar recomendaciones individuales generadas para todos los miembros del grupo en una única lista que será entregada al grupo (agregación de recomendaciones) [6].
Existe una gran variedad de técnicas de agregación, y cuál de ellas se utilice de-pende de (i) los datos a ser agregados (no es posible, por ejemplo, agregar datos no
numéricos usando técnicas como el promedio) y (ii) los objetivos perseguidos [17]. En
lo que respecta a agregación de preferencias, Masthoff [60] analizó diferentes técnicas, tales como: promedio, promedio sin miseria, maximización del placer, minimización de miseria, entre otras. En [6], los autores analizan la efectividad de recomendaciones a grupos generadas utilizando un enfoque de agregación de recomendaciones utilizando técnicas de agregación como la Spearman footrule, la cuenta de Borda (Borda Count)
y el promedio sin miseria.
A pesar de que los enfoques tradicionales son utilizados en muchos dominios, aún presentan algunas limitaciones que están principalmente vinculadas al uso de técnicas de agregación. La primera de ellas está relacionada al hecho de que muchas de las técnicas de agregación son fuertemente dependientes de la distribución y la cantidad de los datos que agregan, razón por la cual el resultado de la agregación puede no representar fielmente a los datos agregados. Esto es especialmente notable cuando la cantidad de datos a agregar es pequeña y la varianza de dichos datos es alta, algo que comunmente ocurre cuando se generan recomendaciones a grupos. Por ejemplo, suponga que se utiliza un enfoque tradicional de agregación de preferencias y que 3 usuarios u1,u2 y u3 votaron una película p con 1, 1 y 5 estrellas respectivamente. En
este contexto, el rating grupal estimado varía según la técnica de agregación utilizada, pudiendo ser: 2,33 (si se utiliza el promedio), 1 (si se utilizan minimización de miseria
o votación de la mayoría) o 5 (si se utiliza maximización del placer). Sin embargo, ninguno de todos los ratings grupales estimados representa fielmente los intereses de los miembros del grupo, ya que en casi todos los casos los intereses de uno o más de los miembros son sacrificados en favor de los del resto.
Si bien el hecho de que los ratings grupales no modelen adecuadamente los intereses del grupo es un problema grave en sí mismo, existe un problema aún más grave y es que las recomendaciones grupales se construyan en base a dichos ratings grupales. En este contexto, es altamente probable que las recomendaciones generadas muy posiblemente no logren satisfacer a algunos de los miembros del grupo. Este problema ya ha sido analizado en el pasado y como resultado, surgieron nuevas técnicas de agregación que apuntan a reducir el impacto de este problema [17, 19, 105, 124]. Sin embargo, se siguió observando que para algunos grupos las recomendaciones seguían sin satisfacer a todos los miembros de forma uniforme. La causa de esto es que, como lo indica el Teorema de la Imposibilidad de Arrow [5], no existe una técnica de agregación que sea la mejor de forma absoluta, es decir, que pueda modelar correctamente los intereses de todos los posibles grupos.
com-portamiento grupal que tiene lugar durante el proceso de toma decisiones, como por ejemplo argumentaciones y votaciones. Sumado a eso, las técnicas de agregación tam-poco tienen en cuenta aspectos vinculados al comportamiento, personalidad y forma de pensar de cada uno de los miembros del grupo (por ejemplo, perfiles de conce-sión, niveles de tolerancia, liderazgo, influencia). Todos estos aspectos pueden influir en los procesos de toma de decisiones tanto de los miembros del grupo (individual-mente) como del grupo en sí [19, 73], y tenerlos en cuenta puede ayudar a generar recomendaciones que representen de mejor manera los intereses del grupo.
Vinculado a los problemas causados por las limitaciones de las técnicas de agrega-ción utilizadas por los enfoques tradicionales existe otro desafío: son pocos los SRG que generan explicaciones para sus recomendaciones. Tal como mencionan [40, 115], las explicaciones pueden influir en cómo los usuarios perciben tanto las recomenda-ciones recibidas (con respecto a aspectos como: escrutabilidad, eficacia, persuación y eficiencia) como el funcionamiento del sistema en sí (en aspectos como: transparen-cia, confianza y satisfacción). Cuando las recomendaciones están dirigidas a grupos, las explicaciones tienen especial importancia puesto que las razones por las cuales el recomendador propuso ciertos ítems al grupo pueden no ser fácilmente deducibles, y conocer dichas razones puede ser un factor determinante cuando el grupo decide si aceptar o no la recomendación recibida. Por ejemplo, si un SRG recomienda una pe-lícula a un grupo de 4 personas y utiliza la técnica de agregación maximización del placer, muy posiblemente ocurrirá que la película recomendada no sea del agrado de
uno o más de los miembros del grupo, lo que podría causar que el grupo rechace la reco-mendación. Esta situación podría cambiar si el SRG acompaña la recomendación con una explicación para la misma. El SRG podría utilizar la explicación para persuadir a aquellos miembros del grupo no satisfechos de modo que acepten la recomendación en pos de contentar a otro de los miembros del grupo.
1.1.
La Tesis
En vista de lo explicado anteriormente, se considera necesaria una forma de realizar recomendaciones grupales que vaya más allá de las técnicas de agregación tradicionales y que además permita generar explicaciones para dichas recomendaciones. Teniendo en cuenta que, cuando un grupo de personas debe elegir un ítem sus miembros ge-neralmente discuten y analizan las opciones disponibles con el objetivo de alcanzar un consenso, la hipótesis de esta tesis es que un enfoque de recomendación que apli-que una estrategia similar podría generar recomendaciones potencialmente mejores apli-que las de los enfoques tradicionales, tanto respecto a la satisfacción grupal como a cuán uniformemente son satisfechos los miembros del grupo. Desde este punto de vista,
los sistemas multiagente (SMA) constituyen una buena alternativa al momento de modelar un SRG.
Los SMA son sistemas formados por múltiples agentes inteligentes [129, 130] que interactúan entre sí para lograr un determinado fin. En particular, cuando deben to-mar una decisión los agentes participan en un proceso conocido como negociación,
el cual está inspirado en el proceso llevado a cabo por grupos humanos al momento de tomar una decisión. Así, la negociación entre los agentes puede ser utilizada para abordar las dos limitaciones de las técnicas de agregación que afectan a las recomen-daciones de los enfoques tradicionales. La primera limitación puede ser sorteada, por ejemplo, haciendo que los agentes negocien con el fin de determinar qué ítem es el que debe ser recomendado al grupo (en el caso de los enfoques basados en agregación de preferencias) o cuál debería ser el rating grupal de un determinado ítem (en el caso de enfoques de agregación de recomendaciones). La segunda, puede ser sorteada utilizando un protocolo de negociación que se asemeje al utilizado por los grupos al tomar una decisión. Adicionalmente, el uso de SMA para modelar un SRG también puede ayudar a generar explicaciones más significativas para el grupo que estén más basadas en aspectos sociales observados en la interacción de los agentes durante la negociación, y menos en las consecuencias de utilizar técnicas de agregación.
En esta tesis se propone un enfoque de recomendación basado en un SMA llamado MAGReS, por las siglas del inglésMulti-Agent Group Recommender System. MAGReS
está compuesto por tres módulos principales: el módulo de negociación, el módulo de generación de recomendaciones y el módulo de generación de explicaciones; los cuáles
interactúan entre sí para generar las recomendaciones grupales y explicaciones para las mismas. Un esquema general del funcionamiento de MAGReS se muestra en la
Figura 1.2.
El módulo de negociación es el encargado de seleccionar los ítems que serán
1.1 La Tesis
incrementar el nivel de personalización de los agentes, de modo que cada usuario puede tener mayor control sobre cómo desea que el agente se comporte en la negociación. Esto, a su vez, contribuye a que cada agente represente de mejor manera a su usuario. Como resultado del proceso de negociación este módulo produce dos salidas: (i) el
ítem seleccionado para ser recomendado (si se pudo seleccionar uno), y (ii) un registro
de eventos de la negociación.
El módulo de generación de recomendaciones grupales es el encargado de generar
las recomendaciones grupales. Para ello invoca al módulo de negociación, al cual le
informa acerca de los intereses del usuario y las configuraciones de comportamiento que el usuario eligió (implícita o explícitamente) para su agente. Cada vez que el módulo de negociación selecciona un ítem, el módulo de recomendación lo agrega a la lista de ítems que serán recomendados. Posteriormente, la lista de recomendaciones es ordenada y preparada para ser presentada a los usuarios. Este módulo también se encarga de generar indicadores que contienen información respecto del proceso de generación de recomendaciones (por ejemplo: estimaciones de niveles de satisfacción y datos de la negociación, entre otros).
Por último, el módulo de generación de explicaciones, es el encargado de generar
las explicaciones para las recomendaciones de MAGReS. Las explicaciones son genera-das mediante la aplicación de un conjunto de reglas sobre los datos contenidos en los indicadores generados por el módulo de generación de recomendaciones. Actualmente
este módulo permite generar explicaciones relativas a los niveles de satisfacción esti-mados del grupo y sus miembros tanto respecto de cada ítem recomendado como a la recomendación (lísta de ítems), a la afinidad entre los intereses de los miembros del grupo, y a eventualidades específicas que puedan haber ocurrido durante el proceso de recomendación y deban ser notificadas para que el grupo.
MAGReS fue evaluado utilizando dos modalidades de evaluación: offline (con
da-tasets) yonline (con usuarios reales). La evaluaciónoffline se realizó en dos dominios,
películas y puntos de interés (POI, points of interest). Dicha evaluación tuvo por
ob-jetivo determinar si las recomendaciones de MAGReS superaban a las de los enfoques tradicionales con respecto a (i) cuán satisfecho quedaba el grupo con las
recomen-daciones generadas, y (ii) con respecto a qué tan uniformemente eran satisfechos los
miembros del grupo. En ambos dominios se obtuvieron resultados satisfactorios ya que se probó que las recomendaciones de MAGReS superan a las producidas por los enfoques tradicionales respecto de ambos de los aspectos mencionados.
La evaluación online se realizó en el dominio de las películas y se dividió en dos
partes. La primera tuvo por objetivo determinar si las mejoras en la satisfacción grupal y en la uniformidad de satisfacción (de los miembros del grupo) observadas durante la evaluación offline se mantenían en un contexto real. En base a los resultados
1.2 Organización de la tesis
útiles para los grupos y sus miembros. De acuerdo con los resultados obtenidos, fue posible concluir que las explicaciones generadas por MAGReS, a pesar de ser simples, probaron ser de utilidad para los usuarios.
1.2.
Organización de la tesis
El resto del informe se organiza como se explica a continuación.
En el Capítulo 2 se repasan definiciones y conceptos involucrados en los campos
de investigación de los sistemas de recomendación y los sistemas multiagente, los cuales son los dos campos de investigación en los que se centra esta tesis.
En el Capítulo 3 se presenta un relevamiento del estado del arte respecto de
otros trabajos en los cuáles se aplica SMA a SRG. Adicionalmente, también se anali-zan trabajos en los cuáles se presentan enfoques de generación de explicaciones para recomendaciones grupales.
En el Capítulo 4 se explican en detalle las problemáticas a resolver en esta tesis
y MAGReS, el enfoque propuesto.
En el Capítulo 5 se detallan los aspectos relacionados a la evaluación
experi-mental del módulo de generación de recomendaciones. En este capítulo se detallan los
datasets utilizados, los baselines, las métricas utilizadas en la evaluación y las distintas parametrizaciones de todos los enfoques.
En el Capítulo 6 se describen los resultados de los experimentos que formaron
parte de la evaluación offline de MAGReS en el dominio de las películas.
En el Capítulo 7 se presentan los resultados de la evaluación offline de las
re-comendaciones generadas por MAGReS en el dominio de los puntos de interés (POI,
points of interest).
En el Capítulo 8 se detallan los resultados de los experimentos que formaron
parte de la evaluaciónonline de MAGReS en el dominio de las películas. Se realizaron
dos experimentos, uno para evaluar de forma las recomendaciones y otro para evaluar las explicaciones.
En elCapítulo 9 se presentan las conclusiones de este trabajo de tesis, se analizan
Marco Teórico
En este capítulo se presentan definiciones y conceptos involucrados en los campos de investigación de los sistemas de recomendación y los sistemas multiagente. En la Sección 2.1 se introducen los sistemas de recomendación, tanto los utilizados para realizar recomendaciones a individuos como a grupos. En la Sección 2.2 se definen los sistemas multiagente, y se presentan distintas clasificaciones de modelos y protocolos de negociación.
2.1.
Sistemas de recomendación
Los sistemas de recomendación (SR) son ampliamente utilizados para resolver pro-blemáticas que implican tomar decisiones en contextos en los que se tiene “sobrecarga de información”. Por ejemplo, al elegir qué película mirar, o qué canción escuchar, o qué lugar visitar en las próximas vacaciones, entre otros casos, un usuario debería explorar una enorme lista de opciones, analizándolas una por una, algo que a veces resulta impráctico e inviable. Los SR fueron creados para ayudar a aliviar los procesos de búsqueda en los mencionados contextos, analizando la información que el usuario tiene disponible y reduciéndola hasta el punto de que el usuario sólo necesite evaluar una cantidad limitada de ítems para tomar una decisión. En esta sección se introdu-cirán enfoques y técnicas de recomendación aplicadas a recomendación a individuos (Sección 2.1.1) y a grupos (Sección 2.1.2).
2.1.1.
Recomendación a individuos
Los métodos de recomendación más utilizados en los sistemas clásicos de recomen-dación a usuarios individuales se describen a continuación.
2.1.1.1. Filtrado Colaborativo
2.1 Sistemas de recomendación
se le realiza la recomendación). Este enfoque no necesita conocimiento respecto a los ítems que se recomiendan puesto que no se enfoca en el contenido de los ítems sino en la opinión que los otros usuarios tienen respecto a dichos ítems. Los ítems pueden ser cualquier cosa a la cual un usuario pueda proveer un rating, tal como: obras de arte, libros, música, artículos de revistas, películas, destinos turísticos, entre otros.
Los sistemas de filtrado colaborativo utilizan los ratings otorgados por los usuarios a un subconjunto de ítems dentro del conjunto de ítems cargados en el sistema. El proceso de recomendación, entonces, busca usuarios con ratings similares a los del usuario activo y sugiere ítems teniendo en cuenta las mencionadas similaridades.
En [100] se explica que existen dos tipos de filtrado colaborativo:
Filtrado colaborativo basado en memoria:es también conocido como
“ba-sado en usuario”. Asume que los usuarios que en el pa“ba-sado tuvieron intereses similares tendrán intereses similares en el futuro, y se centra en la generación de comunidades (o vecindades) de usuarios que poseen gustos similares (medidos en función de los ítems que los mismos han votado). Para calcular el conjunto de usuarios con ratings similares al usuario activo, se utiliza un algoritmo de vecinos más cercanos, el cual puede resumirse de la siguiente manera:
1. Representar los ratings de los m usuarios sobre los n ítems en una matriz,
donde la intersección fila i columna j contiene el rating provisto por el
usuario i sobre el ítem j. Si una celda se encuentra vacía, significa que el
usuario no ha consumido el ítem aún.
2. Dado un usuario activo ua al que se pretende realizar la predicción o
reco-mendación, formar un grupo de usuarios o vecinos más cercanos comparan-do los usuarios con alguna medida de similitud1 sobre los ratings provistos
para los ítems.
3. Predecir la utilidad de un ítem para el usuario ua tomando el promedio
ponderado de los ratings de los vecinos más cercanos sobre el ítem.
Así, cuando se solicite una recomendación para el usuarioua el sistema explorará
la vecindad del usuario activo (ua) con el fin de obtener una lista de ítems que
aún no ha votado y le podrían resultar interesantes.
Filtrado colaborativo basado en modelos: utiliza alguna técnica de
apren-dizaje de máquina (en inglés, Machine Learning) para construir un modelo de
ratings de los usuarios y realizar futuras recomendaciones y predicciones en base a ese modelo. Se han propuesto varias técnicas para la creación de los mode-los, incluyendo redes bayesianas [111] y técnicas de clustering [82], las cuales identifican grupos de usuarios con preferencias similares.
1Entre las más usadas se encuentran la correlación de Pearson, el coeficiente de Tanimoto, la
Los algoritmos que usan un FC basado en memoria tienen el problema de que no escalan bien para aplicaciones en el mundo real debido a la gran cantidad de infor-mación de la que se debe disponer y de que el hardware necesario para procesar esa información en tiempo real con una performance aceptable es costoso. Por lo anterior, casi todos los algoritmos de FC suelen utilizar alguna de las siguientes alternativas: (i) aplicar algún tipo de preprocesamiento sobre los datos para poder utilizar un FC
basado en memoria, (ii) usar un enfoque basado en modelos puro, o (iii) usar un
enfoque híbrido.
Si bien el filtrado colaborativo se suele aplicar sobre usuarios también puede ser aplicado a ítems. En [100] los autores proponen un enfoque conocido como filtra-do colaborativo basafiltra-do en ítems, que está basado en modelos que predicen la
preferencia de un usuario sobre un ítem construyendo un modelo de ítems similares. Finalmente, se debe mencionar que entre los principales problemas del enfoque de FC, mencionados en [102], uno de los más importante es el del “arranque en frío” (en inglés, cold start): cuando no se tienen datos del usuario y sus intereses (o se tienen
pocos datos) resulta muy difícil realizarle una recomendación. Este problema puede degradar significativamente la performance de los algoritmos de filtrado colaborativo y puede ocurrir en tres escenarios:
1. Se agrega un nuevo usuario:ocurre cuando un usuario se registra por primera
vez en el sistema de recomendación. Dado que el usuario aún no ha votado nin-gún ítem no es posible realizar recomendaciones personalizadas para ese usuario. Algunas estrategias para tratar este problema son: forzar al usuario a votar un conjunto inicial de ítems antes de que pueda empezar a usar el recomendador, o recomendarle ítems que fueron buenos para la población en general (recomenda-ciones no personalizadas) hasta que haya votado suficientes ítems, entre otras. 2. Se agrega un nuevo ítem:ocurre cuando se agrega un nuevo ítem al sistema.
Dicho ítem nunca fue votado por ningún usuario y por ende no será recomendado. Entre las posibles soluciones para este problema se encuentran: recomendar ítems utilizando técnicas que no sean FC (tales como el filtrado basado en contenido), y elegir aleatoriamente un conjunto de esos ítems con pocos o ningún rating para luego pedirle a los usuarios que los voten.
3. Se crea una nueva comunidad: este es el peor caso de arranque en frío.
2.1 Sistemas de recomendación
2.1.1.2. Filtrado Basado en Contenido
Los métodos de filtrado basado en contenido (FBC) se centran en analizar los atributos que describen a los ítems del dominio buscando identificar aquellos ítems de interés particular del usuario activo.
Con el objetivo de generar recomendaciones, un recomendador que usa FBC con-trasta las descripciones de los ítems con los perfiles que representan (y almacenan) los intereses de los usuarios. Dichos perfiles están compuestos por distintos tipos de infor-mación, los cuales según lo explicado en [81], se pueden resumir en los dos siguientes: Unmodelo de las preferencias del usuario, por ejemplo, una descripción de
los tipos de ítems que le interesan al usuario. Una de las posibles interpretaciones para esta descripción es que por cada ítem se mantiene una función que predice la probabilidad de que un usuario se interese en él.
Unahistoria de las interacciones del usuario dentro del sistema, lo cual
implica llevar un registro de los ítems que el usuario ha visto o votado, junto con otra información acerca de las interacciones de ese usuario.
La principal dificultad que presenta el FBC es la elección de la representación utilizada para modelar los atributos de los ítems, la cual será distinta según el dominio en el que se esté trabajando. En [81] también se distinguen tres tipos de representación de los ítems de acuerdo al dominio de aplicación, a saber:
Datos estructurados: es la forma de representación más fácil de interpretar.
Cada ítem es descripto por el mismo conjunto de atributos, los cuales toman valores dentro de un conjunto conocido de valores posibles para cada uno de ellos. Un ejemplo de datos estructurados se presenta en la Figura 2.1.
Por lo general, los ítems se representan utilizando una tabla en donde cada columna representa a un tipo de atributo (por ejemplo, director en el dominio de las películas o género en el de la música), y cada fila de la tabla contiene un valor determinado por cada uno de los atributos (es decir que cada fila de la tabla representa a un ítem). La cantidad de atributos, y por ende columnas de la tabla, es finita y normalmente reducida.
Figura 2.1: Ejemplo de datos estructurados: una base de datos de películas
Datos no-estructurados: comprenden los textos sin restricciones o textos
estruc-considerar la complejidad que implica el manejo de lenguaje natural, incluyendo palabras polisémicas (una palabra, muchos significados) y sinónimos (muchas palabras, igual significado).
Datos semi-estructurados:muchos dominios son representados de forma más
precisa por datos semi-estructurados en donde existen algunos atributos con un conjunto de valores restricto y algunos campos de texto libre.
Con el objetivo de manipular campos de texto libre, comúnmente lo que se hace es convertir dicho texto (escrito en lenguaje natural) a una representación estructurada. Por ejemplo, cada palabra puede ser vista como un atributo con un valor booleano indicando cuando la palabra se encuentra en el texto, o puede representarse con un valor entero que determine la cantidad de veces que la palabra aparece en el texto.
2.1.1.3. Perfil Demográfico
Los sistemas de recomendación basados en información demográfica buscan cate-gorizar a los usuarios tomando como base la información personal de los mismos y generar recomendaciones a partir de su clase demográfica [15]. Entre los atributos que pueden ser utilizados para realizar la mencionada clasificación se pueden mencionar: la edad, el género, el nivel de educación y el lugar de residencia.
En un modelo de usuario, la información demográfica puede ser representada de distintas formas, y los atributos que forman parte de dicho modelo pueden ser otor-gados por los propios usuarios u obtenidos implícitamente (o una mezcla de ambos). La mayoría de las técnicas de filtrado basado en perfil demográfico (PD) calculan las correlaciones entre los distintos usuarios (tal como hacen las técnicas de FC), pe-ro únicamente basan el cómputo de la similitud entre usuarios y, por lo tanto sus recomendaciones, en los datos personales.
A pesar de que en el enfoque demográfico no se requiere de un historial de evalua-ciones o de navegación, como sí es necesario en los enfoques basados en contenido y colaborativo, no existen muchos sistemas de recomendación puramente demográficos ya que la información que necesitan para funcionar es difícil de obtener. La tarea de obtener la información demográfica de los usuarios puede llegar a ser compleja debido a que muchas veces los usuarios de estos sistemas encuentran tedioso tener que llenar formularios con sus datos personales, o bien no tienen interés en dar a conocer dicha información.
2.1.1.4. Recomendadores basados en utilidades
2.1 Sistemas de recomendación
El principal problema que posee este tipo de recomendadores es la creación de una función de utilidad para cada usuario, puesto que es difícil modelar la función de utilidad de todos los posibles usuarios, y una función que no represente los intereses reales del usuario sería contraproducente porque haría que el sistema recomiende al usuario ítems que le resultan poco o nada interesantes.
2.1.1.5. Enfoques híbridos
Dado que las técnicas de filtrado mencionadas en las secciones 2.1.1.1 (FC), 2.1.1.2 (FBC), 2.1.1.3 (PD) y 2.1.1.4 (basado en utilidades) tienen algún aspecto negativo, surgieron las técnicas híbridas. Los sistemas de recomendación híbridos combinan dos o más técnicas de recomendación de modo de obtener mejor desempeño, aprovechando las ventajas de cada una de ellas y compensando las desventajas que presenten.
Una de las formas de hibridación más comunes consiste en combinar técnicas de FC con alguna otra como un intento de eliminar (o al menos atenuar) los efectos del problema del “arranque en frío”. Existen diversas formas de combinar las distintas técnicas, en [14] se mencionan las más utilizadas:
Ponderación: la puntuación para un ítem sugerido es calculada a partir de la
combinación de los resultados de todas las técnicas de recomendación disponibles en el sistema. Por ejemplo, la puntuación podría calcularse a partir de una combinación lineal de las puntuaciones obtenidas de cada una de las técnicas de recomendación implementadas.
Conmutación:el sistema elige cuál de las técnicas de recomendación (que tiene
a su disposición) utilizar de acuerdo a algún criterio. El problema que presenta este enfoque es que resulta necesario definir el criterio para conmutar entre las técnicas de modo que se asegure que la calidad de las recomendaciones genera-das por el enfoque híbrido sean aceptables y mejores que las provistas por los enfoques individuales.
Mixta: en este caso se presentan las recomendaciones generadas por más de
una técnica. Se implementan cada una de las técnicas deseadas por separado, se generan recomendaciones utilizando cada una de esas técnicas y finalmente se presentan al usuario todas las sugerencias obtenidas en una única lista. Este enfoque es más simple que el enfoque de conmutación puesto que no requiere definir ningún criterio adicional.
Combinación de atributos: se centra en la combinación de FC y FBC a
que el sistema disponga de información sobre la similitud inherente de los ítems, dicha información no queda opacada por la similitud colaborativa pura.
Cascada:este enfoque propone que primero se utilice una técnica para generar
un gran conjunto de ítems candidatos y que luego se refine dicho conjunto utili-zando otra técnica, lo cual da como resultado la recomendación final. El método en cascada permite a los sistemas evitar aplicar la segunda técnica, que por lo general tiene menor prioridad, sobre aquellos ítems que o bien fueron claramente destacados por la primer técnica o bien obtuvieron baja calificación en la primera técnica (con lo que nunca serían recomendados).
Incremento de atributos: en este enfoque, se aplica una técnica para generar
evaluaciones o una clasificación para un ítem determinado y luego la información obtenida se incorpora en el proceso de la técnica de recomendación siguiente. Esta forma de hibridación de técnicas de recomendación ofrece una forma de mejorar la performance de los sistemas sin necesidad de modificarlos, ya que la funcionalidad adicional es agregada a través de intermediarios que utilizan otras técnicas para incrementar la información en sí misma.
En resumen, se tienen dos instancias básicas de combinación: en paralelo y secuencial. Dependiendo del uso y de la implementación, pueden derivar en cualquiera de las men-cionadas anteriormente. Adicionalmente, al momento de elegir un tipo de hibridación se debe tener en cuenta que, en las combinaciones secuenciales, si la etapa inicial no produce buenos resultados, éstos se propagan a la siguiente etapa, lo cual hace que la recomendación resultante sea de baja calidad.
2.1.2.
Recomendación a grupos
En algunos casos el sujeto al cual se le realizan las recomendaciones es un grupo de usuarios y no un individuo. Existen dominios en los cuales las actividades sobre las cuales se realizan las recomendaciones son realizadas por grupos de personas, como por ejemplo ver películas [69], escuchar música [24, 65, 83] en un espacio público (por ejemplo un gimnasio o una oficina), planear un viaje [66, 88, 103] con la familia, comer en un restaurant con amigos [64], entre otras.
En este contexto surgen los sistemas de recomendación a grupos (SRG), los cuales tienen por objetivo generar recomendaciones que satisfagan al grupo “como un todo”, es decir, tratando de satisfacer tanto como sea posible a todos los miembros del grupo. Satisfacer a un grupo es una tarea compleja si se la compara con la tarea de satisfacer a un individuo, y las técnicas de recomendación desarrolladas para los SR no son directamente aplicables al problema de la recomendación a grupos. Según se menciona en [45], cuando se cambia de recomendación individual a grupal se deben tener en cuenta ciertas cuestiones, las cuales se dividen en cuatro subtareas:
1. Adquisición de las preferencias de los miembros del grupo, que busca
2.1 Sistemas de recomendación
2. Generación de las recomendaciones, que realiza un análisis de las
preferen-cias de los miembros del grupo buscando determinar las del grupo.
3. Explicación de las recomendaciones, la cual es necesaria para lograr que los
miembros del grupo puedan entender por qué se les recomendó los ítems que se les recomendó y no otros.
4. Soporte en la toma de la decisión final, que toma mayor relevancia en la
recomendación a grupos dado que lograr que un grupo acepte, y posiblemente adopte, las recomendaciones generadas por el recomendador es mucho más difícil que lograr lo mismo cuando se trata de un único usuario.
2.1.2.1. Técnicas de adquisición de preferencias
Respecto a las técnicas de captura de preferencias en los SRG se debe destacar que existe una gran cantidad de ellas y que la gran mayoría son prácticamente idénticas a las utilizadas en SRI. Existen dos formas de adquirir información relativa a las preferencias de los usuarios:
Información explícita:es la técnica más usada. Según esta técnica, los usuarios
deben indicar, bajo un cierto rango de valores dados por el sistema, el grado de satisfacción o agrado respecto de los ítems explorados. Existen varios sistemas que utilizan esta técnica al momento de obtener los perfiles de los usuarios, como por ejemplo: CATS [66], MusicFX [65], Netflix2, Pocket Restaurant Finder [64],
PolyLens [76], entre otros.
Información implícita: es una técnica no muy extendida, principalmente en
lo que a recomendación a grupos respecta. Es utilizada por aquellos sistemas que aprenden las preferencias de los usuarios analizando el historial de uso y navegación por los distintos ítems del sistema. Un ejemplo de estos sistemas es FlyTrap [24], que selecciona música que será reproducida en una salón público (como puede ser un gimnasio o una oficina) aprendiendo las preferencias musi-cales de los usuarios observando los archivosmp3 reproducidos por cada uno de
ellos.
Adicionalmente, se debe mencionar que existen casos en los cuales se utilizan am-bos enfoques de forma simultánea. Un ejemplo de esto es el recomendador propuesto en [30], en el cual el perfil del usuario se compone tanto de un modelo que contiene la información de preferencias explicitadas por el usuario e información histórica relativa al uso del recomendador por parte del usuario. Las preferencias “implícitas” son ex-traídas del feedback que da el usuario respecto de las recomendaciones que le realizó el sistema.
2.1.2.2. Estrategias de generación de recomendaciones
La subtarea de la generación de recomendaciones es la subtarea en la que mayor hincapié se ha hecho a lo largo del tiempo y como resultado se han producido un gran número de técnicas. En la literatura [6, 17, 90] se clasifica principalmente a dichas técnicas en tres enfoques:
Agregación de perfiles: consiste en obtener el perfil grupal a partir de
téc-nicas de agregación de los perfiles individuales de los miembros del grupo con el objetivo de estimar los datos del perfil del grupo [21] y buscando que dicho perfil grupal represente al grupo como un todo. Existen varias formas de agregar perfiles, y en la mayoría de los casos el método de agregación a elegir depende de los datos que contienen los perfiles de usuario. Así, tal como se muestra en el ejemplo de la Figura 2.2, para una recomendación de películas donde el perfil de usuario sólo contiene datos sobre el sexo y la edad del mismo, el perfil gru-pal contendrá los mismos tipos de atributos pero con valores agregados. Para la edad se podría utilizar el promedio como técnica de agregación (la edad del perfil grupal se construye calculando el promedio de la edad de los miembros del grupo); y para el sexo, dado que no es un atributo cuantitativo y por ende el promedio no es aplicable, se podría utilizar mayoría (el sexo del grupo es el sexo de la mayoría de los miembros).
Figura 2.2: Agregación de perfiles. Estrategias: mayoría para el atributo “Sexo”, pro-medio para el atributo “Edad” (se aplicó la función techo para eliminar la parte
deci-mal)
Agregación de preferencias individuales:se basa en la creación de un
2.1 Sistemas de recomendación
individuales, para obtener la recomendación grupal. Un ejemplo de agregación de preferencias individuales se presenta en la Figura 2.3.
Por ejemplo: si el grupo está compuesto por 3 usuarios y se quiere calcular el rating del ítem según ese grupo, se obtiene el rating asignado por cada uno de los miembros del grupo a ese ítem (si el usuario no asignó un rating al ítem, se predice el mismo ) y se utiliza alguna técnica de agregación.
Figura 2.3: Ejemplo de agregación de preferencias usando la técnica de agregación
promedio. (*) Dado que los usuariosu1 yu3 no votaron el ítem item6, se debe estimar
el rating de ese ítem para los mencionados usuarios antes de calcular el promedio.
Agregación de recomendaciones: este enfoque consiste en generar
recomen-daciones individuales para cada miembro del grupo y luego realizar una agre-gación de recomendaciones para estimar las recomendaciones para el grupo [6]. En la Figura 2.4 se muestra un ejemplo en el cual una recomendación grupal se genera combinando recomendaciones individuales generadas para cada miembro del grupo.
Figura 2.4: Agregación de recomendaciones
combinar información. Dependiendo de cuál sea el enfoque y sobre qué datos se necesi-te aplicar la agregación se utilizarán distintas técnicas. Las más conocidas, descriptas en la literatura [6, 17], son:
Promedio (o average): es únicamente aplicable a datos cuantitativos (por
ejemplo: ratings y edades). En esta estrategia, el valor agregado de un elemento (por ejemplo el rating de un ítem) para un grupo se calcula como el promedio de los valores de ese elemento para los miembros del grupo. En el ejemplo de la Figura 2.5, si se utilizara promedio, el rating grupal para el ítem i2 sería 8,7, y
la lista ordenada de ítems de acuerdo al rating grupal sería < i2, i3, i1, i4, i5 >.
Figura 2.5: Elección del rating grupal para un ítem siguiendo la estrategia “Promedio”
Promedio pesado (oweighted average): esta estrategia es igual a Promedio
2.1 Sistemas de recomendación
Figura 2.6: Elección del rating grupal para un ítem siguiendo la estrategia “Promedio pesado”
Minimización de miseria (o least misery): esta estrategia sólo es aplicable
cuando se trabaja con datos cuantitativos. Se basa en la idea de que el grupo será tan feliz como su miembro más infeliz. Por lo anterior, se trata de reducir al mínimo el descontento del miembro más infeliz. Así, si lo que se está agregando son ratings, el rating de un ítem en el perfil de un grupo será igual al mínimo de los ratings de los miembros del grupo para ese ítem. Tal como puede observarse en la Figura 2.7, si se utilizara minimización de miseria, la lista ordenada de ítems sería < i3, i2, i1, i5, i4 >.
Se debe notar que cuando se utiliza esta estrategia para realizar agregación cuanto menor es el valor del dato a agregar, mayor es la influencia del valor agregado. Por lo anterior, el problema de esta estrategia es que las minorías pueden afectar seriamente a la preferencia grupal, ya que por ejemplo (si se agregan ratings): si en un grupo de 4 personas a 3 les gusta mucho un ítem y a uno no le gusta, en el perfil grupal el rating para ese ítem será el del usuario al cual no le gustaba, lo que no representa fielmente el interés grupal.
Figura 2.7: Elección del grupo siguiendo la estrategia “Minimización de Miseria”
Maximización del placer (o, most pleasure): funciona de forma similar a
la estrategia Minimización de miseria, pero en vez de considerar al miembro más descontento del grupo, considera al más contento. Así, cuanto mayor es el valor del dato a agregar, mayor es la influencia del valor agregado. Por ejemplo, de acuerdo a la Figura 2.8, si se utiliza maximización de placer, el rating grupal para el ítem i4 es 10.
Votación de la mayoría (oplurality voting): esta estrategia es mayormente
Figura 2.8: Elección del rating grupal para un ítem siguiendo la estrategia “Maximi-zación de placer”
caso sería necesario usar rangos para producir una agregación representativa puesto que de lo contrario sería prácticamente imposible encontrar la “mayoría”. De acuerdo con esta técnica, el dato agregado es el que más se repite entre el conjunto de datos a agregar. Así, en el ejemplo de la Figura 2.9, la lista ordenada de ítems es < i3, i4, i2, i1;i5 >.
Figura 2.9: Elección del rating grupal para un ítem siguiendo la estrategia “Votación de la mayoría”.
Votación con aprobación (o approval voting): de acuerdo a esta técnica,
el rating grupal se calcula multiplicando el máximo rating que puede darse a un ítem por la proporción de usuarios satisfechos. Un usuario se considera satisfecho si el rating que le dio al ítem es superior a un threshold de aprobación definido
th. En la Figura 2.10 se muestra un ejemplo donde esta técnica de agregación
es utilizada (para el ejemplo se fijóth = 8). Así, el rating grupal para el ítem i2
se calcula como 10∗1/3 = 3.ˆ3, donde 10 es el máximo rating asignable, y 1/3
indica que sólo 1 de los 3 miembros del grupo está satisfecho con el ítem.
2.1 Sistemas de recomendación
2.1.2.3. Explicación de recomendaciones
La explicación de recomendaciones es importante porque los sistemas de recomen-dación están afectados por dos problemas. El primero es que son procesos estocásticos (ya que varían permanentemente en el tiempo) y, por lo tanto, pueden producir erro-res sin importar qué tan bien se los haya implementado. El segundo consiste en que los recomendadores son “cajas negras” y dada una recomendación el usuario puede confiar o dudar de la misma ya que no conoce de qué manera el sistema obtuvo dicha recomendación.
Cuando se trabaja con recomendadores grupales la explicación de recomendacio-nes cobra aún más importancia. Dadas las muchas formas en que puede generarse una recomendación para un grupo, y los conflictos de intereses que pueden existir dentro del mismo, es natural que los miembros del grupo deseen entender cómo se llegó a la recomendación que obtuvieron y, en particular, cuán atractivos son los ítems recomen-dados para los otros miembros del grupo [45]. Además, a los problemas mencionados en el párrafo anterior se les agregan los problemas derivados del uso de técnicas de agregación (ya sea para agregar perfiles, preferencias o recomendaciones), algo que no siempre es transparente a los usuarios y que puede generar recomendaciones grupales que no se adecúen a los intereses reales del grupo.
La información que brinde una recomendación puede ser de muchos tipos, depen-diendo del objetivo de la explicación, el cual no siempre es convencer a los integrantes del grupo acerca de aceptar la recomendación entregada. Es decir, que es erróneo pensar que el rol de las explicaciones es siempre el de justificar por qué un ítem fue recomendado. Según Herlocker [39, 40], el objetivo de la explicación de las recomenda-ciones es entonces hacer frente a los problemas mencionados, ayudando a incrementar la confianza, mejorando la performance de la toma de decisiones y, por sobre todas las cosas, otorgando transparencia a los usuarios. La explicación puede ayudar a los usuarios tanto a entender el proceso de recomendación del sistema como a conocer las virtudes y los defectos del mismo. Adicionalmente, el hecho de poder solicitar una explicación proporciona un mecanismo para el manejo de errores que son inevitables al generar una recomendación.
De acuerdo con [115] las explicaciones pueden servir a múltiples propósitos. Por ejemplo, si lo que se busca es exponer el razonamiento y los datos detrás de la recomen-dación, tal como hacen las plataformas de comercio electrónico (por ejemplo: Amazon3,
Ebay4, Mercadolibre5, entre otros) al decir “Los clientes que compraron este artículo
también compraron ...” o plataformas como Spotify6 cuando dicen “Te recomendamos
estas canciones del cantante X porque previamente escuchaste canciones del mismo cantante”, entonces el propósito de las explicaciones es incrementar la transparencia.
Si lo que se busca es explicar al usuario porqué desearía o no un determinado ítem, por ejemplo diciendo“Creemos que el ítem X (no) te gustará porque...”, la explicación
contribuye a mejorar la efectividad de las recomendaciones. Además de las dos
moti-vaciones mencionadas, de acuerdo a lo explicado en [29] y en[115], otros de los posibles objetivos (o motivaciones) que persigue una explicación de recomendaciones, son:
Confianza: si lo que se busca es incrementar la confianza del usuario en el sistema.
Eficiencia: cuando la explicación intenta ayudar al usuario a tomar decisiones
de forma más rápida.
Persuasión: está vinculado a convencer al usuario de aceptar la sugerencia (ya
sea intentando hacer algo, comprar algo, etc.).
Satisfacción: cuando se busca incrementar el nivel de diversión del usuario al
usar el sistema y la facilidad de uso del mismo (usabilidad).
Escrutabilidad: si permite al usuario informarle al sistema acerca de un error en
la predicción realizada.
Además de las motivaciones que hacen a la explicación de recomendaciones necesaria, se deben tener en cuenta los estilos de explicación a utilizar, es decir, la forma en que la explicación es presentada al usuario y la información que ésta contiene. Ciertos tipos de explicaciones resultan más fáciles de generar que otros, ya sea por el tipo de expli-cación (el cual dependerá de la motivación de la misma), o porque se puede disponer fácilmente de toda la información necesaria para generarla, entre otros factores. Es por esto que en la literatura es posible encontrar taxonomías que clasifican las explicacio-nes tanto con respecto a su contenido y a la forma en que presentan la información, como respecto a la técnica utilizada para generar las recomendaciones. Por ejemplo, en [78] se muestra una taxonomía que clasifica a los sistemas de recomendación según el estilo de explicación dada:
estilo humano: “Los usuarios que compraron/votaron el ítem X también
com-praron/votaron los ítems Y, Z,...”,
estilo ítem: “El ítem Y te fue recomendado porque votaste/compraste el ítem
X”,
estilo característica (feature): “ (al comprar un smartphone) También te
reco-mendamos los siguientes productos porque también son más baratos, pero tienen menor resolución de pantalla”,
estilos híbridos (combinan algunos de los estilos anteriores): “Te recomendamos
el ítem X porque contiene las características a,b, ..., las cuales están incluídas en los ítems Z, W,... que votaste previamente” (combina los estilos basados en ítem y en features).