Factorización Matricial en Sistemas Recomendadores Clase de Introducción. Denis Parra 22 de Sep;embre de 2015



Documentos relacionados
Factorización Matricial en Sistemas Recomendadores Clase de Introducción. Denis Parra 30 de Sep<embre de 2014

IIC Sistemas Recomendadores

IIC Sistemas Recomendadores

IIC Sistemas Recomendadores

IIC Sistemas Recomendadores

Máquinas de Factorización { Factorization Machines (FM) } Denis Parra Sistemas Recomendadores IIC do semestre de 2016

Sistemas Híbridos de Recomendación. IIC3633 RecSys 2do semestre de Sep=embre Denis Parra

Recuperación de información desde diferentes perspectivas

Integrando Información de Fuentes Relevantes para un Sistema Recomendador

IIC Sistemas Recomendadores - PUC Chile

IIC3633 Sistemas Recomendadores Functional Matrix Factorizations for Cold-Start Recommendation. Juan Navarro

Práctica 10. Redes Neuronales

Comenzando con MATLAB

Cotizador en línea Manual de Usuario

Manual para la utilización de PrestaShop

CAPÍTULO 4: ALGORITMOS DE APRENDIZAJE

Visualizar y descargar contenidos

BREVE MANUAL DE SOLVER

Cambio de representaciones para variedades lineales.

Uso del Programa Gantt Project

Ampliación de Estructuras de Datos

Sistema de Información de Compras y Contrataciones del Estado (SICE) Manual del Buscador de Artículos, Servicios y Obras

Luis Felipe Duque Álvarez. Estudiante de Ingeniería Electrónica. Grupo de Política y Gestión Tecnológica. Universidad Pontificia Bolivariana Medellín.

Al adquirir Gear Online se hará entrega del modulo de parámetros en cual podemos parametrizar todas las características de todas las áreas que

Centro de Capacitación en Informática

ARQUITECTURA ESCALABLE PARA LA DETECCIÓN DE PATRONES SECUENCIALES DIFUSOS EN MINERÍA DE DATOS CUANTITATIVA

El almacén de indicadores de proceso de negocio en ejecución

INVENTARIO INTRODUCCIÓN RESUMEN DE PASOS

Matrices equivalentes. El método de Gauss

Propuesta de proyecto de investigación: desarrollo de un rastreador web capaz de aprender a identificar la información más relevante

Big Data & Machine Learning. MSc. Ing. Máximo Gurméndez Universidad de Montevideo

Este instructivo ha sido ordenado de manera tal de ir explicando las distintas secciones, que son las siguientes:

Tutorial - Parte 2: Scoring

SÍNTESIS Y PERSPECTIVAS

CAPITULO 6 SISTEMA DE DETECCION DE INTRUSOS

Presentaciones compartidas con Google Docs (tutorial)

Servicio de Apoyo a la Investigación. Tutorial EndNoteWeb

Capítulo 2. Técnicas de procesamiento digital de imágenes y reconocimiento de patrones.

2. Entorno de trabajo y funcionalidad en Arquímedes

Tema 3. Espacios vectoriales

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd

Métodos Iterativos para Resolver Sistemas Lineales

MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO

De manera individual en el colegio o en casa En grupos en el colegio A través del Active Teach en la pizarra digital interactiva en clase

Introducción a selección de. Blanca A. Vargas Govea blanca.vargas@cenidet.edu.mx Reconocimiento de patrones cenidet Octubre 1, 2012

En nuestro capitulo final, daremos las conclusiones y las aplicaciones a futuro

PowerPoint 2010 Modificar el diseño de las diapositivas

Lección 22: Probabilidad (definición clásica)

SUPERACCESS MANUAL INFORMES DE PERSONAL

H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS

Programación I: Funciones y módulos

Datos Personales Datos Académicos Datos socioeconómicos... 11

Con esta nueva versión, si un artículo que está incluido dentro de un Paquete de Ventas tiene precio 0,00, significará gratis.

Ejercicio CASO PRÁCTICO N 1

App para realizar consultas al Sistema de Información Estadística de Castilla y León

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

ÍTEMS DEL MENÚ CREACIÓN Y GESTIÓN (Última revisión: lunes, 9 de marzo de 2009)

MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora

Informática Bioingeniería

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

CAPITULO 4 JUSTIFICACION DEL ESTUDIO. En este capítulo se presenta la justificación del estudio, supuestos y limitaciones de

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

Lic. Claudio Scarso. Lic. Claudio Scarso

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA

Análisis de Resultados

Text Mining: Distancia de Levenshtein

Comparativa de Aproximaciones a SVM Semisupervisado Multiclase para Clasificación de Páginas Web

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

GUÍA DOCENTE. Minería Web

DOCUMENTOS COMPARTIDOS CON GOOGLE DOCS

Aritmética finita y análisis de error

Oferta tecnológica: Vehículos autónomos para transporte de materiales en almacenes

Capítulo 3 Usando GUIDE. 3.1 Acerca de GUIDE

