Saltar al contenido

Cómo empezar con los sistemas de recomendación

22 de enero de 2021

Sistemas de recomendación puede ser el tipo más común de modelo predictivo que puede encontrar una persona promedio.

Proporcionan la base para recomendaciones sobre servicios como Amazon, Spotify y Youtube.

Los sistemas de recomendación son un tema de enormes proporciones si recién está comenzando. Existe una gran variedad de técnicas de preparación de datos, algoritmos y métodos de evaluación de modelos.

No todas las técnicas serán relevantes y, de hecho, el estado de la técnica puede ignorarse por ahora, ya que probablemente obtendrá muy buenos resultados si se enfoca en los fundamentos, p. Ej. trátelo como un sencillo problema de clasificación o regresión.

Es importante conocer los conceptos básicos y tenerlo todo preparado de forma sistemática. Para esto, recomiendo hojear o leer los libros y artículos estándar sobre el tema y mirar algunas de las bibliotecas populares.

En este tutorial, descubrirá recursos que puede utilizar para comenzar con los sistemas de recomendación.

Después de completar este tutorial, sabrá:

  • Los principales artículos de revisión sobre sistemas de recomendación que puede utilizar para comprender rápidamente el estado del campo.
  • Los mejores libros sobre sistemas de recomendación de los cuales puede aprender los algoritmos y técnicas necesarios para desarrollar y evaluar sistemas de recomendación.
  • Las principales bibliotecas y API de Python que puede utilizar para crear prototipos y desarrollar sus propios sistemas de recomendación.

Empecemos.

Cómo empezar con los sistemas de recomendación

Cómo empezar con los sistemas de recomendación
Foto de Paul Toogood, algunos derechos reservados.

Descripción general del tutorial

Este tutorial se divide en tres partes; son:

  1. Artículos sobre sistemas de recomendación
  2. Libros sobre sistemas de recomendación
  3. Bibliotecas de sistemas de recomendación

Artículos sobre sistemas de recomendación

Los artículos de investigación sobre sistemas de recomendación pueden ayudarle a ponerse al día rápidamente sobre el estado del campo.

Recomendado:  Cómo utilizar la visualización de datos de Seaborn para el aprendizaje automático

Específicamente, revise los artículos que utilizan un lenguaje preciso para definir qué es un sistema de recomendación, los algoritmos que se pueden usar, los conjuntos de datos y métricas estándar para comparar algoritmos y sugerencias sobre las técnicas más avanzadas.

Al hojear o leer un puñado de artículos de revisión sobre sistemas de recomendación, puede desarrollar rápidamente una base desde la cual profundizar y comenzar a desarrollar sus propios sistemas.

El campo no cambia tan rápido y las técnicas de hace 10 o 20 años le darán resultados sólidos.

Los artículos de revisión sobre los sistemas de recomendación que recomendé para establecer una comprensión fundamental incluyen:

Técnicas de factorización matricial para sistemas de recomendación

Técnicas de factorización matricial para sistemas de recomendación

Una vez que tenga preguntas sobre técnicas específicas, puede encontrar artículos que se centren en esas técnicas y profundizar.

Puede buscar artículos sobre técnicas específicas aquí:

¿Conoce otros buenos artículos de revisión sobre sistemas de recomendación?
Déjame saber abajo en los comentarios.

Libros sobre sistemas de recomendación

Los libros sobre sistemas de recomendación brindan el espacio para trazar el campo y lo llevan en un recorrido por las técnicas y le brindan los detalles que necesita para comprenderlas, con más amplitud y detalle que un artículo de revisión mucho más corto.

Una vez más, dado que el campo es bastante maduro, los libros más antiguos, como los publicados hace una década, no deben descuidarse de inmediato.

Algunos de los principales libros de texto publicados por investigadores clave en el campo incluyen los siguientes:

Soy dueño de una copia impresa de “Sistemas de recomendación: una introducción” y no puedo recomendarla lo suficiente.

