idea

Recomendación de productos a traves de machine learning usando ElasticSearch

Elasticsearch nos proporciona una herramienta muy eficaz para la recomendación de productos para el comercio electrónico.

¿Qué sabemos sobre nuestros clientes?

Es relativamente fácil saber en qué productos nuestros clientes han mostrado interés o comprado en el pasado.  Utilizando elasticsearch podemos aprovechar esta información para recomendar otros productos que han sido comprados por otros usuarios que han mostrado interés en los mismos productos.

Por ejemplo si nuestro usuario ha clickeado sobre un libro sobre la historia de la Francia medieval, entonces parece obvio que podemos mostrar al usuario los libros más populares en la categoría de historia medieval de Francia.   Sin embargo este enfoque de repetir productos de la misma categoría puede llegar a ser aburrido, y podemos perder muchas posibilidades interesantes de ofrecer productos de los usuarios de otras categorias.  Por ejemplo si el usuario compra una cámara, podriamos ofrecer un libro de fotografía.

Recomendación de producto a traves de machine learning

Elasticsearch nos ofrece la posibilidad de recomendar productos a los usuarios basándose en lo que otros usuarios que compraron los mismos productos han comprado.

Term Aggregation

Por ejemplo tenemos un índice que contiene todos nuestros usuarios, con todos los productos que han adquirido como se muestra en el mapping abajo:

Si un usuario ha comprado una cámara polaroid, entonces podemos buscar los productos más populares adquiridos por otros usuarios que compraron la misma cámara polaroid.  Esta lista es probable que incluya los productos que se relacionan directamente con una cámara polaroid (como película polaroid) e indirectamente relacionados (libros de fotografía).

Significative Term Aggregation

La «term aggregation» puede indicar productos que son populares entre los usuarios de polaroid, pero es posible que algunos de estos productos no tengan relación con cámaras polaroid, (eg. Teléfonos móviles). Estos productos aparecen simplemente porque son populares con todo el mundo (incluyendo a personas que compran cámaras polaroid).  Si queremos evitar esto, podemos utilizar la agregación de términos significativos, que devolverá los productos que son significativamente más populares entre los compradores de camara polaroid en comparación con el conjunto de todos nuestros clientes.

El siguiente ejemplo muestra esta posibilidad:


 

 

Este enfoque es interesante porque en la medida que nuestro historial de datos aumenta, mejoramos la calidad de nuestras recomendaciones: aprendemos mas sobre nuestros usuarios individualmente y en su conjunto.

 

 

 

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *