Descripción general de las recomendaciones
Los sistemas de recomendación son una de las aplicaciones más exitosas y extendidas del aprendizaje automático en las empresas. Puedes usar un sistema de recomendación para ayudar a tus usuarios a encontrar contenido atractivo en un gran volumen de contenido. Por ejemplo, Google Play Store ofrece millones de aplicaciones, mientras que YouTube ofrece miles de millones de vídeos, y cada día se añaden más aplicaciones y vídeos. Los usuarios pueden usar la búsqueda para encontrar contenido nuevo, pero esta función está limitada por los términos de búsqueda que utilicen. Un sistema de recomendación puede sugerir contenido que los usuarios no habrían buscado por su cuenta. Para obtener más información, consulta el artículo Descripción general de los sistemas de recomendación.
Los algoritmos de aprendizaje automático de los sistemas de recomendación se suelen clasificar en las siguientes categorías:
- Filtrado basado en el contenido: usa la similitud entre los elementos para ofrecer recomendaciones. Por ejemplo, si un usuario ve dos vídeos de gatos adorables, el sistema de recomendaciones puede recomendarle más vídeos de animales adorables.
- Filtrado colaborativo: usa las similitudes entre usuarios (basadas en las consultas de los usuarios) para ofrecer recomendaciones. Por ejemplo, si el usuario A busca contenido similar al del usuario B y el usuario B indica que le gusta el vídeo 1, el sistema de recomendaciones puede recomendar el vídeo 1 al usuario A, aunque este no haya visto ningún vídeo similar.
Modelos de factorización de matriz
Los modelos de factorización de matriz se usan mucho como método de filtrado colaborativo en sistemas de recomendación.
En un modelo de factorización de matrices, los pares de usuario-elemento se asignan a una matriz bidimensional, con los usuarios únicos en un eje y los elementos únicos en el otro. Las valoraciones que ha dado un usuario a los artículos se encuentran en las celdas de la matriz. No es necesario que esta matriz esté completa. La mayoría de las veces, los usuarios no tendrán un valor para cada elemento. El objetivo del modelo de factorización de matriz es crear dos matrices de pesos densas más pequeñas que, al multiplicarse, aproximen los valores de las celdas de la matriz original y proporcionen valoraciones predichas para las celdas vacías de la matriz.
Una de las matrices más pequeñas contiene los usuarios únicos en un eje y el número de factores latentes en el otro eje, tal como se especifica en la opción NUM_FACTORS
de la instrucción CREATE MODEL
. La otra matriz más pequeña contiene los elementos únicos en un eje y el número de factores latentes en el otro eje. En esta matriz, los pesos de los factores latentes se generan mediante el algoritmo usado para entrenar el modelo, en función de las combinaciones de usuario-elemento de la matriz de entrada.
Para obtener más información, consulta Factorización de matrices.
Puedes usar un modelo de factorización de matriz con la función ML.RECOMMEND
para hacer recomendaciones.
Otros modelos de recomendación
Para ampliar un sistema de recomendaciones basado en filtrado colaborativo más allá de lo que es posible con un modelo de factorización de matrices, puedes usar modelos de red neuronal profunda (DNN) y Wide and Deep con la función ML.PREDICT
para hacer recomendaciones. Estos modelos pueden incorporar funciones de consulta y de elemento para mejorar la relevancia de las recomendaciones. Para obtener más información, consulta los siguientes recursos:
- Recomendación mediante modelos de redes neuronales profundas
- Redes neuronales profundas para las recomendaciones de YouTube
- Aprendizaje amplio y profundo para sistemas de recomendación
Conocimientos recomendados
Si usas la configuración predeterminada en las instrucciones CREATE MODEL
y las funciones de inferencia, puedes crear y usar un modelo de recomendación aunque no tengas muchos conocimientos sobre aprendizaje automático. Sin embargo, tener conocimientos básicos sobre el desarrollo de aprendizaje automático y, en concreto, sobre los modelos de recomendación, te ayuda a optimizar tanto tus datos como tu modelo para obtener mejores resultados. Te recomendamos que utilices los siguientes recursos para familiarizarte con las técnicas y los procesos de aprendizaje automático:
- Curso intensivo de aprendizaje automático
- Introducción al aprendizaje automático
- Aprendizaje automático intermedio
- Sistemas de recomendación