Sistemas de recomendación: personalizando la experiencia del usuario en la era digital

¿Qué son los sistemas de recomendación?

Los sistemas de recomendación son hoy una solución imprescindible para tratar el problema de la sobrecarga de información en el mundo digital. A medida que Internet se expande, también lo hace la cantidad de datos disponibles. Los usuarios, cada vez más, se ven abrumados por la infinidad de opciones a su alcance, desde libros, películas y música hasta productos para comprar y noticias para leer. En este contexto, la tarea de filtrar, seleccionar y presentar la información relevante se ha vuelto crucial. Los sistemas de recomendación cumplen precisamente este papel, ayudando a los usuarios a descubrir contenido y productos que se ajustan a sus preferencias e intereses.

Detrás de estos sistemas hay algoritmos que sugieren productos o servicios a los usuarios en función de sus patrones de comportamiento, gustos, preferencias e historial de interacciones. Su utilidad ha quedado demostrada en múltiples empresas y aplicaciones online, mejorando la experiencia del usuario, aumentando la retención de clientes y generando ingresos adicionales. Empresas líderes en tecnología como Amazon, Netflix y Spotify han revolucionado sus respectivas industrias a través del uso eficaz de tales sistemas.

De la escasez a la abundancia: El fenómeno long tail

Antes de la expansión de internet, la oferta de productos y servicios se veía restringida por limitaciones físicas. Minoristas, tiendas de discos, cines y librerías sólo podían almacenar y distribuir una cantidad limitada de productos debido al escaso espacio disponible. Este fenómeno daba lugar a una economía centrada en los productos más populares, los éxitos de ventas, que se preveía atraerían a la mayoría de los consumidores. La capacidad de albergar y vender solo un número restringido de productos implicaba que muchos artículos menos populares, o que apelaban a un público más específico, rara vez encontraban su camino hasta los estantes de las tiendas.

Sin embargo, con la llegada de internet y la digitalización, estas restricciones físicas fueron eliminadas. Empresas como Amazon, Netflix y Spotify pueden almacenar y distribuir virtualmente una cantidad ilimitada de productos. Este cambio ha permitido la aparición del fenómeno conocido como Long Tail, término acuñado por Chris Anderson en su libro The Long Tail: Why the Future of Business is Selling Less of More.

El concepto de Long Tail o ‘larga cola’ postula que nuestra economía y cultura están cambiando, desplazándose de un enfoque centrado en un pequeño número de hits o productos extremadamente populares en el extremo superior del espectro de demanda, hacia una gran cantidad de nichos en el extremo inferior, la ‘cola’. En otras palabras, aunque individualmente los productos que gozan de menor popularidad o que solo tienen un pequeño número de seguidores pueden parecer menos significativos, colectivamente pueden representar un mercado potencialmente mayor que los pocos productos más populares.

Los sistemas de recomendación juegan un papel fundamental en este nuevo paradigma de la abundancia digital. Al utilizar algoritmos sofisticados, estos sistemas pueden explorar la » larga cola » de productos y servicios para encontrar elementos que sean relevantes para los intereses únicos de cada usuario. Esto no solo beneficia a los consumidores al ofrecerles una gama más amplia de opciones que se ajustan a sus gustos y preferencias individuales, sino que también beneficia a los productores y distribuidores al permitirles llegar a una audiencia más amplia y diversa. El fenómeno Long Tail, impulsado por los sistemas de recomendación, está transformando el panorama de los negocios y la economía, y representa una tendencia importante en el mundo digital.

Gráfico de La Larga Cola (The Long Tail)
Representación gráfica de la Larga Cola. (Elaborado por el autor)

El impacto de los sistemas de recomendación

Los sistemas de recomendación han transformado de manera profunda y continua la forma en que interactuamos con las plataformas digitales y tomamos decisiones de consumo. Las estadísticas que se han acumulado a lo largo del tiempo hablan por sí mismas y reflejan el impacto trascendental de estas tecnologías. Por ejemplo, según un informe de la consultora McKinsey, un impresionante 35% de todas las compras en Amazon resultan directamente de su sistema de recomendación. Esto no solo ilustra la eficacia de estos sistemas, sino también su influencia en las decisiones de compra de los consumidores.