4. CONTENIDO Cómo Añadir Contactos a tu Webmail

Los valores de las respuesta son las puntuaciones que, de cada individuo, o cluster, obtenemos semanalmente durante cinco semanas consecutivas:

Optimización, Solemne 2. Semestre Otoño 2012 Profesores: Paul Bosch, Rodrigo López, Fernando Paredes, Pablo Rey Tiempo: 110 min.

Fórmulas. Objetivos y Definición. Definir fórmulas nos brinda una forma clave de compartir conocimiento y obtener código generado optimizado

Visión global del KDD

M a n u a l Inventarios

Guía Las limitaciones de las pantallas con el Item Placement Tool.

Análisis de los datos

Hacer obligatorio tener persona de contacto.

Kepler 8.0 USO DEL ERP

Descubra las novedades de EasyProf 3.0! Cambios en la filosofía de trabajo

Área Académica: ICBI, Sistemas Computacionales. Profesor: M.C.C Víctor Tomás Tomás Mariano

/05/2009

1 Espacios y subespacios vectoriales.


Personalización de Sistemas de Recomendación

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

1. El entorno de desarrollo Eclipse

Acerca de este manual

MÁQUINA DE VECTORES DE SOPORTE

Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322

Segmentación de color en imágenes digitales usando Visual C#.Net

Árboles AVL. Laboratorio de Programación II

MANUAL PRESTASHOP 1.6

La calidad de los datos ha mejorado, se ha avanzado en la construcción de reglas de integridad.

Técnicas CA Plex Para Mejorar Rendimiento en MS SQL. 11E Eric Giron SODISA - Honduras

Transcripción:

Factorización Matricial en Sistemas Recomendadores Clase de Introducción Denis Parra 22 de Sep;embre de 2015

TOC Contexto Métodos de vecindario y de factores latentes El NeIlix Prize Yehuda Koren & Chris Volinski La solución de Simon Funk para SVD

Próxima clase 1. Matrix factoriza;on (2): Claudio Rojas y Nicolas Torres - SVD++: Koren, Y. (2008, August). Factoriza;on meets the neighborhood: a mul;faceted collabora;ve filtering model. In Proceedings of the 14th ACM SIGKDD interna;onal conference on Knowledge discovery and data mining (pp. 426-434). ACM. - PMF: Mnih, A., & Salakhutdinov, R. (2007). Probabilis;c matrix factoriza;on. In Advances in neural informa;on processing systems (pp. 1257-1264). - NMF: Zhang, S., Wang, W., Ford, J., & Makedon, F. (2006, April). Learning from Incomplete Ra;ngs Using Non- nega;ve Matrix Factoriza;on. In SDM (Vol. 6, pp. 548-552). - SLIM: Ning, X., & Karypis, G. (2011, December). Slim: Sparse linear methods for top- n recommender systems. In Data Mining (ICDM), 2011 IEEE 11th Interna;onal Conference on (pp. 497-506). IEEE. - No usar: - "Matrix Factoriza;on Techniques for Recommender Systems" de Koren, Bell y Volinksy (2009), ya que este se usará de introducción el día martes 22 de Sep;embre - Eigentaste: A Constant Time Collabora;ve Filtering Algorithm - Takács, G., Pilászy, I., Németh, B., & Tikk, D. (2008, October). Matrix factoriza;on and neighbor based algorithms for the neilix prize problem. In Proceedings of the 2008 ACM conference on Recommender systems (pp. 267-274). ACM.

Hasta este punto Content- Based Basado en le perfil del usuario, el cual puede tener diversas representaciones (vector de caracterís;cas, contenido de ítems consumidos, etc) Principal Problema: Se requiere información externa Ejemplo: Pandora Music Genome Project Filtrado Colabora1vo Basado en interacciones y valoraciones de los usuario Principal Problema: Cold Start: New User, New Item Ejemplo: NeIlix (al menos el desaqo presentado en el NeIlix challenge) Neighborhood methods *Latent Factors Methods (MF) Basado en presentacion de Peng Xu: hrp://www.groupes.polymtl.ca/inf6304/ Presenta;ons/20133/matrix- fac.pdf

Las siguientes slides son un resumen del Paper Matrix Factoriza;on Techniques for Recommender Systems de Koren, Bell y Volinksy, ganadores del NeIlix Prize

CF con modelos de Vecindario Modelos que hemos visto basados en calcular relaciones entre los usuarios o entre los ítems a recomendar: - User Based CF (KNN, en la figura) - Item Based CF

Modelos de Factores Latentes Intenta explicar ra;ngs de usuarios caracterizando a items y usuario sobre factores inferidos a par;r de patrones de ra;ngs - Los factores no necesariamente deben conocerse de antemano

Por qué Factorización Matricial? Podemos encontrar factores latentes que nos permiten hacer predicciones, pero además obtender información de relaciones entre usuarios e ítems Más específicamente: Tiene buena escalabilidad (al momento de predecir) Predicciones más precisas Flexibilidad

