Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Escalado de la personalización con motores de emparejamiento estables basados en ítems | Sistemas de Filtrado Colaborativo y Emparejamiento de Comportamientos
Análisis de Canasta de Mercado y Sistemas de Recomendación

Escalado de la personalización con motores de emparejamiento estables basados en ítems

Desliza para mostrar el menú

Para comprender cómo los sistemas de recomendación modernos escalan a millones de usuarios y artículos, es fundamental examinar la evolución desde el filtrado colaborativo basado en usuarios hasta el basado en artículos.

Filtrado Basado en Artículos: Funcionamiento y Motivos de Uso

El filtrado colaborativo basado en artículos predice el interés de un usuario en un artículo analizando las similitudes entre artículos, en lugar de entre usuarios. En vez de preguntar

"¿Qué usuarios son similares a este usuario objetivo?",

el filtrado basado en artículos pregunta

"¿Qué artículos son similares a los que el usuario ya prefiere?"

El proceso implica los siguientes pasos:

  • Construir una matriz de similitud entre artículos comparando artículos según los patrones de interacción de los usuarios;
  • Para un usuario determinado, identificar los artículos con los que ha interactuado o calificado positivamente;
  • Recomendar nuevos artículos que sean similares a las elecciones previas del usuario, de acuerdo con la matriz de similitud.
Note
Nota

Este enfoque es ampliamente utilizado porque los artículos (como productos o películas) tienden a tener características más estables que los usuarios, lo que hace que las relaciones de similitud sean más consistentes a lo largo del tiempo. Es sencillo precomputar y almacenar en caché las similitudes entre artículos, acelerando las recomendaciones en tiempo real.

Estabilidad: Por Qué los Métodos Basados en Artículos Son Más Estables a lo Largo del Tiempo

Las preferencias de los usuarios pueden cambiar rápidamente: los usuarios pueden entrar y salir, y sus gustos pueden variar. En cambio, los artículos suelen permanecer constantes, y sus relaciones (como "los usuarios que compraron X también compraron Y") cambian con menor frecuencia. Esto conlleva varias ventajas:

Menor volatilidad: Las puntuaciones de similitud entre artículos se ven menos afectadas por nuevos usuarios o actividad esporádica;

Consistencia: Las recomendaciones se mantienen fiables incluso cuando la población de usuarios fluctúa.

Escalabilidad: Cómo el Filtrado Basado en Artículos Maneja Grandes Conjuntos de Datos

El filtrado colaborativo basado en artículos es especialmente adecuado para sistemas a gran escala por varias razones:

  • El número de artículos suele ser mucho menor que el de usuarios, lo que reduce el tamaño de la matriz de similitud;
  • Precalcular las similitudes entre artículos permite recomendaciones rápidas y escalables para cualquier usuario;
  • Añadir nuevos usuarios no requiere recalcular similitudes: las recomendaciones se generan haciendo referencia a las relaciones existentes entre artículos.

Ejemplo: Implementación del Filtrado Basado en Artículos en una Matriz de Ejemplo

Suponga que dispone de una matriz de interacción usuario-artículo donde cada fila es un usuario y cada columna es un artículo. Al calcular la similitud entre las columnas de artículos, puede recomendar los artículos más similares a los que un usuario ya prefiere. El siguiente código demuestra este proceso utilizando la similitud del coseno.

12345678910111213141516171819202122232425262728
import numpy as np import pandas as pd from sklearn.metrics.pairwise import cosine_similarity # Sample user-item interaction matrix # Rows: users, Columns: items (1 = interaction, 0 = no interaction) data = { 'Milk': [1, 1, 0, 0], 'Bread': [1, 1, 1, 0], 'Butter': [0, 1, 1, 1], 'Eggs': [0, 0, 1, 1] } user_item_matrix = pd.DataFrame(data, index=['User1', 'User2', 'User3', 'User4']) # Computing item-item cosine similarity item_similarity = pd.DataFrame( cosine_similarity(user_item_matrix.T), index=user_item_matrix.columns, columns=user_item_matrix.columns ) # Example: Recommend items similar to 'Milk' for a user who likes 'Milk' target_item = 'Milk' similar_items = item_similarity[target_item].sort_values(ascending=False) recommended = similar_items[1:3] # Exclude 'Milk' itself print('Items most similar to \'Milk\':') print(recommended)

1. ¿Cuál es una ventaja clave de utilizar filtrado colaborativo basado en ítems en lugar de filtrado colaborativo basado en usuarios?

2. ¿Qué afirmación describe mejor por qué el filtrado colaborativo basado en ítems es más escalable para sistemas grandes?

question mark

¿Cuál es una ventaja clave de utilizar filtrado colaborativo basado en ítems en lugar de filtrado colaborativo basado en usuarios?

Selecciona la respuesta correcta

question mark

¿Qué afirmación describe mejor por qué el filtrado colaborativo basado en ítems es más escalable para sistemas grandes?

Selecciona la respuesta correcta

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 3. Capítulo 4

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Sección 3. Capítulo 4
some-alt