En la industria del streaming, este impacto es aún más notable. Las recomendaciones son responsables del 70% del tiempo que emplea la gente en ver videos en YouTube. En Netflix, el 75% del contenido que ve la gente proviene de recomendaciones. Estas cifras reflejan el poder de los sistemas de recomendación para dirigir a los consumidores hacia contenido que de otro modo podrían no descubrir, alimentando así el fenómeno del Long Tail.

Amazon ha sido un pionero en la implementación y evolución de los sistemas de recomendación. Desde sus primeros días, Amazon reconoció la necesidad de ayudar a los consumidores a navegar por su creciente inventario de productos. A mediados de la década de 1990, la compañía comenzó a utilizar sistemas de recomendación para sugerir libros en función de las compras anteriores de los usuarios. Este enfoque rápidamente se amplió para incluir recomendaciones basadas en el comportamiento de navegación y las compras cruzadas.

Una historia que demuestra claramente la efectividad de los sistemas de recomendación de Amazon es la del libro Touching the Void de Joe Simpson. Este libro de montañismo, que había perdido visibilidad después de su lanzamiento inicial, volvió a la luz gracias al sistema de recomendación automatizado de Amazon. El sistema comenzó a sugerirlo a los clientes que compraban Into Thin Air, otro popular libro del mismo género. Esta recomendación, generada por algoritmo, llevó a un aumento en las ventas de Touching the Void, llegando incluso a superar a Into Thin Air en ventas y convirtiéndose en un bestseller. Esta historia destaca cómo los sistemas de recomendación pueden dar nueva vida a productos menos conocidos y guiar a los consumidores hacia hallazgos que de otro modo podrían haber pasado desapercibidos.

Problemas clave

Los sistemas de recomendación enfrentan varios problemas clave, entre ellos:

  • Recopilación de los valores «conocidos» de la matriz de utilidad. La matriz de utilidad es una estructura de datos que registra las interacciones entre los usuarios y los ítems, a menudo en términos de valoraciones o compras. En esta fase, se recolectan las valoraciones que los usuarios ya han proporcionado para los ítems. Estos datos pueden obtenerse de diversas fuentes. Un método es pedir a los usuarios que valoren los ítems de forma explícita (por ejemplo, utilizando una escala numérica, calificación de 0-5 estrellas, o calificaciones binarias 👍👎). Aunque este enfoque es simple y directo, puede no ser escalable. Otra forma de recopilar valoraciones es de manera implícita, aprendiendo a partir de las acciones de los usuarios. Este enfoque es escalable, pero puede ser difícil discernir el significado de las valoraciones bajas.
  • Extrapolación de valores desconocidos a partir de los conocidos: Una vez que se han recopilado las valoraciones conocidas, el objetivo es utilizar estas valoraciones para predecir las valoraciones desconocidas. Generalmente, el interés se centra en identificar los ítems con altas valoraciones. Los sistemas de recomendación pueden utilizar diversas técnicas para esta extrapolación, de las que las más conocidas son el filtrado colaborativo, el filtrado basado en contenido o métodos híbridos que combinan ambas estrategias.
  • Evaluación de los métodos de extrapolación: Este problema implica medir el éxito de las recomendaciones producidas por el sistema. ¿Cómo sabemos si las recomendaciones son buenas? Existen varias métricas que se pueden utilizar para evaluar los sistemas de recomendación, incluyendo la precisión, la cobertura, la diversidad y la novedad.

Tipos básicos

A continuación, exploraremos los distintos tipos básicos de sistemas de recomendación: basados en contenido, colaborativos y híbridos. Cada uno de estos modelos tiene sus ventajas y desafíos particulares, y se emplean en diferentes contextos según las necesidades específicas. Conocer estos sistemas nos permitirá entender mejor cómo las plataformas en línea personalizan sus ofertas y sugerencias para cada usuario.

1. Sistemas de recomendación basados en contenido

Los sistemas de recomendación basados en contenido son aquellos que sugieren ítems a los usuarios que sean similares a los que han mostrado preferencia en el pasado. Por ejemplo, pueden recomendarse películas con los mismos actores, director o género; noticias con contenido similar; o personas con amigos en común.
Para implementar este tipo de sistemas se necesitan dos componentes clave: perfiles de ítems y perfiles de usuarios.

