¿Cuál es el mejor sistema de recomendación para aprender como principiante?

Realmente no estoy de acuerdo con la premisa de la pregunta, que uno “aprende” un sistema de recomendación, puede aprender sobre metodologías estadísticas o de aprendizaje automático, como las redes neuronales o las máquinas de Boltzman, que podrían formar parte de su sistema de recomendaciones. En la vida real, hace lo que necesita hacer con los datos limitados que tiene en ese momento y construye todo lo que funciona en ese momento y luego continúa mejorándolo. Compartiré mi experiencia con ellos en un entorno práctico.

  • En un sistema real, por ejemplo, un sitio web de comercio electrónico como Amazon, el “Sistema de recomendación” más simple es solo una lista clasificada de objetos ordenados por su popularidad . Para la mayoría de los sistemas de recomendación, se convierte en la línea de base para medir el rendimiento. Puede ser refinado por ‘filtro’ [ejemplo: si un visitante está mirando un libro en particular en la categoría ‘ciencia ficción’, recomiende los libros más populares en esa categoría]. ¿Demasiado simple? Bueno, así es como empezaron muchos sistemas de recomendación.
  • El siguiente tipo de sistema de recomendación que funciona bien para algunos tipos de problemas es uno basado en un simple ‘ puntaje de similitud ‘ de las características de su producto. Digamos que está ejecutando un sitio web de listado de hoteles como Booking.com. Todos sus hoteles tienen algunas características-ubicación, no. de habitaciones, precio promedio de las habitaciones, servicios como piscinas, etc. Así que reúne toda esta información en una gran martix y aplica métricas de distancia (como la distancia euclidiana para la ubicación expresada en pares de latitud y longitud, o una distancia de Hamming para información binaria) como la presencia de una piscina). Si está visitando la página del producto para el Hotel A, usted recomienda los hoteles ‘más cercanos’ al Hotel A en términos de los puntajes de distancia calculados anteriormente. También puedes ajustar los ‘pesos’ en tus puntuaciones de distancia; por ejemplo, puedes hacer algo como esto:
    Similarity= 2*physical_distance+5*price_distance+3*Amenities_distance
    Básicamente, esto significa que usted está recomendando propiedades que son más similares en términos de sus precios, y su ubicación, si bien es importante, solo tiene alrededor de un 20% de peso.
  • Al final del día, incluso los sistemas Reco más complejos tratan de encontrar una similitud entre lo que un usuario está comprando / navegando y en lo que podría estar interesado. Ingrese al marco de ‘Filtrado colaborativo’. Yo llamo a esto un marco ya que no es un algoritmo en sí mismo. La diferencia entre los métodos anteriores y el método de filtrado colaborativo es que no solo estamos viendo los productos, sino también los clientes. El filtrado colaborativo forma la base de “Los clientes que compraron esto también compraron estos” tipos de sistemas de recuperación. Los algoritmos que utiliza en este marco podrían ser tan simples como un modelo “medio”.

Puede utilizar una función de similitud de su elección, como la euclidiana o Pearson. Una distancia euclidiana entre User1 y User3 en este caso será de 0,66.

  • Los sistemas de Reco basados ​​en el filtrado colaborativo pueden ser tan complejos como desee. Como dije antes, puede usar Redes Neuronales / SVM / Máquinas Boltzman / Cualquier tipo de método basado en el núcleo para encontrar las ‘similitudes’. No voy a entrar en los detalles de estos métodos ya que pidió las metodologías de “principiante”.