Sistemas de recomendaciones
- Tomás Tapia B.
- Sep 3, 2017
- 3 min read
Son variados los usos que pueden darse a los sistemas de recomendaciones, tales como recomendación de películas, libros, metodologías para la seguridad informática, entre otros. Este tipo de técnicas son relativamente recientes en el mundo del análisis de datos y se complementan con los nuevos avances tecnológicos disponibles en la actualidad.
Existen diversos métodos para la aplicación de sistemas recomendadores para las distintas utilidades, entre ellos técnicas de vecinos, mas cercanos, descomposición de matrices, basados en contenido, así como también metodologías híbridas.
Un problema de sistemas de recomendaciones es el conjunto de datos empleado por Netflix para el desafío Netflix Prize entre los años 2006 y 2009, para la creación de un algoritmo de recomendaciones de películas en su página web.
ALGUNOS MÉTODOS PARA LA IMPLEMENTACIÓN DE UN MODELO PARA SISTEMAS DE RECOMENDACIONES
Los métodos que utilizan este tipo de algoritmos son de los más difundidos en la literatura relacionada a sistemas de recomendaciones, dada la simplicidad en la implementación. En este estudio se abordaran las metodologías basadas en usuario, contenido y un algoritmo híbrido. En esta metodología son utilizados elementos de similaridad entre filas de la matriz, para el uso de la técnica de vecinos mas cercanos. La predicción para el caso de los algoritmos basados en vecinos mas cercanos se realiza mediante el uso de matrices de similaridad y distancias entre usuarios, en que algunas de estas medidas son definidas a continuación por Hahsler (2016):
Similitud de Pearson:

(1)
Similitud del Coseno:

(2)
Donde x e y representan dos vectores asociados a calificaciones de películas de un usuario u a una película m.
sd(): Desviación estándar
||.||: Norma de un vector
Una medida de error utilizada en el concurso Netflix Prize es el RMSE (Root Mean Square Error ). Hahsler (2016) define el RMSE de la siguiente forma:

(3)
En que:

Modelo de Sistemas de recomendación basados en algoritmo de vecinos mas cercanos
Un modelo propuesto por Hahsler (2016), basado en algoritmo de vecinos más cercanos, es denotado con la siguiente expresión:

(4)
En que en el caso de un modelo basado en usuario se describe lo siguiente:


Imagen Nº1: Esquema de recomendación basada en similitud entre usuarios
Para el caso de un modelo basado en ítem (películas) la descripción de los elementos del modelo se puede definir de la siguiente forma:


Imagen Nº2: Esquema de recomendación basada en similitud entre ítem
Correspondiente a la predicción de la calificaciones ocultas en el conjunto de entrenamiento y disponibles en el conjunto de prueba, es posible esquematizar de la siguiente forma:
1) Dividir el conjunto de datos en conjunto de prueba y entrenamiento de manera aleatoria. pudiendo variar según las decisiones tomadas por el investigador.
2) Realizar el cálculo de la matriz de similitudes.
3) Construir el modelo con los datos correspondientes al conjunto de entrenamiento
4) Realizar las predicciones
5) Efectuar el cálculo del RMSE
6) Binarización de las predicciones así como calificaciones de los usuarios activos. En este ejemplo se consideran los valores mayores o iguales a 3 como positivos y negativos en caso de que las calificaciónes y predicciones sean menores a 3.
7) Construir la matriz de confusión comprobando las predicciones en el conjunto de prueba
Referencias
Davidsson, C.(2010). Mobile Application Recommender System (Master of Science Programme in Information Technology Engineering). Uppsala University, Sweden.
Forte, R.M. (2015).Mastering Predictive Analytics with R.Birmingham, UK: Packt Publishing Ltd
Gorakala S. & Usuelli M. (2015). Building Recommendation System with R. Birmingham, Uk: Packt Publishing.
Hahsler, M.(2016). recommenderlab: A Framework for Developing andTesting Recommendation Algorithms. Recuperado de https://cran.r-project.org/web/packages/recommenderlab/recommenderlab.pdf
Comments