Un perfil de ítem es un conjunto de características descriptivas que identifican al ítem. En sistemas basados en contenido, se suelen manejar descripciones textuales de las características básicas de los ítems, las cuales pueden ser de forma estructurada o no estructurada. Cuando la descripción de los ítems es texto libre, se emplean técnicas de extracción automática de palabras clave para construir el perfil. Una técnica comúnmente utilizada para esto es TF-IDF (Term Frequency – Inverse Document Frequency), que cuantifica la importancia de un término en un documento y en un conjunto de documentos al mismo tiempo.

Un perfil de usuario tiene como objetivo obtener una representación de los gustos del usuario a partir de la agregación de sus valoraciones pasadas. Una forma simple de construir un perfil de usuario es hacer una media ponderada de los perfiles de ítems que el usuario ha valorado. Sin embargo, este enfoque básico no tiene en cuenta las preferencias del usuario respecto a los ítems, por lo que existen métodos más sofisticados para la construcción de perfiles de usuarios.

Para generar recomendaciones, se estiman las valoraciones que el usuario dará a los ítems basándose en la similaridad entre su perfil y el de los ítems. A menudo, se utiliza la similitud del coseno como medida de la similaridad entre el vector del perfil del usuario y el del ítem bajo estudio. Una vez analizadas las similaridades, un método simple para proporcionar recomendaciones es k-Nearest Neighbours (kNN), que recomienda los k ítems con mayor similaridad al perfil del usuario.

Sin embargo, también existen desafíos en la implementación de estos sistemas. Encontrar las características adecuadas para describir los ítems puede ser complicado, especialmente para ítems complejos como imágenes, películas o música. También puede ser difícil construir un perfil para nuevos usuarios, y existe el riesgo de sobre-especialización, donde las recomendaciones se vuelven demasiado estrechas y no permiten al usuario descubrir nuevos intereses.

2. Sistemas de recomendación basados en filtrado colaborativo

Gráfico de sistemas de recomendación
Gráfico de los sistemas de recomendación. (Elaborado por el autor)

Los sistemas de recomendación basados en filtrado colaborativo son técnicas de recomendación que se basan en la idea de la sabiduría de la multitud (wisdom of crowds) para sugerir ítems. Estos sistemas operan bajo el supuesto básico de que los usuarios que han tenido gustos similares en el pasado continuarán teniéndolos en el futuro.

Los sistemas de filtrado colaborativo se clasifican principalmente en dos tipos: los métodos basados en la vecindad y los métodos basados en modelos. Además, el filtrado colaborativo basado en vecindad puede apoyarse en la cercanía entre usuarios o entre ítems. El filtrado colaborativo basado en usuarios encuentra usuarios similares basándose en sus patrones de valoración y sugiere ítems que usuarios similares han valorado positivamente. Por otro lado, el filtrado colaborativo basado en ítems sugiere ítems similares a aquellos que el usuario ha valorado positivamente en el pasado.

  • Métodos basados en vecindad (o memoria): Estos métodos utilizan las valoraciones de los usuarios para calcular las similitudes entre usuarios o ítems (la memoria del sistema), que posteriormente se emplean para generar recomendaciones. Un ejemplo de esto es el algoritmo k-Nearest Neighbours (kNN).
  • Métodos basados en modelos: Estos métodos utilizan las valoraciones para aprender o estimar un modelo que luego se aplica para predecir las valoraciones. Algunos ejemplos incluyen los clasificadores bayesianos, las redes neuronales, los algoritmos genéticos, los sistemas borrosos y la descomposición matricial basada en SVD.

Para realizar filtrado colaborativo se necesitan los siguientes ingredientes: una lista de usuarios, una lista de ítems, una matriz de valoraciones de usuarios por ítems, una métrica para medir la similitud entre usuarios/ítems, un método para seleccionar un subconjunto de vecinos y un método para predecir una valoración de los ítems que el usuario objetivo aún no ha valorado. Un aspecto crucial del filtrado colaborativo es la matriz de utilidad, que contiene las valoraciones de los usuarios para los diferentes ítems. Esta matriz suele ser dispersa porque le faltan muchos datos, ya que no todos los usuarios valoran todos los ítems.

