Recomendar productos con NMF
Recomendar productos con NMF' - 'Recommending products with NMF
Entendiendo NMF y su aplicación como algoritmo de recomendación
Introducción
Los sistemas de recomendación están por todas partes. Netflix los utiliza para mostrarnos películas y programas de televisión que no hemos visto antes, Pinterest los utiliza para mostrarnos ideas e imágenes en las que podríamos estar interesados, y Amazon los utiliza para que compremos productos que antes no habríamos comprado. Muchos de estos sistemas de recomendación aprovechan un proceso llamado filtrado colaborativo, que se refiere al proceso de hacer recomendaciones y predicciones sobre un usuario basándose en los intereses y preferencias de otros usuarios. Algunos algoritmos populares de filtrado colaborativo incluyen Descomposición en Valores Singulares (SVD), Vecinos más Cercanos (KNN) y Factorización de Matrices No Negativas (NMF).
En este artículo, me centraré en cómo aprovechar NMF en un sistema de recomendación. Comenzaré explicando qué es el algoritmo, luego te guiaré a través de un breve ejemplo que muestra cómo aplicar el método a un pequeño conjunto de datos de usuarios y libros para ilustrar las capacidades del algoritmo, y finalizaré explicando los principales beneficios de este método y las cosas a tener en cuenta al prepararse para aplicarlo a tus datos. Asegúrate de revisar este artículo para ver un ejemplo paso a paso de NMF en Python.
Factorización de Matrices No Negativas
NMF es un método de factorización de matrices que descompone una matriz de usuarios-ítems no negativa V en dos matrices no negativas W y H. Estas dos nuevas matrices pueden proporcionar información interpretable sobre los factores latentes y patrones subyacentes que no son necesariamente visibles o explícitamente presentes en los datos originales (ver el artículo de Himanshu Sharma para obtener información adicional sobre cómo encontrar patrones en los datos con NMF).
El algoritmo en sí se puede pensar como un problema de optimización en el que buscamos minimizar el error de
y k es el rango de la descomposición, que se puede encontrar utilizando el Error Cuadrático Medio.
- Principales 12 Repositorios de GitHub de Visión por Computadora
- Aplicación web de composición lingüística de correos electrónicos u...
- Conoce a Med-Flamingo un modelo de base único capaz de realizar un ...
El algoritmo consiste en actualizar de forma iterativa W y H de acuerdo con las ecuaciones a continuación hasta que alcancemos un número máximo especificado de iteraciones o hasta que ||V — WH|| sea menor que una tolerancia que definimos. A continuación se muestra uno de los más simples…