View
603
Download
3
Category
Preview:
Citation preview
Evaluando sistemasde recomendacion
Blanca Vargas Govea
Grupo de Sistemas de RecomendacionDepartamento de Ciencias Computacionales
CENIDET
30 de noviembre de 2011
Contenido
1 Introduccion
2 Metodologıa
3 Lo mınimo para evaluar
4 Por grupos
5 Atributos de contexto
6 Conclusiones
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 2 / 34
¿Por que evaluar?
Mostrar que el sistemacumple su objetivo.
Analizar deficiencias ycorregirlas.
Comparacion con otrossistemas/algoritmos.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 3 / 34
Dificultades 1/2
Gran cantidad dealgoritmos.
Distintas tareas.
No hay metodologıaestandar (¿es viable?)
Cuestionamiento enelegir las metricas.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 4 / 34
Dificultades 2/2
Escasez de datos deprueba.
No se consideran lasdiferencias de lossistemas.
La evaluacion no reflejaaspectos destacables.
El mismo esquema deevaluacion no funcionapara todos.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 5 / 34
¿Que se esta haciendo?
Nuevas metricas.
Busqueda demetodologıa unica.
Enfoques centrados enel usuario.
Tomar en cuenta lascaracterısticas de losdatos.
Nuestro enfoque
Analisis estadıstico-particionamiento y de atributos de contexto.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 6 / 34
Metodologıa
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 7 / 34
¿Como?
Restaurants
Rat
ings
0
5
10
15
20
25
30
35
0 10 20 30 40 50 60 70 80 90 100
110
120
130
Lambda
Pre
cisi
on
0.3
0.4
0.5
0.6
0.7
0.8
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
TopU.pop
TopU.nopop
BottomU.pop
BottomU.nopop
Lambda
Rec
all
0.10
0.15
0.20
0.25
0.30
0.35
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
popular
no_popular
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 8 / 34
Sistema a evaluar: Surfeous
Prototipo de sistema de informacion contextual.
Filtrado colaborativo.
Fusiona enfoque social y contextual.
Social: extiende el enfoque usuario-item-rating con anotaciones.
Contexto: incorpora modelos de contexto: entorno, usuario yservicio (ıtem). Uso de web semantica, ontologıas.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 9 / 34
Sistema a evaluar: Surfeous
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 10 / 34
Lo mınimo
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 11 / 34
Identificacion de la tarea
Mostrar todos los ıtems encontrados.
Prediccion del rating.
Mostrar secuencia de ıtems (e.g., musica).
Lista ordenada de ıtems (top n).√
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 12 / 34
Descripcion de datos
Usuario Item Ratingid01 253 0id02 253 1id02 258 0...id138 247 2
top Item Freq pcj pcj acum.1 5085 36 3.10 3.102 2825 33 2.75 5.853 5032 28 2.41 8.26...33 5046 11 0.948 49.31...130 5016 3 0.259 100 %
Cuadro: Frecuencia acumulada ıtems
Usuario Item Rating138 130 1161
Restaurants
Rat
ings
0
5
10
15
20
25
30
35
0 10 20 30 40 50 60 70 80 90 100
110
120
130
Items
Num
ber
of r
atin
gs %
0
10
20
30
40
50
60
70
80
90
100
0 10 20 30 40 50 60 70 80 90 100
110
120
130
Figura: Power law distribution, top 33≈ 50 %.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 13 / 34
Esquema entrenamiento - prueba
Leave one out. Conjunto de prueba: se extrae aleatoriamente unainstancia (usuario,ıtem, rating) por cada usuario. Las instanciasrestantes forman el conjunto de entrenamiento.
n Usuario Item Rating1 id01 253 02 id02 253 13 id02 258 0...1161 id138 247 2
Cuadro: Todos
n Usuario Item Rating1 id01 253 02 id02 253 13 id03 258 0...138 id138 247 2
Cuadro: Conjunto de prueba
n Usuario Item Rating1 id01 253 02 id02 253 13 id02 258 0...1023 id138 247 2
Cuadro: Conjunto de entrenamiento
Repeticiones
10 veces por cada experimento.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 14 / 34
Seleccion de metricas
Metrica TareaMSE = 1
n
∑ni=1(pi − ai )
2 Prediccion de ratings
RMSE =√
1n
∑ni=1(pi − ai )2 Prediccion de ratings
Precision = Relevantes recuperadosRecuperados y Top n
Recuerdo = Relevantes recuperadosRelevantes
ROC Top nTPR = TP
TP+FNFPR = FP
FP+TN
NDCGk = 1Z
∑ki=1
2relevance score(i)−1
log2(i+1) Top n
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 15 / 34
Precision/Recuerdo
Evalua la capacidad del sistema de mostrar el ıtem esperado en lalista.
Precision =Relevantes recuperados
Recuperados
Recuerdo =Relevantes recuperados
Relevantes
¿Que ıtems son relevantes? posibles respuestas:
Los que aparecen en la lista y queestan en el conjunto de prueba.
Los que el usuario considerautiles y toma la recomendacion.
Los que aparecen dentro de lasprimeras n posiciones de la lista yestan en el conjunto de prueba.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 16 / 34
Precision/Recuerdo: ejemplo
Tenemos 5 usuarios en el conjunto de prueba. Para cada usuario serealizan 11 queries en un sistema de recomendacion variando unparametro (0,0-1,0). Los resultados muestran la posicion en la queaparece el ıtem. Obtener la precision y el recuerdo del sistema paralas 5 primeras posiciones de la lista.
Usuario Precision Recuerdou1:{3,3,3,3,2,3,2,4,8} 0.88 (8/9) 0.73 (8/11)u2:{2,2,6,8} 0.5 (2/4) 0.18 (2/11)u3:{10,7,7,6,9,9,8,7,10} 0 (0/4) 0 (0/11)u4:{2,2,2,2,2,2,3,4} 1 (8/8) 0 (8/11)u5:{5,5,5,6,8} 0.6 (3/5) 0.27 (3/11)Promedio 0.596 (2.98/5) 0.38 (1.9/5)
Cuadro: Precision/Recuerdo: Para obtener el promedio, la division es entre elnumero de usuarios en el conjunto de prueba, no sobre los usuariosrecuperados. Algunos usuarios no reciben recomendaciones.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 17 / 34
NDCG: Normalized Discounted Cumulative Gain
Evalua la capacidad del sistema de mostrar el ıtem en las primerasposiciones.
NDCGk =1Z
∑ki=1
2relevance score(i)−1log2(i+1)
Supongamos que en un query para un usuario, el ıtem esperadoaparecio en la posicion 4 de la lista. Esto se representa como:{0,0,0,1,0,0,0,0,0,0}
k 1 2 3 4 5 6 7 8 9 101 0.63 0.5 0.43 0.38 0.35 0.33 0.32 0.30 0.29
DCG4 = 0 + 0 + 0 +21−1
log2(4+1) = 0,43
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 18 / 34
¿Y ahora? receta para evaluacion
Ingredientes:
1 sistema de recomendacion contextual (Surfeous).
2 metricas definidas.
10 pares de conjuntos para entrenamiento/prueba.
Lenguaje de programacion (sugerencia: lenguaje de scripts).
Modo de hacerse:1 Ejecutar el sistema de recomendacion para cada par de
conjuntos: entrenar y mostrar los datos de prueba.2 Surfeous* da como resultados las posiciones en las que aparece
(si aparece) el ıtem esperado (i.e., el del conjunto de prueba).Obtendras 10 conjuntos de resultados.
3 Aplicar las metricas a los resultados. Promediar.4 Graficar.
* La informacion de salida depende del sistema.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 19 / 34
Resultado
Lambda
Pre
cisi
on
0.45
0.50
0.55
0.60
0.65
0.70
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0.1
1.0
subset
All
Lambda
Rec
all
0.15
0.20
0.25
0.30
0.35
0.0
0.2
0.4
0.6
0.8
1.0
subset
All
Lambda
ND
CG
0.46
0.48
0.50
0.52
0.54
0.56
0.0
0.2
0.4
0.6
0.8
1.0
subset
All
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 20 / 34
Por grupos
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 21 / 34
¿Por que? ¿no basta con la evaluacion anterior?
Muestra la capacidad del sistema para generar recomendaciones paradistintas caracterısticas de los datos.
¿Como se comporta pararecomendar ıtemsno-populares?
¿Y para usuarios con pocosratings?
¿Que hace cuando hay mayornumero de ıtems que deusuarios? ¿y viceversa?
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 22 / 34
Popularidad de ıtems
Lambda
Pre
cisi
on
0.52
0.54
0.56
0.58
0.60
0.62
0.64
0.66
0.68
0.70
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
popular
no_popular
Lambda
Rec
all
0.10
0.15
0.20
0.25
0.30
0.35
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
popular
no_popular
Lambda
ND
CG
0.46
0.48
0.50
0.52
0.54
0.56
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
popular
no_popular
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 23 / 34
Ratings. Usuarios con mas ratings.
Lambda
Pre
cisi
on
0.3
0.4
0.5
0.6
0.7
0.8
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
TopU.pop
TopU.nopop
Lambda
Rec
all
0.05
0.10
0.15
0.20
0.25
0.30
0.35
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
TopU.pop
TopU.nopop
Lambda
ND
CG
0.42
0.44
0.46
0.48
0.50
0.52
0.54
0.56
0.58
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
TopU.pop
TopU.nopop
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 24 / 34
Ratings. Usuarios con menos ratings.
Lambda
Pre
cisi
on
0.44
0.50
0.55
0.60
0.65
0.70
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
BottomU.pop
BottomU.nopop
Lambda
Rec
all
0.05
0.10
0.15
0.20
0.25
0.30
0.35
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
BottomU.pop
BottomU.nopop
Lambda
ND
CG
0.35
0.40
0.45
0.50
0.55
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
BottomU.pop
BottomU.nopop
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 25 / 34
Distribucion usuarios-ıtems.
Lambda
Pre
cisi
on
0.50
0.55
0.60
0.65
0.70
0.75
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
lessU.moreItems
moreU.lessItems
Lambda
Rec
all
0.15
0.20
0.25
0.30
0.35
0.40
0.45
0.50
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
lessU.moreItems
moreU.lessItems
Lambda
ND
CG
0.42
0.44
0.46
0.48
0.50
0.52
0.54
0.56
0.58
0.60
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
dataset
lessU.moreItems
moreU.lessItems
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 26 / 34
Atributos de contexto
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 27 / 34
Atributos: posibles dificultades
Problemas dedimensionalidad: lentitud.
Desempeno predictivo:atributos redundantes eirrelevantes.
Exceso de informacionsolicitada al usuario.
Diseno de interfaz.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 28 / 34
Surfeous: atributos de contexto
Service model (23 attributes)latitude,longitude,address,city,state,country,fax,ZIP,alcohol,smoking,dress,accessibility,price,franchise,ambiance,space,services,parking,cuisine,phone,accepts,days,hoursUser model (21 attributes)latitude,longitude,smoking,alcohol,dress,ambiance,age,transportation,marital-status,children,interests,personality,religion,occupation,favorite-color,weight,height,budget,accepts,accessibility,cuisineEnvironment model (2 attributes)time,weather
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 29 / 34
¿Que se hizo? (1/2)
1 Se eligio el modelo de servicio.
2 Se construyo una tabla: item, at1, ..., at23, rating.
3 Se selecciono un algoritmo de seleccion de atributos que tomaraen cuenta la correlacion entre atributos (Weka).
4 Se obtuvo el sub-conjunto: days, hours, accepts, cuisine.
5 Se evaluo ahora con el sub-conjunto.
6 Se evaluo eliminando un atributo a la vez (sub-conjuntos de 3).
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 30 / 34
¿Que se hizo? (2/2)
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 31 / 34
Resultados seleccion de atributos.
Lambda
Pre
cisi
on
0.45
0.50
0.55
0.60
0.65
0.70
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0.1
1.0
subset
All
B
C
D
E
F
Lambda
Rec
all
0.15
0.20
0.25
0.30
0.35
0.0
0.2
0.4
0.6
0.8
1.0
subset
All
B
C
D
E
F
Lambda
ND
CG
0.46
0.48
0.50
0.52
0.54
0.560.
0
0.2
0.4
0.6
0.8
1.0
subset
All
B
C
D
E
F
All: {Todos los atributos}, B:{accepts,cuisine,hours,days}, C:{cuisine,hours,days},D:
{accepts,hours,days},E: {accepts,cuisine,days}, F:{accepts,hours,cuisine}Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 32 / 34
Resultados: seleccion de atributos.
Se logro reducir la dimensionalidad sin degradar el desempeno.
Se identificaron los atributos contextuales relevantes. Criteros dedecision de los usuarios.
Se observa un grupo de prueba homogeneo.
Los atributos relevantes pueden cambiar conforme el conjunto deusuarios aumenta.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 33 / 34
Algunas conclusiones.
Una sola metrica no es suficiente para mostrar distintos aspectosde un sistema.
Una misma metrica puede tener distintos criterios de uso.
Las diversas particiones facilitan el analisis de distintascapacidades del sistema.
Las tecnicas de seleccion de atributos son una herramienta utilpara la reduccion de la dimensionalidad y la identificacion de loscriterios de decision de los usuarios.
Blanca Vargas Govea (CENIDET) Evaluando sistemas de recomendacion 30 de noviembre de 2011 34 / 34
Recommended