Respecto a la medición de la similitud, ésta puede realizarse mediante diferentes técnicas, como la Similitud de Jaccard o la Distancia del Coseno. La Distancia del Coseno ajustada se utiliza para normalizar las valoraciones restando a cada valoración el promedio del usuario, de modo que los valores bajos se convierten en negativos y los valores altos en positivos, matizando las diferencias en las escalas de valoración empleadas por los distintos usuarios. Las predicciones de valoraciones se realizan seleccionando un subconjunto de vecinos (k-vecinos) basados en la similitud calculada. Las predicciones se hacen solo con los k-vecinos que han valorado los ítems sobre los que se quiere hacer la predicción. Los métodos para hacer estas predicciones suelen incluir la media aritmética o la media ponderada.

La principal ventaja del filtrado colaborativo es que puede ser aplicado a cualquier tipo de ítem, sin la necesidad de identificar características específicas del ítem para realizar el filtrado. Sin embargo, también presenta desafíos, como el problema de arranque en frío. Este problema se refiere a la dificultad de proporcionar recomendaciones precisas cuando se tiene escasa o ninguna información previa sobre un usuario o un ítem, lo que hace complejo generar una recomendación para un usuario nuevo o para un ítem recién incorporado. También es relevante el desafío de la escasez de datos, dado que puede resultar difícil encontrar usuarios que hayan valorado los mismos ítems. Finalmente, el filtrado colaborativo puede verse afectado por un sesgo de popularidad, ya que tiende a recomendar los ítems más populares. 

2.1 Filtrado colaborativo basado en usuarios

El filtrado colaborativo basado en usuarios es una técnica que considera las similitudes de los patrones de valoración entre diferentes usuarios para realizar predicciones. Esencialmente, esta técnica supone que, si dos usuarios tuvieron comportamientos similares en el pasado, probablemente actuarán de forma similar en el futuro.

Para generar una predicción bajo este enfoque, el primer paso es determinar la similitud entre el usuario objetivo y los otros usuarios. Esta evaluación de similitud puede basarse en diversas métricas, tales como la correlación de Pearson o la distancia del coseno. Posteriormente, se selecciona un grupo de usuarios que presentan similitudes significativas con el usuario objetivo, a los que nos referimos como ‘vecinos’ (k-vecinos). La estimación de la valoración para un artículo específico se deriva de las valoraciones que los usuarios vecinos le han otorgado a dicho artículo. Es importante mencionar que la influencia de cada vecino en la predicción puede ser ponderada en función de su similitud con el usuario objetivo.

A pesar de su gran capacidad para personalizar recomendaciones y su eficacia comprobada, los sistemas de recomendación de filtrado colaborativo basado en usuarios pueden encontrar dificultades en situaciones donde la escalabilidad es un factor crítico o cuando se presentan nuevos usuarios con escasos datos de valoración disponibles. Aunque estos desafíos son significativos, dichos sistemas siguen siendo una herramienta valiosa y muy utilizada en diversas aplicaciones.

En la práctica, los sistemas de recomendación basados en ítems suelen superar a los basados en usuarios, principalmente debido a la naturaleza menos compleja de los ítems. Los ítems suelen clasificarse en un número limitado de géneros o categorías, lo que facilita la identificación de patrones y correlaciones. Por el contrario, los usuarios pueden tener gustos muy diversos y cambiantes, complicando la determinación de similitudes. Además, las propiedades de un ítem suelen ser estables, mientras que las preferencias de los usuarios pueden fluctuar con el tiempo. Así, las similitudes entre ítems tienden a ser más significativas y predecibles, lo que favorece la precisión de las recomendaciones.

En resumen, los sistemas de recomendación basados en filtrado colaborativo hacen uso de las valoraciones y preferencias de los usuarios para generar recomendaciones personalizadas. Aunque estos sistemas enfrentan desafíos como la escasez de datos y el sesgo de popularidad, su capacidad para trabajar con cualquier tipo de ítem y adaptarse a las preferencias cambiantes de los usuarios los hace ampliamente utilizados en diversas aplicaciones, desde el comercio electrónico hasta la música y el cine.

3. Sistemas de recomendación híbridos

Los sistemas de recomendación híbridos buscan combinar lo mejor de diferentes técnicas de filtrado colaborativo, como los basados en usuarios, en ítems y en modelos, para superar las limitaciones inherentes a cada enfoque individual y mejorar la precisión de las recomendaciones.

