tutorial sistemas recomendación: iv jornadas timm
DESCRIPTION
Tutorial sobre sistemas de recomendación: Tendencias y Oportunidades relacionadas con el Tratamiento de Información. Impartido en las IV Jornadas TIMM.TRANSCRIPT
IV Jornadas TIMM
Sistemas de Recomendación. Tendencias y Oportunidades para el Tratamiento de Información
José Carlos Cortizo Pérez (CTO)
1
IV Jornadas TIMM
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)
2
http://www.josek.net
http://twitter.com/josek_net
http://www.linkedin.com/in/jccortizo
IV Jornadas TIMM
¿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.
3
IV Jornadas TIMM
Integración con CMS
4
IV Jornadas TIMM
Integración JS
Permitimos integración mediante JS
Script de tracking parecido al de Google Analytics
Widgets para mostrar recomendaciones
5
IV Jornadas TIMM
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
6
IV Jornadas TIMM
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.
7
IV Jornadas TIMM
8
Sistemas deRecomendación
Técnicas básicas
Tendencias
Oportunidades
IV Jornadas TIMM
9
Sistemas deRecomendación
Técnicas básicas
Tendencias
Oportunidades
IV Jornadas TIMM
¿Qué es un Recomendador?
Selecciona el producto que maximiza el valor, tanto para el comprador como para el vendedor en un momento determinado
10
IV Jornadas TIMM
11
Del comercio al eCommerce
VS
IV Jornadas TIMM
12
VS
Sistema de Recomendación
IV Jornadas TIMM
¿Qué es un Recomendador?
13
IV Jornadas TIMM
¿Qué es un Recomendador?
Base de Conocimiento
Procesamiento de Conocimiento
Control del Negocio y Analítica
Interfaz de Usuario
14
IV Jornadas TIMM
¿Necesito un Recomendador?
Clientes Pocos Medio Muchos
Productos
Muchos
Medio
Pocos
15
IV Jornadas TIMM
Casos de Éxito
16
IV Jornadas TIMM
Ventajas para el eCommerce
Aumento de ventas
Aumento de la fidelización
Diferenciación con lacompetencia
17
IV Jornadas TIMM
Base de Conocimiento
Procesamiento de Conocimiento
Control del Negocio y Analítica
Interfaz de Usuario
18
IV Jornadas TIMM
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)
19
IV Jornadas TIMM
Base de Conocimiento
Procesamiento de Conocimiento
Control del Negocio y Analítica
Interfaz de Usuario
20
IV Jornadas TIMM
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
21
IV Jornadas TIMM
Base de Conocimiento
Procesamiento de Conocimiento
Control del Negocio y Analítica
Interfaz de Usuario
22
IV Jornadas TIMM
La importancia del Interfaz
VS
23
La importancia del Interfaz
VS
IV Jornadas TIMM
Base de Conocimiento
Procesamiento de Conocimiento
Control del Negocio y Analítica
Interfaz de Usuario
25
IV Jornadas TIMM
Métricas evaluación (KPI)
26
IV Jornadas TIMM
Métricas evaluación (KPI)
27
IV Jornadas TIMM
El campo de investigación
28
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
El campo de investigación
29
IV Jornadas TIMM
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)
30
IV Jornadas TIMM
El campo de investigación
31
XavierAmatriain(@xamat)
IvánCantador Pablo
Castells
OscarCelma
(@ocelma)
FrancescoRicci
PeterBrusilovsky
IdoGuy
GediminasAdomavicius
IV Jornadas TIMM
El campo de investigación
32
IV Jornadas TIMM
El campo de investigación
33
IV Jornadas TIMM
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)
34
IV Jornadas TIMM
El campo de investigación
35
IV Jornadas TIMM
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/)
36
IV Jornadas TIMM
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)
37
IV Jornadas TIMM
El campo de investigación
38
+
+
IV Jornadas TIMM
39
Sistemas deRecomendación
Técnicas básicas
Tendencias
Oportunidades
IV Jornadas TIMM
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
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
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
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
43
IV Jornadas TIMM
Arquitectura General
44
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
Arquitectura General
45
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
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
46
IV Jornadas TIMM
Representación de los Items
Datos estructurados (tablas de información)
Texto libre (descripciones de productos, páginas web, posts, etc.
47
[2] Michael J. Pazzani et. al., “Content-based Recommender Systems”, The Adaptive Web, 2007
IV Jornadas TIMM
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])
48
[3] José María Gómez et. al., “Concept Indexing for Automated Text Categorization”, NLDB 2004
IV Jornadas TIMM
Arquitectura General
49
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
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
50
IV Jornadas TIMM
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
51
IV Jornadas TIMM
Recomendación - Clasificación
52
ó
IV Jornadas TIMM
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
53
IV Jornadas TIMM
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
54
IV Jornadas TIMM
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”
55
[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
2. Näive Bayes
56
Probabilidad a priori de la clase
Probabilidad de la clase vj dado el valor ai
* Asumiendo independencia de los atributos
IV Jornadas TIMM
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)
57
IV Jornadas TIMM
3. Nearest Neighbors
58
IV Jornadas TIMM
3. Nearest Neighbors
Necesitamos una función de cálculo de distancias
Distancia Euclídea para modelos estructurados
Coseno para modelos de texto libre
59
IV Jornadas TIMM
3. Nearest Neighbors
60
IV Jornadas TIMM
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
61
IV Jornadas TIMM
4. Realimentación / Rocchio
62
IV Jornadas TIMM
4. Realimentación / Rocchio
63
Parámetros que controlan la influencia de la query original y de las modificaciones
Query en iteración anterior
Modificaciones “positivas”
Modificaciones “negativas”
IV Jornadas TIMM
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
64
IV Jornadas TIMM
5. Árboles y Reglas
65
IV Jornadas TIMM
5. Árboles y Reglas
66
if OUTLOOK == sunny && HUMIDITY <= 70%then play
if OUTLOOK == overcastthen play
if OUTLOOK == rain && WINDY == truethen don’t play
. . .
IV Jornadas TIMM
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)
67
IV Jornadas TIMM
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
68
IV Jornadas TIMM
Arquitectura General
69
[1] Pasquale Lops et. al., “Content-based Recommender Systems: State pf the Art and Trends”, Recommender Systems Handbook, 2010
IV Jornadas TIMM
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
70
IV Jornadas TIMM
Filtrado
71
Items
Generadorperfil
BD perfiles
Filtrado
Modeloclasificador
IV Jornadas TIMM
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
72
IV Jornadas TIMM
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
73
IV Jornadas TIMM
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
74
IV Jornadas TIMM
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
75
IV Jornadas TIMM
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
76
IV Jornadas TIMM
Análisis limitado del contenido
Las palabras clave no son adecuadas para representar contenido
77
Perfil de Usuario
artificial 0.1intelligence 0.05apple 0.12AI 0.09
Concepto multi-palabra
PolisemiaSinonimia
IV Jornadas TIMM
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
78
IV Jornadas TIMM
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)
79
IV Jornadas TIMM
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
80
IV Jornadas TIMM
Serendipia
En algunos casos nos interesa no “salirnos del tiesto”
81
IV Jornadas TIMM
Serendipia
Pero en otros es totalmente necesario
82
IV Jornadas TIMM
Serendipia
Mejor...
83
IV Jornadas TIMM
Serendipia
84
vs
IV Jornadas TIMM
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)
85
IV Jornadas TIMM
Inconvenientes de los CB-RS
Análisis del contenido (limitado)
Sobre-especialización
Cold-start con nuevos usuarios
86
IV Jornadas TIMM
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
87
http://www.brainsins.es/cold-start-o-que-recomendar-cuando-no-conocemos-a-nuestro-cliente/3032
IV Jornadas TIMM
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
88
IV Jornadas TIMM
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
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)
90
IV Jornadas TIMM
Filtrado Colaborativo
91
IV Jornadas TIMM
Filtrado Colaborativo
92
IV Jornadas TIMM
Filtrado Colaborativo
93
IV Jornadas TIMM
Filtrado Colaborativo
94
IV Jornadas TIMM
Filtrado Colaborativo
95
Enlaces: recomendaciones
IV Jornadas TIMM
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”
96
IV Jornadas TIMM
Filtrado Colaborativo
97
IV Jornadas TIMM
Representación de los Datos
98
i1 i2 i3 i4 i5 i6
u1
u2
u3
u4
u5
IV Jornadas TIMM
Representación de los Datos
Matriz con las acciones/comportamiento de los usuarios por cada item
Matrices muy dispersas
99
IV Jornadas TIMM
Taxonomía de CF
Memory-based
Model-based
100
IV Jornadas TIMM
Taxonomía de CF
Memory-based
Model-based
101
IV Jornadas TIMM
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
102
IV Jornadas TIMM
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
103
IV Jornadas TIMM
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
104
IV Jornadas TIMM
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
105
IV Jornadas TIMM
Inconvenientes
Dependientes del feedback de los usuarios
“Spam”
Rendimiento decrece con la dispersión de los datos
Cold-start
Escalabilidad limitada para grandes datasets
106
IV Jornadas TIMM
Taxonomía de CF
Memory-based
Model-based
107
IV Jornadas TIMM
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)
108
IV Jornadas TIMM
Ventajas
Se enfrentan mejor a la dispersión y escalabilidad
Mejoran las predicciones
Pueden ofrecer algún tipo de explicación
109
IV Jornadas TIMM
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
110
IV Jornadas TIMM
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
111
IV Jornadas TIMM
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
Sistemas Híbridos
113
IV Jornadas TIMM
Sistemas Híbridos
114
IV Jornadas TIMM
Sistemas Híbridos
115
Influencia de “Ensemble Learning”
IV Jornadas TIMM
Sistemas Híbridos
KDD Cup 2009
116
IV Jornadas TIMM
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
117
IV Jornadas TIMM
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
118
IV Jornadas TIMM
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
119
IV Jornadas TIMM
120
Sistemas deRecomendación
Técnicas básicas
Tendencias
Oportunidades
IV Jornadas TIMM
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
TendenciasSocial/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
122
IV Jornadas TIMM
TendenciasSocial/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
123
IV Jornadas TIMM
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)
124
[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
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
125
[7] W. Geyer et. al., “2nd Workshop on Recommender Systems and the Social Web”, ACM RecSys 2010
IV Jornadas TIMM
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”
126
[8] J. Golbeck, “Computing and Applying Trust in Web-Based Social Networks”, PhD Thesis, 2005
IV Jornadas TIMM
Trust
127
IV Jornadas TIMM
Recomendaciones usando Trust
Pueden asemejarse al concepto de “nuestra propia red de votaciones”
128
[9] R. Anderson et. al., “Trust-based Recommendation Systems: An Axiomatic Approach”, WWW 2008
IV Jornadas TIMM
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?
129
IV Jornadas TIMM
TendenciasSocial/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
130
IV Jornadas TIMM
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
131
IV Jornadas TIMM
¿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
132
IV Jornadas TIMM
¿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)
133
IV Jornadas TIMM
¿Por qué a grupos?
134
[10] A. Jameson et. al., “Recommendation to Groups”, The Adaptive Web, Springer, 2007
IV Jornadas TIMM
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
135
IV Jornadas TIMM
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
136
IV Jornadas TIMM
TendenciasSocial/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
137
IV Jornadas TIMM
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
138
[11] G. Adomavicius et. al., “Context-Aware Recommender Systems”, Tutorial at RecSys 2008
IV Jornadas TIMM
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
139
[12] L. Baltrunas, “Exploiting Contextual Information in Recommender Systems”, RecSys 2008
IV Jornadas TIMM
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?
140
IV Jornadas TIMM
Contexto
141
IV Jornadas TIMM
Contexto
142
IV Jornadas TIMM
Contexto
143
IV Jornadas TIMM
Contexto
144
IV Jornadas TIMM
Contexto
Importante detectar el contexto y asociarlo a las acciones
145
IV Jornadas TIMM
Contexto
146
IV Jornadas TIMM
TendenciasSocial/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
147
IV Jornadas TIMM
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
148
[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
Explicaciones
149
Your!!!
for You!!!
for You!!!
IV Jornadas TIMM
Explicaciones
Pero también hay que explicar “más allá” de una descripción general
Podemos utilizar su comportamiento/compras previas para dar explicaciones
150
IV Jornadas TIMM
Explicaciones
151
IV Jornadas TIMM
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
152
IV Jornadas TIMM
Explicaciones
También podemos dar información social para explicarlas
153
IV Jornadas TIMM
Explicaciones
154
IV Jornadas TIMM
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)
155
IV Jornadas TIMM
TendenciasSocial/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
156
IV Jornadas TIMM
Otro tipo de elementos
Podemos tratar cualquier elemento como un item
Pero no aprovechamos las peculiaridades del dominio
Y hay dominios muy peculiares
157
IV Jornadas TIMM
Otro tipo de elementos
158
IV Jornadas TIMM
Otro tipo de elementos
159
IV Jornadas TIMM
Otro tipo de elementos
160
IV Jornadas TIMM
Otro tipo de elementos
161
IV Jornadas TIMM
Otro tipo de elementos
162
IV Jornadas TIMM
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
163
IV Jornadas TIMM
TendenciasSocial/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
164
IV Jornadas TIMM
TendenciasBasadas 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
165
IV Jornadas TIMM
166
Sistemas deRecomendación
Técnicas básicas
Tendencias
Oportunidades
IV Jornadas TIMM
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
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
168
IV Jornadas TIMM
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
169
IV Jornadas TIMM
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
170
IV Jornadas TIMM
Minería de Opiniones
171
IV Jornadas TIMM
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
172
IV Jornadas TIMM
...¿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
173
IV Jornadas TIMM
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
174
IV Jornadas TIMM
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
175
IV Jornadas TIMM
Problemas CGU
176
IV Jornadas TIMM
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
177
IV Jornadas TIMM
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
178
IV Jornadas TIMM
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
179
IV Jornadas TIMM
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
180
IV Jornadas TIMM
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
181
IV Jornadas TIMM
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
182
IV Jornadas TIMM
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
183
IV Jornadas TIMM
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
184
IV Jornadas TIMM
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
185
IV Jornadas TIMM
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?
186
IV Jornadas TIMM
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
187
IV Jornadas TIMM
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.
188
IV Jornadas TIMM
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)
189
IV Jornadas TIMM
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
190
IV Jornadas TIMM
CB-RS Multilingüe/Semántico
191
IV Jornadas TIMM
CB-RS Multilingüe/Semántico
192
F. Carrero et. al., “In the Development of a Spanish Metamap”, CIKM 2008
IV Jornadas TIMM
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
193
IV Jornadas TIMM
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
194
IV Jornadas TIMM
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”)
195
IV Jornadas TIMM
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.
196
IV Jornadas TIMM
197
http://www.josek.net
http://twitter.com/josek_net
http://www.linkedin.com/in/jccortizo