Sistemas de recomendación de contenidos, adivina qué piensan tus clientes

 

Actualmente existen miles de sitios en Internet que ofrecen multitud de productos a precios competitivos, con una garantía aceptable de calidad y entrega que genera una satisfacción en la experiencia de compra bastante positiva.

Sin embargo no todos los e-commerce, Marketplaces, e-shops y demás son iguales, y no sólo por la variedad de productos que ofrecen o su forma de pago y entrega, sino por la capacidad de responder a las necesidades de sus consumidores de forma rápida y sencilla.

El e-commerce más popular en España es Amazon, que curiosamente sólo tiene 5 años de vida en nuestro país y que a finales de 2015 ya duplicaba el número de usuarios únicos que tenía otro gigante de las ventas físicas, como El corte inglés.

Uno de los motivos que más han contribuido al éxito de estas plataformas de venta de productos es su sistema de recomendación de productos, donde los consumidores pueden encontrar de forma fácil y accesible los artículos que están buscando y que mejor se ajustan a sus necesidades con muy poco esfuerzo.

Sistemas de recomendación de contenidos hay muchos, desde los que analizan los patrones de navegación de los usuarios, hasta los que se basan en el análisis de la información de los productos que se venden en el e-commerce. Todos ellos se basan en la recopilación de grandes volúmenes de información para un posterior tratamiento de la misma, con el fin de generar patrones de comportamiento que ayuden a analizar de forma rápida la siguiente interacción de un cliente concreto en un momento de tiempo determinado.

Los algoritmos de recomendación de contenidos pueden verse como una función matemática en la que en base a unos valores de entrada (datos de usuarios y datos de productos), generan una “lista de recomendación” en la que para cada cliente, cada producto tiene un valor de afinidad y por lo tanto un valor de recomendación.

 

A continuación enumeramos las principales diferencias entre los sistemas de recomendación más usados actualmente:

1. Sistemas basados en el análisis de usuarios: Basan sus cálculos en analizar los datos de los clientes o consumidores, intentando encontrar respuestas como: “Dime que es popular entre usuarios parecidos a mi“. Este tipo de técnicas se basan en la generación de identidades denominadas “gemelos”, en función de la similitud en los atributos seleccionados para su comparación. Estos sistemas no se basan en el análisis de los productos que se ofertan al cliente y por lo tanto, de forma recursiva generaran recomendaciones cada vez más monótonas, sin ahondar en el descubrimiento de nuevos productos del agrado de los consumidores.

 

2. Sistemas basados en el análisis de contenidos: estos sistemas basan sus métricas en el análisis de las características de los productos que se ofertan respondiendo a la cuestión “productos similares a aquellos que te gustan“. El modelo de análisis de contenidos se basa en la extracción de información de los productos, identificando una serie de keywords que serán asociadas a cada producto. Este modelo se ajusta muy bien a sistemas de recomendación donde el consumidor busca productos siempre del mismo tipo ya que es capaz de recomendar nuevos productos independientemente de que estos hayan sido puntuados de forma previa. Sin embargo carece, como en el caso anterior, de la capacidad de sorprender al usuario, ya que sólo recomendará productos englobados a unas características bien definidas.

 

3. Sistemas basados en el conocimiento: Juegan con la recopilación explícita de la demanda o necesidad de sus usuarios y se ajustan a los parámetros de búsqueda de estos. Los usuarios fijan una serie de criterios de demanda que se convierten en restricciones. El objetivo de estos modelos es generar una recomendación en función de los productos y del número de restricciones que cumplan para los clientes. Este modelo es sencillo ya que no tiene efectos de cold-start por la ausencia de información en las primeras interacciones de la recomendación, sin embargo es difícil generar recomendaciones muy precisas ante restricciones complejas.

4. Sistemas basados en filtrado colaborativo: Son los más usados y pueden verse como una combinación de varios elementos de los anteriores sistemas, el concepto de éstos está basado en la afirmación de que el comportamiento de los usuarios parecidos en el pasado generará un comportamiento parecido en el futuro, o más comúnmente denominado efecto “boca a boca“. Los productos que van a ser recomendados por el sistema están catalogados bajo un sistema discreto de puntuaciones determinadas por los usuarios. De esta manera la estructura determinará, de forma numérica, la afinidad de un usuario ante un producto determinado.

 

Estos sistemas tienen la ventaja de que no es necesario conocer la información exacta del producto a recomendar sino la valoración o puntuación generada por los usuarios ante dicho producto. Además estos sistemas mejoran con el tiempo, dado que su precisión aumenta progresivamente en función del número de usuarios dentro del sistema y del número de valoraciones que estos hagan de los productos que lo componen.

Dentro de los algoritmos de filtrado colaborativo, uno de los más usados es el denominado “item-based“, categorizado por determinar la semejanza entre productos y no entre usuarios para hacer las predicciones. Este algoritmo se denomina también “model based” ya que se calcula en modelo de predicción offline que se actualiza periódicamente en función generalmente del número de valoraciones de productos añadidas después del último reentreno. El modelo almacena para cada producto, los N productos más similares. Para predecir la valoración que un usuario U haría de un producto P, se utilizan las valoraciones que el producto P ha recibido de los productos N más similares.

 

El aumento de las prestaciones de los sistemas de procesamiento actuales hacen que los retos computacionales que hace unos años eran barreras infranqueables, actualmente sean problemas abordables con solución fácilmente alcanzable. La mayoría de los sistemas de recomendación hoy en día se basan en arquitecturas Big Data, donde su gran capacidad de escalabilidad hacen que el aumento del número de usuarios o productos que integran sus bases de recomendación, sean problemas con solución rápida.

Como ejemplo final, cabe que la mayoría de los sistemas descritos anteriormente son fácilmente programables bajo la librería de Machine Learning MLlib de Spark que a su vez se integra con NumPy (Python) o con el lenguaje de programación para análisis estadístico R.

Ingeniero en Informática de Gestión, autodidacta y entusiasta tecnológico. Ligado profesionalmente con el vasto mundo del marketing y su relación con la transformación digital. Seguidor, defensor y en la medida de lo posible influenciador de la adopción de la tecnología móvil como soporte del día a día. Early adopter de gadgets tecnológicos, apasionado lector y consumidor de contenidos audiovisuales. Actualmente Product Manager de la unidad de Marketing Digital en Future Space