Un ejemplo de esto puede ser un sistema de recomendación de películas. Imaginemos que un usuario ha valorado altamente varias películas de ciencia ficción, lo que indica una preferencia por este género. Un sistema basado en usuarios buscaría a otros usuarios con valoraciones similares para las mismas películas y usaría sus valoraciones para predecir las películas que le podrían gustar a ese usuario. Sin embargo, este enfoque puede tener problemas si hay pocos usuarios que compartan exactamente los mismos gustos.

Por otro lado, un sistema basado en ítems buscaría películas similares a las que el usuario ha valorado altamente en el pasado. Este enfoque puede ser más efectivo si el usuario tiene gustos muy específicos, pero puede tener problemas si el usuario tiene intereses variados o si hay pocos ítems similares.

Finalmente, un sistema basado en modelos podría aprender patrones más complejos en las valoraciones de los usuarios, pero puede ser más difícil de interpretar y requiere más datos para entrenar eficazmente el modelo.

Un sistema de recomendación híbrido puede combinar diferentes enfoques para optimizar la precisión de sus recomendaciones. Para los usuarios con gustos amplios y variados, podría utilizarse el filtrado basado en usuarios, sacando provecho de la diversidad de sus preferencias. En cambio, cuando los gustos son muy específicos, se optaría por el filtrado basado en contenido (ítems), con el objetivo de seleccionar recomendaciones que se ajusten de manera precisa a sus intereses particulares. Adicionalmente, el filtrado basado en modelos se aplicaría para predecir las valoraciones en escenarios más complejos. De este modo, un sistema híbrido tendría la capacidad de ofrecer recomendaciones más precisas y sólidas en una variedad de situaciones, compensando así las limitaciones inherentes a cada enfoque individual.

Evaluación de sistemas de recomendación

Es fundamental realizar evaluaciones robustas de los sistemas de recomendación para asegurar su eficacia. Existen distintos enfoques para la evaluación, que se pueden clasificar en estudios con usuarios, evaluación online y evaluación offline. Los estudios con usuarios implican experimentar con un grupo selecto en un entorno controlado, recopilando datos mediante cuestionarios. Aunque proporciona información directa de interacción, sus limitaciones radican en que la muestra de usuarios no siempre representa a la totalidad de la población objetivo y la conciencia de estar siendo evaluado puede sesgar las elecciones del usuario.

En la evaluación online, los usuarios reales interactúan con un sistema implementado, permitiendo una exploración y explotación continua de opciones para mejorar la eficacia del sistema. Sin embargo, este método puede generar bucles de retroalimentación que, si el sistema funciona bien, pueden disminuir la diversidad.

La evaluación offline tiene como objetivo verificar la capacidad del sistema para predecir las valoraciones de los usuarios y generar listas de recomendaciones exitosas. Se utilizan métricas de error, como el Error Absoluto Medio (MAE) y el Error Cuadrático Medio (RMSE), para medir las diferencias entre las valoraciones de los datos de prueba y las recomendaciones del sistema. Además, se usan métricas de decisión para observar si el sistema tomó la decisión correcta o no respecto a la inclusión de un ítem en la lista de recomendaciones. Estas métricas incluyen precisión, recall y MAP (Mean Average Precision).

Otros factores relevantes que se deben evaluar son la novedad (la capacidad del sistema para ofrecer recomendaciones desconocidas por el usuario), la serendipia (la capacidad de sorprender al usuario con recomendaciones exitosas), la diversidad (la variedad de recomendaciones propuestas) y la cobertura (la capacidad del sistema para generar recomendaciones para todos los tipos de ítems y usuarios).

Reflexiones finales

Los sistemas de recomendación, basados en la interpretación de gustos y preferencias, han ganado una relevancia considerable en diversos sectores, desde el comercio electrónico hasta las aplicaciones de entretenimiento y salud. Anticipamos un crecimiento constante en su sofisticación, especialmente en la personalización en tiempo real, gracias a las técnicas de machine learning y deep learning.

Aún existen retos y áreas avanzadas a abordar, como las recomendaciones a grupos, las recomendaciones multicriterio, la privacidad y el aprendizaje activo. Estas áreas indican la necesidad de un continuo desarrollo e investigación.

Los sistemas de recomendación, con su diversidad de métodos y aplicaciones, son un campo dinámico y emocionante de investigación. Su relevancia solo puede incrementarse con la continua expansión de la información disponible en línea y la promesa de proporcionar recomendaciones más personalizadas y precisas.

Scroll al inicio