Un modelo básico de FM

Desaqo: Obtener vectores latentes Técnica fac;ble: SVD ( la misma que vimos la clase pasada para LSI) SVD tradicional no está definida para una matriz muy incompleta Primeros sistemas llenaban la matriz para hacerla más densa: Sarwar, B., Karypis, G., Konstan, J., & Riedl, J. (2000). Applica;on of dimensionality reduc;on in recommender systems- a case study

Llenado de matriz - Se llenaban vacíos usando el ra;ng promedio del usuario o del item - Procedimiento

SVD

Consideraciones Prác;cas Componente off- line (entrenar el modelo, elegir número de dimensiones) y componente online (realizar las predicciones) Decomposición de matriz usuario- item se hace offline. Es O( (m+n) 3 ), mientras que la recomendación basada en correlación es O(m 2 n). Sin embargo, para la predicción, SVD es eficiente pues debe almacenar sólo del orden O(m+n). Número de dimensiones latentes debe determinarse por cross- valida;on.

Volviendo al NeIlix prize Llenar la matriz (imputación) puede ser computacionalmente costoso e incrementa el numero de datos, además de ser sensible a sesgos introducidos por imputación. El método puede inducir a overfi{ng Solución: op;mización considerando regularización

Minimizar el error con Regularización La idea es aprender los vectores de factores q i y p u usando: K : número de pares (u,i) donde r ui es conocido El efecto de la regularización: penalizar valores muy altos en q i y p u

Algoritmos de Aprendizaje Dos métodos son mencionados en el paper de Koren et al. Stochas;c Gradient Descent Fácil Implementación Tiempo de ejecución rela;vamente rápido Alterna;ng Least Squares Se puede paralelizar

SGD: Procedimiento itera;vo Se inicializan pi y qu de forma aleatoria Se calcula un error Y se actualizan q i y p u en la dirección del gradiente

SGD de Simon Funk para el NeIlix Prize: hrp://si er.org/~simon/journal/20061211.html

El problema de recomendación como FM - Matriz Original: 17.000 peliculas x 500.000 usuarios: 8.5*10^9 Supongamos que elegimos 40 factores latentes: nuestro modelo necesitaría almacenar: 40*(17K+500K) parámetros ra;ngsmatrix[user][movie] = sum (userfeature[f][user] * moviefeature[f][movie]) for f from 1 to 40

Cómo actualizar el modelo? uservalue[user] += lrate * err * movievalue[movie]; movievalue[movie] += lrate * err * uservalue[user]; /**.**/ /* Where: * real *uservalue = userfeature[featurebeingtrained]; * real *movievalue = moviefeature[featurebeingtrained]; * real lrate = 0.001; */ sta;c inline void train(int user, int movie, real ra;ng) { real err = lrate * (ra;ng - predictra;ng(movie, user)); } uservalue[user] += err * movievalue[movie]; movievalue[movie] += err * uservalue[user];

ALS Como q i y p u son desconocidos, la función es no convexa, pero se puede rotar entre fijar los qi s para op;mizar los pu s, y luego fijar los pu s para op;mizar qi s SGD es más fácil de implementar y más rápido, pero ALS se puede paralelizar y funciona de forma más óp;ma para casos de implificit feedback (matriz más densa)

Agregando los biases Predicción es luego Y la función de error es

Feedback Implícito y otras variables N(u) denota el conjunto de ítems para los cuáles el usuario ha expresado preferencia implícita, y el item i está asociado con x i Un usuario que mostró preferencia por items en N(u) puede ser caracterizado como: Y normalizando, esto se puede escribir como

Otras variables Atributos asociados al usuario A(u), pueden ayudar a describir al usuario como Luego, el modelo de factorización extendido será:

FM accuracy

Dimensiones latentes

Trust (enlaces sociales) Jamali, M., & Ester, M. (2010, September). A matrix factoriza;on technique with trust propaga;on for recommenda;on in social networks. In Proceedings of the fourth ACM conference on Recommender systems (pp. 135-142). ACM.

Ra;ngs y relaciones sociales

Modelo Gráfico Baseline

Modelo STE

Social MF

Resultados Epinions Flixter

Resultados II

Próxima clase: Agregar información temporal Factorización de tensores Varios versiones de Factorización: PMF NMF WALS Factoriza;on Machines

References Koren, Y., Bell, R., & Volinsky, C. (2009). Matrix factoriza;on techniques for recommender systems. Computer, 42(8), 30-37. Sarwar, B., Karypis, G., Konstan, J., & Riedl, J. (2000). Applica;on of dimensionality reduc;on in recommender system- a case study (No. TR- 00-043). Minnesota Univ Minneapolis Dept of Computer Science. Hofmann, T. (2003, July). Collabora;ve filtering via gaussian probabilis;c latent seman;c analysis. In Proceedings of the 26th annual interna;onal ACM SIGIR conference on Research and development in informaion retrieval (pp. 259-266). ACM.