Tutorial sobre sistemas de recomendación: Tendencias y Oportunidades relacionadas con el Tratamiento de Información. Impartido en las IV Jornadas TIMM.
2. 2
José Carlos Cortizo Pérez
Director Técnico de BrainSINS (http://www.brainsins.es)
Profesor asociado en la Universidad Europea de Madrid (http://www.uem.es)
Desarrollador principal de Wipley (http://www.wipley.es)
http://www.josek.net
http://twitter.com/josek_net
http://www.linkedin.com/in/jccortizo
IV Jornadas TIMM
3. 3
¿Qué hacemos en BrainSINS?
Sistema de recomendación de productos para E-Commerce
Permite aumentar las ventas entre un 10% y un 30%
Fácil de integrar con cualquier tienda online
Potente y flexible
Trabajando en recomendación de contenidos (específica),
recomendaciones vía e-mail, etc.
IV Jornadas TIMM
5. 5
Integración JS
Permitimos integración mediante JS
Script de tracking parecido al de Google Analytics
Widgets para mostrar recomendaciones
IV Jornadas TIMM
6. 6
Integración API REST
API REST disponible
Muy similar a las de Twitter/Flickr
Permite un mayor nivel de integración, aunque requiere más tiempo
IV Jornadas TIMM
7. 7
Potente
Más de 100 recomendadores
Distintas acciones
Visitas, compras, valoraciones, comentarios, etc.
Distinto nivel de personalización
Similitudes, filtrado colaborativo, correlaciones, etc.
Orientadas a distintas páginas dentro de la tienda online
Home, carrito, checkout, página de producto, etc.
IV Jornadas TIMM
8. 8
Sistemas de
Tendencias
Recomendación
Técnicas básicas Oportunidades
IV Jornadas TIMM
9. 9
Sistemas de
Tendencias
Recomendación
Técnicas básicas Oportunidades
IV Jornadas TIMM
10. 10
¿Qué es un Recomendador?
Selecciona el producto que maximiza el valor, tanto para el comprador
como para el vendedor en un momento determinado
IV Jornadas TIMM
14. 14
¿Qué es un Recomendador?
Interfaz de Usuario
Control del Negocio y Analítica
Procesamiento de Conocimiento
Base de Conocimiento
IV Jornadas TIMM
15. 15
¿Necesito un Recomendador?
Productos
Muchos
Medio
Pocos
Clientes Pocos Medio Muchos
IV Jornadas TIMM
17. 17
Ventajas para el eCommerce
Aumento de ventas
Aumento de la fidelización
Diferenciación con la
competencia
IV Jornadas TIMM
18. 18
Control del Negocio y Analítica
Interfaz de Usuario
Procesamiento de Conocimiento
Base de Conocimiento
IV Jornadas TIMM
19. 19
Base de Conocimiento
Se obtiene monitorizando las acciones de los usuarios
Feedbacks explícitos vs. feedbacks implicitos
Votaciones, likes, comentarios (cuidado)
Otro tipo de acciones (navegación del usuario, compras)
IV Jornadas TIMM
20. 20
Control del Negocio y Analítica
Interfaz de Usuario
Procesamiento de Conocimiento
Base de Conocimiento
IV Jornadas TIMM
21. 21
Tipos de Recomendador
Tecnología muy desarrollada
Sistemas específicos (basados en items o en usuarios)
Filtrado colaborativo
Recomendaciones basadas en contenido
Recomendaciones sociales
Sistemas híbridos
IV Jornadas TIMM
22. 22
Control del Negocio y Analítica
Interfaz de Usuario
Procesamiento de Conocimiento
Base de Conocimiento
IV Jornadas TIMM
28. 28
El campo de investigación
Multidisciplinario (gestionar conocimiento, creación de perfiles, interfaces
de usuario, aspectos sociológicos y psicológicos, etc)
Relativamente joven
Con muchas influencias (IR, ML, DM, etc.)
Muy aplicado
Todavía resulta fácil innovar
IV Jornadas TIMM
30. 30
El campo de investigación
Workshops
APRESW: Adaptation, Personalization and REcommendation in the Social-semantic Web (ESWC 2010)
SRS: Social Recommender Systems (CSCW 2011)
CARS: Context-Aware Recommender Systems (RecSys 2010)
WPRRS: Web Personalization, Reputation and Recommender Systems (WI-IAT 2011)
RSMEETDB: Recommender Systems meet Databases (DEXA 2011)
SMUC: Search and Mining User-generated Contents (CIKM 2010, ¿2011?)
TEL: Recommender Systems for Technology Enhaced Learning (RecSys 2010)
SWM: Social Web Mining (IJCAI 2011)
IV Jornadas TIMM
31. 31
El campo de investigación
Xavier Iván Oscar
Cantador Pablo
Amatriain Celma
Castells
(@xamat) (@ocelma)
Francesco Peter Ido Gediminas
Ricci Brusilovsky Guy Adomavicius
IV Jornadas TIMM
34. 34
El campo de investigación
Special Issues (recientes)
IJEC special issue on Mining Social Media (primavera 2011)
ACM TIST special issue on Search and Mining User-generated Contents (finales 2011)
ACM TIST special issue on Social Recommender Systems (2011)
Algorithms special issue on Recommender Systems in E-Learning Settings (deadline Septiembre 2011)
ACM TWEB special issue on Recommender Systems (Febrero 2011)
ACM TIST special issue on Context-Aware Movie Recommendation (verano 2011)
IV Jornadas TIMM
36. 36
El campo de investigación
Datasets
Netflix (http://narod.ru/disk/7133213001/netflix.7z.html)
MovieLens (http://www.grouplens.org/)
Jester (http://www.ieor.berkeley.edu/~goldberg/jester-data/)
Book-crossing (http://www.informatik.uni-freiburg.de/~cziegler/BX/)
KDD Cup (Yahoo!, http://kddcup.yahoo.com/)
IV Jornadas TIMM
37. 37
El campo de investigación
Se puede usar información de multitud de sitios sociales
Facebook (Like)
Twitter (favoritos, RTs)
Delicious (recomendación de etiquetas)
Quora (recomendar preguntas de interés)
IV Jornadas TIMM
39. 39
Sistemas de
Tendencias
Recomendación
Técnicas básicas Oportunidades
IV Jornadas TIMM
40. 40
Técnicas Básicas
Enfoque simplista
Técnicas básicas sin profundizar demasiado
Casi todo el Estado del Arte proviene de otros campos (IR, DM, ML)
Así podemos centrarnos en tendencias y oportunidades
IV Jornadas TIMM
41. 41
Tipos de recomendadores
“Manuales” / “Cuenta de la vieja” (muy habituales en el “mundo real”)
Recomendaciones basadas en contenido
Filtrado colaborativo
Sistemas híbridos
IV Jornadas TIMM
42. 42
Tipos de recomendadores
“Manuales” / “Cuenta de la vieja” (muy habituales en el “mundo real”)
Recomendaciones basadas en contenido
Filtrado colaborativo
Sistemas híbridos
IV Jornadas TIMM
43. 43
Basadas en Contenido
Generan un perfil del usuario en función de los documentos o
descripciones de items que el usuario ha visualizado/votado/comprado
anteriormente
Perfil = representación estructurada de los intereses de los usuarios
IV Jornadas TIMM
44. 44
Arquitectura General
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
45. 45
Arquitectura General
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
46. 46
Content Analyzer
Procesa los items/documentos y los transforma en una representación
manejable
Suele utilizar técnicas de Ir (palabras clave, n-gramas, conceptos)
Importante decidir la representación de los items
IV Jornadas TIMM
47. 47
Representación de los Items
Datos estructurados (tablas de información)
Texto libre (descripciones de productos, páginas web, posts, etc.
[2] Michael J. Pazzani et. al., “Content-based Recommender Systems”, The Adaptive Web, 2007
IV Jornadas TIMM
48. 48
Texto no estructurado
Convertir a representación más estructurada
tf*idf
Representaciones típicas de IR
Se pierde el contexto de las palabras
Usar conjuntos de palabras como atributos
Utilizar representaciones más complejas (p.e. bag of concepts [3])
[3] José María Gómez et. al., “Concept Indexing for Automated Text Categorization”, NLDB 2004
IV Jornadas TIMM
49. 49
Arquitectura General
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
50. 50
Profile Learner
Recibe como entrada
Los items (con la representación de items elegida por nosotros)
El feedback del usuario
Utiliza algún tipo de aprendizaje supervisado para generar un modelo
predictivo -> Perfil de Usuario
Los perfiles de usuario se almacenan en un repositorio para nutrir al
filtrado
IV Jornadas TIMM
51. 51
Perfiles de usuario
Los perfiles de usuario acaban siendo vectores de términos/conceptos
Podemos aplicar similitud entre vectores para comparar perfiles/
documentos
Y diversas técnicas de aprendizaje supervisado
IV Jornadas TIMM
53. 53
Recomendación - Clasificación
Un modelo por cada usuario
Queda reducido a un problema de decisión binaria
Podemos utilizar modelos que nos den una cierta certidumbre, o incluso
niveles de interés
IV Jornadas TIMM
54. 54
1. Modelo Espacio Vectorial
Un perfil es un vector de términos
Un item es otro vector de términos
¡Calculamos la similitud entre ambos para ver si recomendamos un item a
un usuario!
Si lanzamos una consulta de un perfil sobre nuestra base de items,
obtendremos los items más relevantes para ese perfil
Enfoque muy simple, pero efectivo en determinadas situaciones
IV Jornadas TIMM
55. 55
2. Näive Bayes
Näive Bayes funciona particularmente bien en dominios textuales [4]
Spam [5], categorización de texto [3]
Es bastante rápido
Permite actualización online (modificándolo)
Fácilmente adaptable a dominios con “costes”
[4] José Carlos Cortizo et. al., “Wrapping the Naive Bayes Classifier to Relax the Effect of Dependences”, IDEAL 2007
[5] Enrique Puertas et. al., “Spam Filtering”, Advances in Computers 74, 2008 IV Jornadas TIMM
56. 56
2. Näive Bayes
Probabilidad a priori de la clase
Probabilidad de la clase vj dado el valor ai
* Asumiendo independencia de los atributos
IV Jornadas TIMM
57. 57
2. Näive Bayes
Syskill & Webert -> M. J. Pazzani et. al., “Syskill and Webert: Indentifying
Interesting Web Sites”, AAAI 1996
NewsDude -> D. Billsus et. al., “A Hybrid User Model for News Story
Classification”, UM 1999
Daily Learner -> D. Billsus et. al., “User Modelling for Adaptive News
Access”, User Modelling and User-Adapted Interaction 20 (2-3)
IV Jornadas TIMM
59. 59
3. Nearest Neighbors
Necesitamos una función de cálculo de distancias
Distancia Euclídea para modelos estructurados
Coseno para modelos de texto libre
IV Jornadas TIMM
61. 61
4. Realimentación / Rocchio
Utilizado en IR
En principio para “refinar” las consultas en función del feedback del usuario
sobre los resultados devueltos
En Sistemas de Recomendación nos permite integrar el feedback de un
usuario sobre una recomendación
IV Jornadas TIMM
63. 63
4. Realimentación / Rocchio
Modificaciones “positivas”
Query en iteración anterior
Modificaciones “negativas”
Parámetros que controlan la influencia de la query original y de las modificaciones
IV Jornadas TIMM
64. 64
4. Realimentación / Rocchio
J. Rocchio, “Relevance Feedback in Information Retrieval”, The SMART
System: Experiments in Automatic Document Processing, Prentice Hall,
1971
M. Balabanovic et. al., “FAB: Content-based, Collaborative
Recommendation”, Communications of the ACM 40 (3), 1997
M. J. Pazzani et. al., “Learning and Revising User Profiles: The
Identification of Interesting Web Sites”, Machine Learning 27 (3), 1997
IV Jornadas TIMM
66. 66
5. Árboles y Reglas
if
OUTLOOK == sunny && HUMIDITY <= 70%
then
play
if
OUTLOOK == overcast
then
play
if
OUTLOOK == rain && WINDY == true
then
don’t play
. . .
IV Jornadas TIMM
67. 67
5. Árboles y Reglas
Permiten ofrecer “explicaciones” sobre las recomendaciones (en función
de los valores de los atributos tomados para crear las ramas/reglas)
IV Jornadas TIMM
68. 68
5. Árboles y Reglas
An-Te Nguyen et. al., “Improving new user recommendation with rule-
based induction on cold user data”, RecSys 2007
Nadav Golbandi et. al., “Adaptive bootstrapping of recommender systems
using decision trees”, WSDM 2011
Shanp-Lun Lee, “Commodity recommendations of retail business based
on decision tree induction”, Expert Systems with Applications, 37 (5),
2010
Y. H. Cho et. al., “A personalised Recommender System based on Web
Usage Mining and Decision Tree Induction”, Expert Systems with
Applications, 23, 2002
IV Jornadas TIMM
69. 69
Arquitectura General
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
70. 70
Filtrado
Utiliza el perfil del usuario para sugerirle items de su interés
Decisiones binarias (recomendado / no recomendado) o bien un valor
indicando la “similaridad” con el perfil
Se pueden utilizar valores devueltos por el clasificador (p.e. con Näive
Bayes)
Utilizando métricas de similitud, como el coseno o distancia Euclidea
O bien desarrollando funciones de ranking ad-hoc
IV Jornadas TIMM
72. 72
Ventajas de los CB-RS
Independencia entre los usuarios
CF utiliza información de otros usuarios, CB genera un modelo con solo la
información de cada usuario
Transparencia
Podemos dar “explicaciones” de las recomendaciones a partir del modelo
del clasificador / atributos utilizados para ofrecer la recomendación
Cold-start para nuevos items
Podemos recomendar nuevos productos a los usuarios
IV Jornadas TIMM
73. 73
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
IV Jornadas TIMM
74. 74
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
IV Jornadas TIMM
75. 75
Análisis limitado del contenido
Si los contenidos analizados no tienen suficiente información como para
discriminar los items que le gustan al usuario, de los que no les gustan,
no podemos ofrecer recomendaciones
IV Jornadas TIMM
76. 76
Análisis limitado del contenido
Gran dependencia de los atributos elegidos para modelar el dominio
Se necesita conocimiento del dominio
A veces incluso ontologías específicas del dominio
Elementos que afectan a la valoración de los items que son muy
subjetivos o complicados de analizar
Chistes, poemas, sentimientos
IV Jornadas TIMM
77. 77
Análisis limitado del contenido
Las palabras clave no son adecuadas para representar contenido
Perfil de Usuario
artificial 0.1
Concepto multi-palabra
intelligence 0.05
Sinonimia
Polisemia apple 0.12
AI 0.09
IV Jornadas TIMM
78. 78
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
IV Jornadas TIMM
79. 79
Sobre-especialización
Al usuario se le van a recomendar items similares a los que ya le han
gustado
No permite (fácilmente) descubrir items realmente inesperados
Recomendaciones muy obvias
SERENDIPITY (serendipia)
IV Jornadas TIMM
80. 80
Serendipia
Serendipia: Encontrar cosas que te interesan buscando algo no
relacionado
En el “mundo real” = Ir “obligado” al teatro y coincidir con un inversor que
quiere invertir en tu proyecto
La serendipia es muy deseable en las recomendaciones
IV Jornadas TIMM
85. 85
Serendipia
Novedad: Ofrecer recomendaciones que sean de interés para el usuario,
pero que podría haber encontrado por si mismo
Serendipia: Ofrecer recomendaciones de items que le interesen al usuario
que no podría haber encontrado de otra forma
Estamos aportando valor al usuario
Descubrimiento de items: maximizando posibilidades de ventas (las
recomendaciones obvias prácticamente “caen” por si mismas)
IV Jornadas TIMM
86. 86
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
IV Jornadas TIMM
87. 87
Cold-start con nuevos usuarios
Apenas tenemos info (por no decir ninguna).
Hay que exprimir cualquier cosa al máximo
En Web
Tráfico directo (no tenemos info, pero si vienen directamente no suelen ser
usuarios nuevos)
Motores de búsqueda
Enlaces
Campañas de publicidad
http://www.brainsins.es/cold-start-o-que-recomendar-cuando-no-conocemos-a-nuestro-cliente/3032
IV Jornadas TIMM
88. 88
Referencias CB-RS
F. Sebastiani, “Machine Learning Methods in Automated Text
Categorization”, ACM Computing Surveys 34 (1), 2002
M. J. Pazzani et. al., “Content-Based Recommendation Systems”, The
Adaptive Web, LNCS vol. 4321, 2007
P. Lops, et. al., “Content-Based Recommender Systems: State of the Art
and Trends”, The Recommender Systems Handbook, Springer, 2010
IV Jornadas TIMM
89. 89
Tipos de recomendadores
“Manuales” / “Cuenta de la vieja” (muy habituales en el “mundo real”)
Recomendaciones basadas en contenido
Filtrado colaborativo
Sistemas híbridos
IV Jornadas TIMM
90. 90
Filtrado Colaborativo
Generan recomendaciones de items comparando patrones de
“comportamiento” de usuarios
Ese comportamiento pueden ser “ratings”, compras, comentarios, etc.
No necesitan información adicional de usuarios o items (solo
comportamiento de los usuarios)
IV Jornadas TIMM
96. 96
Filtrado Colaborativo
Simplificación...
Los gustos están correlacionados
Si a Juan y a Pepe les gusta “El Señor de los Anillos”
Y a Juan también le gusta “Canción de Hielo y Fuego”
Es más probable que a Pepe también le guste “Canción de Hielo y Fuego”
IV Jornadas TIMM
102. 102
Memory-based
1.- Calcular la similitud entre usuarios
2.- Coger los k usuarios más similares
3.- Agregar la información de los vecinos para obtener los N items más frecuentes
La similitud nos sirve tanto para usuarios como para items
IV Jornadas TIMM
103. 103
Similitud
Similaridad basada en correlación
Correlación de Person (también se puede usar la de Spearman, Kendall, etc.)
Coseno
Se “ajusta”, substrayendo la media de las votaciones de cada usuario
IV Jornadas TIMM
104. 104
Generar Recomendaciones
Suma ponderada de los ratings del resto de usuarios
Simple media ponderada
Top-N, basadas en usuarios
Buscamos los usuarios más similares, se agregan todos los items, y se
recomiendan los N productos más frecuentes que el usuario no ha comprado
Top-N, basadas en items
A partir de los items que ya tiene el usuario, se cogen los k items más similares a
cada uno, se agregan y posteriormente se calcula la similitud de cada item con el
conjunto de items que ya tenía el usuario
IV Jornadas TIMM
105. 105
Ventajas
Fácil implementación
Actualizable de forma incremental
No hace falta analizar el contenido de los items a recomendar
Escala bien si tenemos items co-rateados
IV Jornadas TIMM
106. 106
Inconvenientes
Dependientes del feedback de los usuarios
“Spam”
Rendimiento decrece con la dispersión de los datos
Cold-start
Escalabilidad limitada para grandes datasets
IV Jornadas TIMM
108. 108
Model-based
Utilizamos técnicas de ML para reconocer patrones más complejos
Similar a lo que veíamos en los CB-RS (aunque cambia la representación de los datos)
Redes bayesianas
CF basado en clustering
MDP
Latent Semantic
CF usando PCA, SVD (técnicas de reducción de dimensionalidad)
IV Jornadas TIMM
109. 109
Ventajas
Se enfrentan mejor a la dispersión y escalabilidad
Mejoran las predicciones
Pueden ofrecer algún tipo de explicación
IV Jornadas TIMM
110. 110
Inconvenientes
La construcción del modelo es una tarea muy pesada
Hay que equilibrar la precisión con la escalabilidad
Pérdida de información útil al utilizar técnicas de reducción de dimensionalidad
IV Jornadas TIMM
111. 111
Referencias FC-RS
X. Su et. al., “A Survey of Collaborative Filtering Techniques”, Advances in
Artificial Intelligence, 2009
Y. Koren et. al., “Advances in Collaborative Filtering”, The Recommender
Systems Handbook, 2010
A. Das et. al., “Google News Personalization: Scalable Online
Collaborative Filtering”, WWW 2007
G. Linden et. al., “Amazon.com Recommendations: Item-to-Item
Collaborative Filtering”, IEEE Internet Computing 7, 2003
IV Jornadas TIMM
112. 112
Tipos de recomendadores
“Manuales” / “Cuenta de la vieja” (muy habituales en el “mundo real”)
Recomendaciones basadas en contenido
Filtrado colaborativo
Sistemas híbridos
IV Jornadas TIMM
117. 117
Sistemas Híbridos
Combinan 2 o más recomendadores para mejorar el rendimiento global
del recomendador
Muy relacionado con el problema del cold-start
P.e. CB-RS para cuando hay pocos datos, y luego CF-RS
IV Jornadas TIMM
118. 118
Estrategias
Media (ponderada)
Switching: Se elige un recomendador en función de criterios
Combinación: Combinar recomendaciones de varios recomendadores
Combinación de atributos (fusión de información)
Cascada
Meta-nivel: Se genera un modelo que se usa de entrada para el siguiente
IV Jornadas TIMM
119. 119
Referencias HY-RS
R. Burke, “Hybrid Web Recommender Systems”, The Adaptive Web,
Springer, 2007
R. Burke, “Hybrid Recommender Systems: Survey and Experiments”,
User Modelling and User-Adapted Interaction 12 (4), 2002
A. Gunawardana, “A Unified Approach to Building Hybrid Recommender
Systems”, RecSys 2009
G. Adomavicius, “Toward the Next Generation of Recommender Systems:
A Survey of the state-of-the-art and Possible Extensions”, IEEE
Transactions on Knowledge and Data Engineering, 17 (6), 2005
IV Jornadas TIMM
120. 120
Sistemas de
Tendencias
Recomendación
Técnicas básicas Oportunidades
IV Jornadas TIMM
121. 121
Tendencias
Los Sistemas de Recomendación han ganado auge en los últimos años
Muchas tendencias nuevas
Focalizaremos en algunas de las más importantes
Al estar en la intersección de muchos campos (IR, DM, ML, KM), coge
influencias en cuanto a nuevas tendencias
IV Jornadas TIMM
122. 122
Tendencias
Social/Trust
Recomendaciones de grupos
Contexto
Explicaciones
Otro tipo de elementos (música, videos, videojuegos, aplicaciones...)
Basadas en grafos
Etiquetas
Visualización
Multicriterio
Re-ratear valores / acciones
IV Jornadas TIMM
123. 123
Tendencias
Social/Trust
Recomendaciones de grupos
Contexto
Explicaciones
Otro tipo de elementos (música, videos, videojuegos, aplicaciones...)
Basadas en grafos
Etiquetas
Visualización
Multicriterio
Re-ratear valores / acciones
IV Jornadas TIMM
124. 124
Social
El impacto de la Web 2.0 (Web Social) ha sido enorme
Generación de grandes volúmenes de contenidos
Cambio de actitud de los usuarios hacia la privacidad y el compartir
Se comparten datos como
Ubicación (FourSquare), edad, intereses (Facebook, Twitter), contactos
(LinkedIn), amistades (Facebook, Tuenti), enlaces de interés (delicious),
preguntas (Quora)
[6] J.C. Cortizo, “Social Media DataSet”, charla impartida en la UPV, Abril 2010, http://www.slideshare.net/jccortizo/social-media-dataset
IV Jornadas TIMM
125. 125
Social
Esto ha despertado gran interés en la comunidad RecSys
Aplicaciones de RecSys en sistemas sociales
Desarrollo de folksonomías para recomendar amigos/etiquetas/enlaces...
Uso de confianza y reputación en las recomendaciones
Web semántica; utilización de microformatos y ontologías
Evaluaciones empíricas sobre sistemas reales
[7] W. Geyer et. al., “2nd Workshop on Recommender Systems and the Social Web”, ACM RecSys 2010
IV Jornadas TIMM
126. 126
Trust
Una de la tendencias más importantes relacionadas con lo Social, han
sido los Trust Recommender Systems
Trust: determinar cuánto confía alguien en otra persona que no está
conectada directamente
Este problema lo resolvemos de forma intuitiva en la “vida real”
Y hacemos más o menos caso a las recomendaciones de un tercero en
función de esta “confianza inferida”
[8] J. Golbeck, “Computing and Applying Trust in Web-Based Social Networks”, PhD Thesis, 2005
IV Jornadas TIMM
128. 128
Recomendaciones usando Trust
Pueden asemejarse al concepto de “nuestra propia red de votaciones”
[9] R. Anderson et. al., “Trust-based Recommendation Systems: An Axiomatic Approach”, WWW 2008
IV Jornadas TIMM
129. 129
Ventajas/Inconvenientes
Ventajas
Permiten realizar recomendaciones de usuarios con más sentido
Pueden aportar “explicaciones” a determinados tipos de recomendaciones
Aprovechan mejor la información de algunos sitios sociales
Inconvenientes
Complejidad
¿De dónde sacamos los valores de confianza iniciales?
IV Jornadas TIMM
130. 130
Tendencias
Social/Trust
Recomendaciones de grupos
Contexto
Explicaciones
Otro tipo de elementos (música, videos, videojuegos, aplicaciones...)
Basadas en grafos
Etiquetas
Visualización
Multicriterio
Re-ratear valores / acciones
IV Jornadas TIMM
131. 131
Recomendaciones de Grupos
Recomendar grupos a una persona no es particularmente complejo
(tomamos grupos como items)
Recomendar items a grupos de personas es otra historia
IV Jornadas TIMM
132. 132
¿Por qué a grupos?
Vivimos en la era de la ubicuidad
Y solemos estar más tiempo acompañados del que nos creemos
Las recomendaciones empiezan a “salir” de lo virtual
IV Jornadas TIMM
133. 133
¿Por qué a grupos?
Empleados de una compañía
Parejas
Grupos de amigos
Grupos de Turistas
Recomendar música a un grupo de deportistas (gimnasio)
Familia (recomendaciones de TV)
IV Jornadas TIMM
134. 134
¿Por qué a grupos?
[10] A. Jameson et. al., “Recommendation to Groups”, The Adaptive Web, Springer, 2007
IV Jornadas TIMM
135. 135
Esquema de funcionamiento
1.- El sistema adquiere información sobre las preferencias de la gente
Se suele generar un perfil “grupal”, no es tarea trivial
2.- El sistema genera las recomendaciones
3.- El sistema presenta las recomendaciones a los miembros del grupo
4.- El sistema ayuda a los miembros a llegar un consenso acerca de qué
recomendación aceptar
IV Jornadas TIMM
136. 136
Diferencias
La interpretación de las preferencias del grupo no es trivial
El realizar recomendaciones al grupo es más complejo que para
individuos. Cada miembro del grupo puede imponer restricciones.
Las explicaciones de las recomendaciones toman en cuenta muchos
factores, que pueden ser utilizados por el grupo para tomar
consideraciones que no ha tenido en cuenta el sistema
El proceso de aceptar una recomendación requiere comunicación y
negociación
IV Jornadas TIMM
137. 137
Tendencias
Social/Trust
Recomendaciones de grupos
Contexto
Explicaciones
Otro tipo de elementos (música, videos, videojuegos, aplicaciones...)
Basadas en grafos
Etiquetas
Visualización
Multicriterio
Re-ratear valores / acciones
IV Jornadas TIMM
138. 138
Contexto
Hay dominios donde considerar únicamente items y usuarios no es
suficiente
Servicios dependientes de la localización: recomendaciones de lugares a
visitar (FourSquare), o de donde comprar comida a domicilio (SinDelantal)
Servicios dependientes del tiempo: recomendaciones de viajes, películas
para ver en el cine
[11] G. Adomavicius et. al., “Context-Aware Recommender Systems”, Tutorial at RecSys 2008
IV Jornadas TIMM
139. 139
Contexto
El contexto engloba muchas dimensiones posibles (más allá de las dos
dimensiones usuario/items)
Ubicación, tiempo, ‘momento’ (trabajo, casa), a qué estoy jugando
actualmente, etc.
Nos interesan recomendaciones distintas en función de estos criterios
Si estoy en Jaén, no me recomiendes comer en un restaurante de Madrid
Si últimamente solo juego a la PS3, no me recomiendes juegos de PC
Si estoy en el trabajo, recomiéndame libros técnicos, si estoy en casa,
literatura de ficción
[12] L. Baltrunas, “Exploiting Contextual Information in Recommender Systems”, RecSys 2008
IV Jornadas TIMM
140. 140
Contexto
¿Cómo extraemos el contexto? -> Implícito vs explícito
¿Cómo detectamos la relevancia del contexto en cada caso?
¿Almacenamos los contextos pasados?
¿Cuánto aumenta la complejidad al manejar muchos contextos?
IV Jornadas TIMM
147. 147
Tendencias
Social/Trust
Recomendaciones de grupos
Contexto
Explicaciones
Otro tipo de elementos (música, videos, videojuegos, aplicaciones...)
Basadas en grafos
Etiquetas
Visualización
Multicriterio
Re-ratear valores / acciones
IV Jornadas TIMM
148. 148
Explicaciones
Relacionado con la IMPORTANCIA del interfaz
Los usuarios desconfían
¿Me están recomendando esto porque les interesa vendérmelo?
Los “títulos” de las recomendaciones son importantes
[13] D. McSherry, “Explanation in Recommender Systems”, Journal of Artificial Intelligence Review, 24 (2), 2005
[14] N. Tintarev, “A Survey of Explanations in Recommender Systems”, ICDEW 2007 IV Jornadas TIMM
150. 150
Explicaciones
Pero también hay que explicar “más allá” de una descripción general
Podemos utilizar su comportamiento/compras previas para dar
explicaciones
IV Jornadas TIMM
152. 152
Explicaciones
En algunos casos (p.e. CB-RS), podemos utilizar el modelo interno para
explicar las recomendaciones
De forma más cercana al lenguaje
P.e. Te recomiendo “Reservoir Dogs” porque te gustó “Pulp Fiction” y ambas
están dirigidas por Quentin Tarantino
P.e. Te recomiendo FIFA 2011, porque te gustan los juegos de deportes, te
gustó NHL 11, y ambos están desarrollados por EA
IV Jornadas TIMM
155. 155
Explicaciones
Se pueden generar explicaciones para CF (p.e. Amazon), pero son
bastante pobres
Resulta complejo determinar qué atributos son los que más peso aportan
a una recomendación (no podemos mostrarle todos los que intervienen)
IV Jornadas TIMM
156. 156
Tendencias
Social/Trust
Recomendaciones de grupos
Contexto
Explicaciones
Otro tipo de elementos (música, videos, videojuegos, aplicaciones...)
Basadas en grafos
Etiquetas
Visualización
Multicriterio
Re-ratear valores / acciones
IV Jornadas TIMM
157. 157
Otro tipo de elementos
Podemos tratar cualquier elemento como un item
Pero no aprovechamos las peculiaridades del dominio
Y hay dominios muy peculiares
IV Jornadas TIMM
163. 163
Otro tipo de elementos
Tenemos que adaptarnos al dominio
Necesidad de hibridizar nuestros recomendadores
A veces los dominios requieren esfuerzo adicional
Extracción manual de características
Generación/limpieza de ontologías/folksonomías
IV Jornadas TIMM
164. 164
Tendencias
Social/Trust
Recomendaciones de grupos
Contexto
Explicaciones
Otro tipo de elementos (música, videos, videojuegos, aplicaciones...)
Basadas en grafos
Etiquetas
Visualización
Multicriterio
Re-ratear valores / acciones
IV Jornadas TIMM
165. 165
Tendencias
Basadas en grafos
http://markorodriguez.com/services/development/recommendation-system/
Etiquetas
R. Jäschke et. al., “Tag Recommendations in Folksonomies”, PKDD 2007
Visualización
S. E. Middleton et. al., “Capturing interest through inference and visualization: ontological user profiling in
recommender systems”, K-CAP 2003
Multicriterio
G. Adomavicius et.al., “MultiCriteria Recommender Systems”, The Handbook of Recommender Systems, 2010
Re-ratear valores / acciones
X. Amatriain et. al., “Rate it again: Increasing Recommendation Accuracy by User Re-Rating”, RecSys 2009
IV Jornadas TIMM
166. 166
Sistemas de
Tendencias
Recomendación
Técnicas básicas Oportunidades
IV Jornadas TIMM
167. 167
Oportunidades
Apenas hay PLN en RecSys en la actualidad
Los RecSys son prácticamente un campo virgen para el PLN
Mil oportunidades de investigación....
...y de negocio
Repasaremos algunas oportunidades, tanto relacionadas con el PLN
como con otro tipo de Tratamientos de la Información
IV Jornadas TIMM
168. 168
Oportunidades
Minería de Opiniones
Spam / Outliers en recomendaciones
Análisis del Sentimiento
Extracción Automática del Catálogo
CB-RS multilingües / semánticos
Fusión de información
Reputación online y relevancia de contenidos
Explicaciones de todo tipo de recomendaciones
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
IV Jornadas TIMM
169. 169
Oportunidades
Minería de Opiniones
Spam / Outliers en recomendaciones
Análisis del Sentimiento
Extracción Automática del Catálogo
CB-RS multilingües / semánticos
Fusión de información
Reputación online y relevancia de contenidos
Explicaciones de todo tipo de recomendaciones
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
IV Jornadas TIMM
170. 170
Minería de Opiniones
Las reviews de artículos son un tipo de opiniones que se utiliza como
información de entrada en muchos sistemas de recomendación
Actualmente, no se procesan las reviews en la mayoría de sistemas
Se “asume”, en muchos casos, que si escribes un comentario/review es que
te interesa el artículo
Esto puede llevar a favorecer recomendaciones de juegos similares a otros
en los que tu has comentado negativamente
IV Jornadas TIMM
172. 172
Product Reviews
Ya hay literatura sobre análisis de reviews de productos
Fermín I. Cruz et. al., “A Knowledge-Rich Approach to Feature-Based
Opinion Extraction from Product Reviews”, SMUC 2010 (CIKM)
J. Jin, “How to interpret the helpfulness of online product reviews: bridging
the needs between customers and designers”, SMUC 2010 (CIKM)
Z. Zhang, “Utility Scoring of Product Reviews”, CIKM 2006
S. Zhang, “Opinion Analysis of Product Reviews”, FSKD 2009
IV Jornadas TIMM
173. 173
...¿RecSys?
Pero apenas nada aplicado a los Sistemas de Recomendación
J. Roberto et. al., “Sistemas de Recomendación basados en Lenguaje
Natural: opiniones vs. valoraciones”, IV Jornadas TIMM
Otro enfoque: generación de perfiles según las reviews de productos
B. Liu, “Exploring User Opinions in Recommender Systems”, Tutorial at 2nd
KDD Workshop on Large-Scale Recommender Systems and the Netflix
Prize Competition
S. Aciar et. al., “Informed Recommender: Basing Recommendations on
Consumer Product Reviews”, IEEE Intelligent Systems 22 (3), 2007
No hacen minería de opiniones; matching de partes de reviews con ontología
IV Jornadas TIMM
174. 174
Oportunidades
Minería de Opiniones
Spam / Outliers en recomendaciones
Análisis del Sentimiento
Extracción Automática del Catálogo
CB-RS multilingües / semánticos
Fusión de información
Reputación online y relevancia de contenidos
Explicaciones de todo tipo de recomendaciones
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
IV Jornadas TIMM
175. 175
Problemas CGU
El contenido generado por los usuarios presenta una cierta problematica
con respecto a los RecSys
¿Será spam? (muchas marcas dedicando esfuerzo a hacer reviews positivas
de sus productos, o negativas de los de la competencia)
¿Será un comentario “fuera de sitio”?
Tenemos que ser capaces de “limpiar” determinados comentarios/reviews
de cara al Sistema de Recomendación
IV Jornadas TIMM
177. 177
Spam/Outliers
Los usuarios escriben cómo, cuándo y donde quieren
Muchas veces por amor/odio con la marca
Y hay marcas que generan polos muy opuestos: Apple, Microsoft,
Starbucks, etc.
Detectar este tipo de reviews mediante análisis del lenguaje es muy
importante
Si no pueden condicionar las recomendaciones de los demás
IV Jornadas TIMM
178. 178
Por donde empezar
N. Jindal et. al., “Review Spam Detection”, WWW 2007
N. Jindal et. al., “Opinion spam and Analysis”, WSDM 2008
Ee-Peng Lim et. al., “Detecting product review spammers using rating
behaviors”, CIKM 2010
IV Jornadas TIMM
179. 179
Oportunidades
Minería de Opiniones
Spam / Outliers en recomendaciones
Análisis del Sentimiento
Extracción Automática del Catálogo
CB-RS multilingües / semánticos
Fusión de información
Reputación online y relevancia de contenidos
Explicaciones de todo tipo de recomendaciones
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
IV Jornadas TIMM
180. 180
Análisis del Sentimiento
(P.D: Diferencio Opinion Mining de Sentiment Analysis, aplicando una
valoración particular)
El análisis de contenidos realizado para la generación de perfiles en CB-
RS es demasiado básico
¿Podríamos utilizar técnicas de análisis del sentimiento para extraer
características que puedan aportar mayor valor a la recomendación?
P.e. que un texto es melancólico
IV Jornadas TIMM
181. 181
Análisis del Sentimiento
Lo mismo se podría aplicar también a las reviews de productos
Capturar las “emociones” de los usuarios es muy importante
Nos puede ayudar a detectar gente realmente apasionada (o decepcionada)
con nuestros productos
Muy útil para dar un paso más allá de si una review es positiva/negativa
IV Jornadas TIMM
182. 182
Análisis del Sentimiento
Algunos trabajos aplicables
E. Boldrini et. al., “EmotiBlog: Towards a Finer-Grained Sentiment Analysis
and its Application to Opinion Mining”, IV Jornadas TIMM, 2011
E. Blanco et. al., “Creación de un sistema de reconocimiento de emociones
en alumnos de primaria”, IV Jornadas TIMM, 2011
IV Jornadas TIMM
183. 183
Oportunidades
Minería de Opiniones
Spam / Outliers en recomendaciones
Análisis del Sentimiento
Extracción Automática del Catálogo
CB-RS multilingües / semánticos
Fusión de información
Reputación online y relevancia de contenidos
Explicaciones de todo tipo de recomendaciones
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
IV Jornadas TIMM
184. 184
Extracción Automática Catálogo
Uno de los principales problemas que nos hemos encontrado es con la
generación del catálogo
Las tiendas pequeñas suelen usar CMS tipo Magento/osCommerce/
Prestashop, así que lo resolvemos extrayendo el catálogo desde los plug-ins
Sitios más grandes necesitan generar un XML...
A veces les resulta pesado, carecen de equipo técnico adecuado
...o bien pasar datos vía JavaScript
No les suele gustar a determinados sitios por facilitar el acceso a su
información por parte de terceras partes
IV Jornadas TIMM
185. 185
Extracción Automática Catálogo
Existe estado del arte aplicable
W. Cohen, “Predictively Modeling Social Text”, Keynote at MSM2009
(CAEPIA 2009)
J. Turmo, “Adaptive Information Extraction”, ACM Computing Surveys 38 (2),
2006
I. Benetti, “An Information Integration Framework for E-Commerce”, IEEE
Intelligent Systems 2002
IV Jornadas TIMM
186. 186
Extracción Automática Catálogo
Pero casi todos son enfoques semi-supervisados
Los responsables de una tienda online no estarían dispuestos a supervisar el
algoritmo
¿Se podrían desarrollar métodos de extracción totalmente automática de
cualquier catálogo?
IV Jornadas TIMM
187. 187
Oportunidades
Minería de Opiniones
Spam / Outliers en recomendaciones
Análisis del Sentimiento
Extracción Automática del Catálogo
CB-RS multilingües / semánticos
Fusión de información
Reputación online y relevancia de contenidos
Explicaciones de todo tipo de recomendaciones
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
IV Jornadas TIMM
188. 188
CB-RS Multilingüe/Semántico
Con los CB-RS tenemos una gran dependencia del idioma
No me va a recomendar productos cuyas descripciones están en inglés si
los que tengo anteriormente están en castellano
No es capaz de determinar que dos atributos son el mismo pero en distintos
idiomas
Además tenemos los problemas de sinonimia, polisemia, etc.
IV Jornadas TIMM
189. 189
CB-RS Multilingüe/Semántico
Muy poca literatura con acercamientos multilingües o realmente
semánticos
Muchos enfoques de folksonomias, pero siguen teniendo el problema del
idioma
Aplicar Euro WordNet no parece viable (por el coste computacional)
IV Jornadas TIMM
190. 190
CB-RS Multilingüe/Semántico
Enfoques prácticos
Usar Google Translate + extractores de conceptos para inglés
Generar ontologías específicas del dominio multilingües utilizando wikipedia
y las descripciones actuales de los productos
IV Jornadas TIMM
192. 192
CB-RS Multilingüe/Semántico
F. Carrero et. al., “In the Development of a Spanish Metamap”, CIKM 2008
IV Jornadas TIMM
193. 193
CB-RS Multilingüe/Semántico
Aplicando enfoques simplistas a los RecSys podemos obtener un sistema
baseline que nos permita decidir si tiene sentido esta línea
Las posibilidades de mejora son muchísimas
Además podría ayudar a resolver el problema del cold-start
IV Jornadas TIMM
194. 194
Oportunidades
Minería de Opiniones
Spam / Outliers en recomendaciones
Análisis del Sentimiento
Extracción Automática del Catálogo
CB-RS multilingües / semánticos
Fusión de información
Reputación online y relevancia de contenidos
Explicaciones de todo tipo de recomendaciones
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
IV Jornadas TIMM
195. 195
Oportunidades
Fusión de información
Fusionar distintas fuentes de información (p.e. info de tu perfil de Facebook, Twitter, FourSquare, etc.) para
generar perfiles de usuario más completos. O bien fusionar distintas fuentes para obtener más información
sobre productos
Reputación online y relevancia de contenidos
Muchos sistemas con reputación en la Web (Meneame, StackOverflow). Se puede utilizar el “karma” para
modificar las recomendaciones
A la hora de fusionar varias fuentes de información, se puede utilizar la relevancia de contenidos para ponderar
las distintas fuentes (p.e. Wikipedia tiene más peso que un blog “estándar”)
IV Jornadas TIMM
196. 196
Oportunidades
Explicaciones de todo tipo de recomendaciones
En CF-RS las recomendaciones son muy limitadas. ¿Podríamos desarrollar sistemas capaces de dar
explicaciones en lenguaje natural para cualquier tipo de recomendación?
Generar las explicaciones en lenguaje natural, generar un resumen de distintos tipos de explicaciones,
etc.
Otras tendencias interesantes en Web: Realidad Aumentada, Móvil, Gamificación
A través de lo móvil obtenemos contextos (p.e. geolocalización), además son sistemas totalmente ligados a las
personas, que nos ayudan en el desarrollo de sistemas de recomendación ubícuos
La gamificación es una de las nuevas “grandes” tendencias. Se podría personalizar los retos y logros.
IV Jornadas TIMM