Pueden los emprendedores_salvar_el_mundo-salas-i-ppt
Implementación de un sistema de recomendaciones con PSO - Final
1. Implementación de un sistema de
recomendaciones con PSO
Ignacio Salas Donoso
Profesora Guía: María Cristina Riff
Profesora Co-referente: Elizabeth Montero
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 1
2. Contenido
• Problema: Paradoja de la Elección
• Sistema de Recomendación Basado en PSO
• Experimentos y Resultados
• Conclusiones
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 2
3. Problema: Paradoja de la elección
Necesito fideos
:(
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 3
4. Problema: Paradoja de la elección
Muchas opciones para una misma necesidad
Elecciones más complejas al aumentar costos
Las experiencias y expectativas definen la elección
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 4
5. Paradoja de la elección
Teoría de la Perspectiva
5
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D.
6. Paradoja de la elección
El Maximizador
Busca y acepta sólo lo mejor
Tienden a estar menos satisfechos con las
elecciones que toman
“El remordimiento del comprador”
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 6
7. Comercio Electrónico
Es en donde más se nota “La paradoja de la elección”
El cliente dispone de más información
El costo de captación es muy elevado
Lealtad a la marca
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 7
8. Sistema de Recomendación Basado en PSO
Tipos de Sistemas de Recomendación
Basado en Contenido Minería de Datos Social Basado en Filtrado
Colaborativo
Ítem
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 8
9. Sistema de Recomendación Basado en PSO
Sistema de Recomendación Basado en Filtrado Colaborativo
Se buscan personas con
intereses similares al usuario
objetivo
Serendipia
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 9
10. Sistema de Recomendación Basado en PSO
Sistema de Recomendación Basado en Filtrado Colaborativo
Problemas
Alto esparcimiento de los datos
El problema del primer voto
Malos resultados cuando no hay
un vecindario
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 10
11. Sistema de Recomendación Basado en PSO
¿Qué se quiere lograr?
Enriqueciendo la información
personal del usuario
Se busca tener buenos
Mejorar la calidad de
resultados, aún cuando no haya
la recomendación una vecindad adecuada
El componente clave, es la
función de estimación del voto
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 11
12. Sistema de Recomendación Basado en PSO
Función de estimación del voto de Breese
Experiencia
Voto
personal del Experiencia de la Vecindad
estimado
Usuario
Correlación de
Pearson
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 12
13. Sistema de Recomendación Basado en PSO
Nueva función de estimación del voto
Se enriquece la experiencia del usuario
Ofrecer un soporte cuando no
haya una vecindad adecuada
Experiencia
personal del
Usuario
Lograr capturar la diversidad de
apreciaciones del usuario
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 13
14. Sistema de Recomendación Basado en PSO
Nueva función de estimación del voto
Dar diferentes importancias a la experiencia personal y grupal
Experiencia
Experiencia de la
personal del
Usuario VS Vecindad
Reconocer qué información Acotar la diversidad
influye más para cada usuario para cada usuario
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 14
15. Sistema de Recomendación Basado en PSO
Nueva función de estimación del voto
Se puede ver como
un problema de
Experiencia personal del Usuario optimización
Desviación
Promedio de
Voto Estándar de Experiencia de la
votos del
estimado los votos del Vecindad
usuario
Usuario
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 15
16. Sistema de Recomendación Basado en PSO
PSO: Optimización por Enjambre de Partículas
Mejor Posición
Personal
Velocidad
Requiere de pocos
parámetros Posición
Se puede implementar en
poco tiempo
Puede manejar varias Mejor Posición
soluciones a la vez Grupal
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 16
17. Sistema de Recomendación Basado en PSO
PSO: Algoritmo
Mientras no se alcance la cantidad de iteraciones
Para cada partícula
Actualizar posición y velocidad
Calcular pBest
Calcular gBest partícula
PSO: Representación
Posición
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 17
18. Sistema de Recomendación Basado en PSO
Dinámica de partículas de Algoritmo PSO
Velocidad Velocidad Experiencia Experiencia
Nueva Actual personal grupal
Posición Velocidad Posición
Vector de 2
Nueva Nueva Actual
dimensiones,
que contiene
los valores de
k0 y k1
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 18
19. Sistema de Recomendación Basado en PSO
Dinámica de partículas
Ítems evaluados por
el usuario objetivo
Experiencia
personal Grupo de
Entrenamiento
Grupo de Validación
Experiencia
grupal
Grupo de Prueba
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 19
20. Sistema de Recomendación Basado en PSO
Fitness
Fitness Voto
Voto real
parcial estimado
Fitness Cantidad de
Fitness
parcial ítems
El óptimo es 0
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 20
21. Sistema de Recomendación Basado en PSO
Algoritmo PSO
Para cada usuario
Mientras no se alcance la cantidad de iteraciones
Para cada partícula
Actualizar posición y velocidad
Calcular pBest
Calcular gBest partícula
Almacenar factores k0 y k1 para el usuario, obtenidos
del gBest
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 21
22. Experimentos y Resultados
Casos de Prueba
Book Crossing
ISBN ISBN
278.858 usuarios ID U1 •Voto 1
…
•Voto n
… … … …
271.379 libros ISBN ISBN
ID Um •Voto 1
…
•Voto n
1.149.780 votos de
77.837 usuarios
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 22
23. Experimentos y Resultados
Experimento 2: Contraste entre
Experimento 1: Prueba de Generalización resultados de la función de Breese y la
propuesta
Grupo 1: Usuarios que han evaluado más de 300 ítems
Grupo 2: Usuarios que han evaluado entre 100 y 200 ítems
Grupo 3: Usuarios que han evaluado entre 50 y 150 ítems
Cada grupo tiene 50 usuarios elegidos al azar
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 23
24. Experimentos y Resultados
Promedios de Fitness de los Promedios de Fitness de los
Usuarios de cada Grupo en el Usuarios de cada Grupo en el
Experimento 1 Experimento 2
0.9
0.9
0.8
Grupo de 0.8
Entrenami
0.7 Función de
ento 0.7 (Breese et al.
Promedio de Fitness
0.6 1998)
Promedio de Fitness
Grupo de 0.6
Validación
0.5
0.5
0.4
Grupo de 0.4
0.3 Prueba Función de
0.3 esta
0.2 Memoria
0.2
0.1 0.1
0 0
Grupo 1 Grupo 2 Grupo 3 Grupo 1 Grupo 2 Grupo 3
Diferencias medias entre el voto real y
el estimado
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 24
25. Experimentos y Resultados
Comparación de cantidad de usuarios para k0 y k1
Grupo 1 Grupo 2 Grupo 3
K0 > K1 K0 < K1 K0 > K1 K0 < K1 K0 > K1 K0 < K1
43% 42% 44%
57% 58% 56%
Se observa una mayor importancia de la
experiencia grupal, pero la personal no lo es
menos
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 25
26. Experimentos y Resultados
Factores k0 y k1 de 25 usuarios del grupo 3
1.6
1.4
1.2
1
0.8
0.6 K0
K1
0.4
0.2
0
-0.2
-0.4
-0.6
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 26
27. Conclusiones
Rendimiento de PSO Pudo encontrar buenas
combinaciones de k0 y k1, para
Tiempo de Ejecución Tiempo de
140
Ejecución cada usuario
120
100 En el grupo 1 se obtuvieron los
Minutos
80
60
mejores resultados
40
20
0 Se pudieron encontrar soluciones
1 2 3
Grupo
cercanas al óptimo, desde 15
Grupo no homogéneo minutos para 50 usuarios
Procesador: AMD Turion II P520 Dual-Core 2.30GHz
Memoria RAM: 3 GB
Tipo de Sistema Operativo: Windows 7 Home Premium, 64 bits
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 27
28. Conclusiones
La desviación estándar mostró ser relevante
para mejorar la calidad de la recomendación
Los factores k0 y k1 pudieron capturar las
prioridades de cada usuario y mejorar los
resultados
El modelo resultante,
logró aprovechar mejor la información
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 28
29. Implementación de un sistema de
recomendaciones con PSO
Ignacio Salas Donoso
Profesora Guía: María Cristina Riff
Profesora Co-referente: Elizabeth Montero
Implementación de un sistema de
recomendaciones con PSO -- Ignacio Salas 29
D.
32. Especificación de cómo se calculó pBest y
gBest
Grupo de
Entrenamiento Grupo de Validación
pBest gBest
Fitness Voto
Voto real
parcial estimado
Fitness Cantidad de
Fitness
parcial ítems
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 32
33. Coeficiente de Correlación de Pearson
Voto del
usuario a por Voto
el ítem i promedio del
usuario a
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 33
34. Sistemas de Recomendación Basados en
Filtrado Colaborativo
1. Asignar un peso a todos los
0.1 usuarios con respecto a la similitud
0.2
con el usuario activo.
0.8
0.7
2. Seleccionar los k usuarios más
parecidos al usuario activo
0.9
1.0
3. Calcular una predicción desde
0.1
una combinación ponderada de los
puntajes de la vecindad
0.7 0.8 0.9 1.0
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 34
35. Experimentos y Resultados
Promedios de Fitness de los Usuarios de cada Grupo en el
Experimento 1
0.9
0.8
Grupo de
0.7 Entrenamiento
Promedio de Fitness
0.6
Grupo de Validación
0.5
0.4
Grupo de Prueba
0.3
0.2
0.1
0
Grupo 1 Grupo 2 Grupo 3
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 35
36. Experimentos y Resultados
Promedios de Fitness de los Usuarios de cada Grupo en el
Experimento 2
0.9
0.8
0.7
Función de (Breese et al. 1998)
Promedio de Fitness
0.6
0.5
0.4
0.3
Función de esta Memoria
0.2
0.1
0
Grupo 1 Grupo 2 Grupo 3
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 36
37. Experimentos y Resultados
Valores de K0 y K1 Grupo 1
4
3.5
3
2.5
2
1.5
K0
1
K1
0.5
0
-0.5
-1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
Usuarios
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 37
38. Experimentos y Resultados
Valores de K0 y K1 Grupo 2
4.5
4
3.5
3
2.5
2
1.5 K0
K1
1
0.5
0
-0.5
-1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
Usuarios
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 38
39. Experimentos y Resultados
Valores de K0 y K1 para el Grupo 3
1.6
1.4
1.2
1
0.8
0.6
K0
0.4
K1
0.2
0
-0.2
-0.4
-0.6
1 2 3 4 5 6 7 8 9 1011121314151617181920212223242526272829303132333435363738394041424344454647484950
Usuarios
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 39
40. Sistema de Recomendación Basado en PSO
PSO: Optimización por Enjambre de Partículas
Partícula
Posición
Velocidad Velocidad
Mejor Posición Personal (pBest) Posición
Mejor Posición Global (gBest)
Fuente : http://www.yunphoto.net/es/photobase/yp1328.html
Implementación de un sistema de recomendaciones con PSO -- Ignacio Salas D. 40