Optimización de la selección de modelos de embeddings con clustering TDA: una guía estratégica para bases de datos vectoriales
Al interpretar perspectivas de un seminario web reciente organizado por Zilliz, con los ponentes Gunnar Carlsson y Gabriel Alon – escrito por Wania Shafqat
Los modelos de lenguaje grandes (LLMs) han transformado el procesamiento de datos, pero su rendimiento está estrechamente ligado a la calidad de los embeddings que los impulsan. En nuestro seminario web reciente, Gunnar Carlsson, cofundador y CTO de Blue Light AI, Gabriel Alon, científico de datos sénior, y Stefan Webb, Developer Advocate en Zilliz, exploraron cómo el agrupamiento mediante Análisis Topológico de Datos (TDA) expone debilidades ocultas en los modelos de embeddings. Este artículo desglosa las ideas clave de la sesión y las técnicas para mejorar el rendimiento, junto con investigación adicional y consejos prácticos para ayudarte a seleccionar y desarrollar con confianza modelos que se adapten a tus necesidades únicas.
El desafío: Evaluar modelos de embeddings
Los modelos de embeddings convierten datos brutos no estructurados (texto, imágenes, videos) en vectores de alta dimensión que encapsulan significado semántico. Sin embargo, seleccionar el modelo de embeddings adecuado es un desafío en cualquier implementación de base de datos vectorial.
Figura: Seleccionar el modelo de embeddings adecuado.
Los métodos tradicionales de embeddings a menudo dependen de:
Clasificaciones públicas (MTEB): Los modelos se sobreajustan a datos públicos, con un rendimiento deficiente en tareas del mundo real.
Métricas promedio: Métricas como NDCG@10 ocultan clústeres de fallos donde las consultas críticas tienen un rendimiento insuficiente.
Problemas de escalabilidad: Inspeccionar manualmente grandes conjuntos de datos con más de 100K consultas no es práctico.
Como señaló Gabriel Alon durante el seminario web, una puntuación promedio de 0.34 NDCG (Normalized Discounted Cumulative Gain) podría parecer aceptable, pero si una parte sustancial de las consultas obtiene una puntuación inferior a 0.1, el modelo puede no ser adecuado para aplicaciones del mundo real y pondría en riesgo la confianza del usuario. Por lo tanto, se recomendó encarecidamente evaluar los modelos con tus datos para superar el desajuste entre entrenamiento y prueba y evitar el sobreajuste en benchmarks públicos.
Por ejemplo, considera dos modelos que recuperan resultados para ‘Soportes de televisión’:
Modelo A devuelve [Carrito móvil para TV, Soporte universal para TV, Televisión negra]
Modelo B devuelve [Carrito móvil para TV, Soporte universal para TV, Soporte para TV (2 pies)]
Aunque el Modelo B tiene mayor recall, ni las métricas promedio ni las clasificaciones revelan esta diferencia.
La solución: Agrupamiento TDA navegable
El Análisis Topológico de Datos (TDA) es un marco matemático que estudia la ‘forma’ de los datos, mientras que el agrupamiento navegable añade flexibilidad para ajustar hiperparámetros (por ejemplo, resolución) y obtener perspectivas granulares. Al aplicar técnicas de agrupamiento TDA, como el algoritmo Mapper, puedes crear representaciones visuales que revelan estructuras subyacentes, clústeres y valores atípicos dentro de embeddings de alta dimensión que las métricas promedio tradicionales pasan por alto. El agrupamiento TDA navegable amplía esto mediante:
Mapeo de la topología de los datos: Creación de una estructura basada en grafos del espacio de embeddings.
Identificación de clústeres críticos: Destacar grupos de consultas con bajo rendimiento para mejoras específicas en lugar de una solución única para todos.
Interpretabilidad automatizada: Generar palabras clave y mapas de calor para explicar los clústeres y el comportamiento del modelo.
Figura: Flujo de trabajo de clustering TDA: destacando grupos con bajo rendimiento.
Cómo funciona:
Agrupar consultas por similitud: Agrupar consultas usando embeddings vectoriales.
Evaluar métricas por clúster: Calcular precisión, recall o NDCG para cada clúster.
Optimizar estratégicamente: Ajustar hiperparámetros o cambiar de modelo para clústeres débiles.
A diferencia de los métodos estáticos de clustering (p. ej., K-means o DBSCAN), el clustering TDA navegable detecta puntos críticos de fallo invisibles para las métricas promedio, clasifica objetivamente los modelos (E5 vs. SBERT) en tus datos y procesa más de 100K consultas en minutos.
Caso práctico: Optimización de consultas de comercio electrónico
Usando un subconjunto del dataset Marqo-GS-10M (10M consultas de Google Shopping), Blue Light AI descubrió fallos graves en un modelo de embedding popular (E5). Después de aplicar clustering TDA:
| Clúster de consultas | Tamaño | NDCG |
| Ropa de maternidad | 35 | 0.10 |
| Máquinas de espresso | 32 | 0.11 |
| Chándales para niños | 35 | 0.13 |
Conclusiones:
A pesar de un NDCG promedio de 0.34, alrededor del 30% de los clústeres tuvieron un rendimiento mucho peor (<0.15).
El fine-tuning empeoró el rendimiento de los clústeres críticos.
Sin TDA, estos fallos sutiles permanecen ocultos.
Ciclo de vida del aprendizaje automático: insights de TDA
Comparaciones de modelos:
E5 (NDCG 0.34) superó a SBERT (0.26) en promedio, pero SBERT destacó en clústeres como ‘carteras novedosas’:
| Clúster | NDCG de E5 | NDCG de SBERT | Mejor modelo |
| Carteras novedosas | 0.16 | 0.28 | SBERT |
| Colchones inflables | 0.38 | 0.38 | Empate |
Compensaciones para ahorrar costes:
Cambiar de E5-large a E5-small ahorró almacenamiento, pero provocó caídas significativas de rendimiento en clústeres críticos:
| Tipo de consulta | Caída de rendimiento |
| Cinturillas ajustables | -35% |
| Actividades de polo | -65% |
Escollos del fine-tuning
La monitorización posterior al despliegue reveló que el fine-tuning mejoró el NDCG promedio de 0.35 a 0.45, pero degradó clústeres específicos:
| Tipo de consulta | Caída de rendimiento |
| Láminas de privacidad | -29% |
| Pelado de ajo | -22% |
Lección: Valida siempre el fine-tuning a nivel de clúster, no solo globalmente.
Estrategias posteriores al despliegue
Mitigación de riesgos: Evita promocionar productos en clústeres con puntuaciones bajas hasta que los modelos mejoren.
Human-in-the-Loop: Dirige las consultas con bajo rendimiento a agentes humanos.
Enrutamiento de modelos: Cambia dinámicamente de modelo según el rendimiento del clúster (p. ej., usa SBERT para tipos de consulta específicos).
Integración de TDA con Zilliz Cloud y Milvus
Zilliz Cloud y Milvus simplifican el almacenamiento y la consulta de embeddings. Al aplicar clustering TDA, ofrecen mayor eficiencia de búsqueda, interactividad y asignación optimizada de recursos. Así es como puedes combinarlo con TDA:
Almacenar embeddings
Valida los embeddings antes de indexarlos para reducir recursos desperdiciados:
from pymilvus import connections, Collection
# Connect to Zilliz Cloud
connections.connect(
alias="default",
uri="YOUR_CLUSTER_ENDPOINT", # Example: "https://your-cluster.zillizcloud.com"
token="YOUR_API_KEY"
)
# Load your collection
collection = Collection("product_embeddings")
collection.load()
Evaluar y agrupar con TDA
import pandas as pd
from sklearn.manifold import TSNE
import matplotlib.pyplot as plt
# Load embeddings from Zilliz
embeddings = collection.query(expr="", output_fields=["embedding"])
# Reduce dimensionality for visualization
tsne = TSNE(n_components=2)
embeddings_2d = tsne.fit_transform(embeddings)
plt.scatter(embeddings_2d[:, 0], embeddings_2d[:, 1], c=cluster_labels)
plt.title("T-SNE Visualization of Query Clusters")
plt.show()
Por qué Zilliz sobresale en los flujos de trabajo de TDA
Escalabilidad: Maneja miles de millones de vectores, ideal para TDA a gran escala.
Información en tiempo real: Actualiza los clústeres dinámicamente a medida que entran nuevos datos.
Integración fluida: Los SDK de Python y las API REST encajan en los pipelines existentes.
Para obtener información más profunda, explora la guía de bases de datos vectoriales de Zilliz.
Mejores prácticas para el desarrollo de modelos de embedding
Validar localmente: Prueba los modelos con tus datos, en lugar de confiar únicamente en los benchmarks.
Adoptar TDA temprano: Integra el clustering navegable para detectar problemas durante la creación de prototipos.
Monitorear después del despliegue: Usa las herramientas de Zilliz Cloud para hacer seguimiento continuo del rendimiento de los clústeres.
Preguntas y respuestas: preguntas clave del webinar
Recibimos varias preguntas durante el webinar. A continuación se presentan algunas de las preguntas más frecuentes, junto con las respuestas de Gunnar y Gabriel:
P: ¿Qué fue lo que más te sorprendió al aplicar clustering con TDA?
El ajuste fino empeoró el rendimiento en el 30-40% de los clústeres en nuestro caso de estudio. Por ejemplo, las consultas relacionadas con máquinas de espresso tuvieron un rendimiento mucho peor después del ajuste. Aún más crítico: en e-commerce, una sola consulta podría representar un producto de $20. Si tu modelo falla aquí, eso es una pérdida real de ingresos.
P: ¿Han explorado el ajuste fino de modelos de recuperación frente a modelos de embedding?
¡Sí! En configuraciones de RAG, hemos usado TDA para dividir consultas ambiguas en clústeres distintos. Por ejemplo, la consulta ‘tell me about the draft’: TDA separa los resultados en clústeres de draft de la NBA y reclutamiento militar. Esto ayuda a los modelos de recuperación a priorizar el contexto, evitando resultados irrelevantes.
P: ¿Cómo se compara TDA con métodos como DBSCAN?
TDA ofrece flexibilidad mediante hiperparámetros navegables. Los métodos tradicionales como DBSCAN operan sobre mapas de datos fijos. Con TDA, ajustas la ‘resolución del mapa’ como si cambiaras entre proyecciones geográficas para aislar mínimos locales (por ejemplo, clústeres de consultas con bajo rendimiento).
P: ¿Cuál es tu opinión sobre los modelos de embedding dependientes de la consulta?
El mapeo topológico de TDA complementa naturalmente esta tendencia. Por ejemplo, las características de autoencoders dispersos de modelos como los de OpenAI revelan clústeres que los métodos tradicionales pasan por alto. Un caso divide ‘rules’ en clústeres de cumplimiento frente a romper reglas, mostrando cómo los embeddings pueden adaptarse al contexto de la consulta.
P: ¿Cómo pueden los equipos empezar con TDA?
Prueba el paquete de Python Cobalt ejecutando pip install cobalt-ai y explorando la documentación y los recursos en GitHub y Slack para ayudar a solucionar problemas. Este paquete simplifica la integración del clustering con TDA en los flujos de trabajo existentes. Procesa 100K consultas en minutos y se integra con Zilliz.
Conclusión
El webinar ofreció una visión general exhaustiva de cómo el clustering TDA puede transformar la evaluación de modelos de embeddings. Al revelar desgloses detallados del rendimiento mediante clustering navegable, los equipos pueden optimizar la selección de modelos, mejorar la asignación de recursos y mejorar las experiencias de usuario. Cuando se combinan con Zilliz Cloud o Milvus, estos insights conducen a:
Transparencia: Descubre fallos ocultos en los embeddings.
Precisión: Implementa modelos con insights granulares de rendimiento.
Ahorro de costes: Reduce el desperdicio de recursos de cómputo y almacenamiento.
Explora Zilliz Cloud para empezar a hacer clustering de forma más inteligente hoy.
Ver la grabación completa del webinar y las diapositivas
Puedes ver la grabación del webinar en el canal de YouTube de Zilliz y acceder a las diapositivas de la presentación para obtener más insights sobre el clustering mediante Análisis Topológico de Datos (TDA) y la conversación entre Gunnar y Gabriel.
Recursos relacionados
Sigue leyendo

Zilliz Cloud Update: Tiered Storage, Business Critical Plan, Cross-Region Backup, and Pricing Changes
This release offers a rebuilt tiered storage with lower costs, a new Business Critical plan for enhanced security, and pricing updates, among other features.

Zilliz Cloud Audit Logs Goes GA: Security, Compliance, and Transparency at Scale
Zilliz Cloud Audit Logs are now GA, giving enterprises real-time visibility, compliance-ready trails, and stronger security across AWS, GCP, and Azure.

Vector Databases vs. Graph Databases
Use a vector database for AI-powered similarity search; use a graph database for complex relationship-based queries and network analysis.