Este libro ofrece una descripción general de los enfoques para desarrollar sistemas de recomendación de última generación. Los autores presentan enfoques algorítmicos actuales para generar propuestas de compra personalizadas, como el filtrado colaborativo y basado en contenido, así como enfoques más interactivos y basados ​​en el conocimiento. También discuten cómo medir la efectividad de los sistemas de recomendación e ilustran los métodos con estudios de casos prácticos.

– Sistemas de recomendación: Introducción, 2010.

Recomendado:  Desarrollar una intuición de cómo funciona el aprendizaje en conjunto

El índice de este libro es el siguiente:

  • Capítulo 1 Introducción
  • Capítulo 2: Recomendación colaborativa
  • Capítulo 3: Recomendación basada en contenido
  • Capítulo 4: Recomendación basada en el conocimiento
  • Capítulo 5: Enfoques de recomendación híbridos
  • Capítulo 6: Explicaciones en los sistemas de recomendación
  • Capítulo 7: Evaluación de sistemas de recomendación
  • Capítulo 8: Estudio de caso: recomendaciones de juegos personalizadas en Internet móvil
  • Capítulo 9: Ataques a los sistemas de recomendación colaborativa
  • Capítulo 10: Toma de decisiones del consumidor en línea
  • Capítulo 11: Sistemas de recomendación y la web de próxima generación
  • Capítulo 12: Recomendaciones en entornos ubicuos
  • Capítulo 13: Resumen y perspectivas
Sistemas de recomendación: introducción

Sistemas de recomendación: introducción

Puede ser bueno obtener un manual sobre el tema con capítulos escritos por diferentes académicos que resuman o defiendan sus técnicas y métodos preferidos.

Recomiendo este manual:

Si está buscando un libro más práctico, le recomiendo:

¿Ha leído uno de estos libros? ¿O conoces otro gran libro sobre el tema?
Déjame saber abajo en los comentarios.

Bibliotecas de sistemas de recomendación

Probablemente no necesite sumergirse en el comienzo del arte, al menos no de inmediato.

Como tal, las bibliotecas estándar de aprendizaje automático son un excelente lugar para comenzar.

Por ejemplo, puede desarrollar un sistema de recomendación eficaz utilizando métodos de factorización matricial (SVD) o incluso un modelo directo de k vecinos más cercanos por elementos o por usuarios.

Como tal, recomiendo comenzar con algunos experimentos con scikit-learn:

Puede practicar con conjuntos de datos del sistema de recomendación estándar si sus propios datos aún no son accesibles o no están disponibles, o si simplemente desea aprender a manejar las cosas primero.

Recomendado:  Implementación del codificador de transformador desde cero en TensorFlow y Keras

Los conjuntos de datos estándar populares para los sistemas de recomendación incluyen:

Si está listo para las técnicas más avanzadas, un excelente lugar para comenzar es «papeles con codigo”Que enumera tanto artículos académicos como enlaces al código fuente de los métodos descritos en el artículo:

Hay una serie de bibliotecas y servicios patentados y de código abierto para sistemas de recomendación.

Recomiendo seguir con las bibliotecas de Python de código abierto al principio, como:

¿Ha utilizado alguna de estas bibliotecas para desarrollar un sistema de recomendación?
Déjame saber abajo en los comentarios.

Resumen

En este tutorial, descubrió recursos que puede usar para comenzar con los sistemas de recomendación.

Específicamente, aprendiste:

  • Los principales artículos de revisión sobre sistemas de recomendación que puede utilizar para comprender rápidamente el estado del campo.
  • Los mejores libros sobre sistemas de recomendación de los cuales puede aprender los algoritmos y técnicas necesarios para desarrollar y evaluar sistemas de recomendación.
  • Las principales bibliotecas y API de Python que puede utilizar para crear prototipos y desarrollar sus propios sistemas de recomendación.

¿Tiene usted alguna pregunta?
Haga sus preguntas en los comentarios a continuación y haré todo lo posible para responder.