Machine Learning 5 min lectura

Diseño de sistemas ML para entrevistas: enfoque práctico con un caso de feed

Las entrevistas de diseño de sistemas ML exigen pensar más allá del modelo: datos, despliegue y ciclo de mejora. Aquí encontrará un enfoque claro y un caso práctico de ranking de feed.

Por Redaccion TD
Diseño de sistemas ML para entrevistas: enfoque práctico con un caso de feed

Por qué importan las entrevistas de diseño de sistemas ML

En entrevistas de diseño de sistemas ML no basta con elegir un algoritmo: deben mostrarse decisiones de producto, flujos de datos, arquitectura de servicio y cómo el sistema mejora en producción. Un buen candidato articula cómo las predicciones alimentan decisiones concretas: qué mostrar en un feed, cuándo bloquear una transacción sospechosa o cómo ordenar resultados de búsqueda.

Este texto presenta un enfoque estructurado aplicable a muchos problemas de ML y desarrolla un caso práctico de un sistema de ranking de feed, útil como guía para entrevistas y para implementaciones en productos reales.

Cómo pensar en una entrevista de diseño de sistemas ML

  1. Empezar por el objetivo de producto. Todo sistema ML toma decisiones para servir un objetivo claro: aumentar conversión, reducir fraude, incrementar retención o mejorar satisfacción. Definan el objetivo antes de hablar de modelos.

  2. Definir éxito con tres tipos de métricas:

  • Métricas de modelo: AUC, RMSE, precisión, recall, NDCG (miden desempeño técnico del modelo).
  • Métricas de producto: ingresos, conversión, retención, pérdida por fraude, satisfacción del usuario (miden impacto en negocio).
  • Métricas de sistema: latencia, throughput, disponibilidad, frescura y costo (miden calidad del servicio).
  1. Discutir los datos: qué se recoge, cómo se generan las etiquetas y dónde puede entrar sesgo. Algunas etiquetas son inmediatas (clics), otras llegan con demora (devoluciones, contracargos, quejas). Explique fuentes de datos, almacenamiento, calidad y riesgos de distribución cambiante.

  2. Descomponer el sistema en tres vistas:

  • Camino offline: preparación de datos y entrenamiento en batch; foco en calidad, reproducibilidad y pruebas.
  • Camino online: servicio de inferencia en tiempo real; exige baja latencia y alta disponibilidad.
  • Bucle de feedback: cómo las señales online vuelven al entrenamiento para mejorar el sistema.

Estas tres perspectivas ayudan a estructurar la respuesta en una entrevista y a evitar saltar prematuramente a detalles algorítmicos.

Caso práctico: sistema de ranking de feed

Problema: Diseñar un sistema de feed personalizado que, dado un usuario y un gran conjunto de publicaciones, devuelva una lista ordenada que el usuario encuentre útil o atractiva. El sistema debe manejar frescura, personalización, seguridad, diversidad y baja latencia.

Cómo funciona el sistema (visión general)

Un sistema de feed típico opera en tres etapas:

  • Generación de candidatos: reducir el universo de publicaciones a un conjunto manejable. Fuentes: personas que sigue el usuario, temas de interés, contenido en tendencia, usuarios similares o recuperación por embeddings.

  • Ranking: un modelo más potente puntúa cada candidato según la probabilidad de acciones relevantes (clic, like, comentario, tiempo de visualización). En producción, la puntuación final suele combinar múltiples predicciones ponderadas.

  • Capa de reglas: aplica restricciones de negocio y seguridad: remover contenido inseguro, evitar duplicados, asegurar diversidad y limitar la frecuencia de publicaciones del mismo creador.

En una entrevista, destaque que el sistema no puntúa todas las publicaciones online; primero hace una selección de candidatos.

Señales importantes

El modelo debe considerar señales del usuario, de la publicación y su interacción:

  • Historial e intereses del usuario (largo y corto plazo).
  • Afinidad con el creador.
  • Frescura de la publicación.
  • Tasa de engagement previa de la publicación.
  • Categoría y tipo de contenido.

Estas señales permiten balancear preferencias históricas y señales de intención en la sesión actual.

Elección de modelo y estrategia incremental

Para una primera versión, un modelo basado en árboles de decisión (gradient boosted trees) suele ser suficiente: funciona bien con features tabulares y es más fácil de interpretar y depurar que una red profunda. A medida que el sistema escala, puede añadirse:

  • Recuperación por embeddings para generación de candidatos.
  • Modelos profundos o secuenciales para capturar patrones temporales.
  • Modelos multitarea que predicen varias acciones simultáneamente (clics, tiempo de visualización, shares).

El consejo práctico: empezar simple y priorizar un buen baseline con logging robusto antes de introducir complejidad.

Evaluación: offline vs online

Offline: use métricas como AUC, NDCG, precision@K y recall@K para validar la capacidad de ordenar contenido relevante. Estas métricas son útiles pero incompletas.

Online: las métricas de producción importan más: CTR, tiempo de permanencia (dwell time), duración de sesión, tasa de ocultamiento (hide rate), retención y diversidad de contenido. Evite optimizar solo para clics: el clickbait puede mejorar métricas a corto plazo y dañar la satisfacción a largo plazo.

Principales trade-offs

  • Relevancia vs exploración: demasiada personalización vuelve repetitivo el feed; demasiada exploración muestra contenido irrelevante.
  • Frescura vs calidad: nuevo contenido carece de señales de engagement pero puede ser vital para la experiencia en tiempo real.
  • Latencia vs complejidad: generación de candidatos, lookup de features y scoring deben optimizarse para responder rápido.

En entrevistas, explique cómo balancearía estos trade-offs según prioridades del producto.

Consideraciones prácticas para América Latina

  • Conectividad y dispositivos: muchas experiencias en la región son mobile-first y con conexiones variables. Diseñe mecanismos de caching en el cliente, versiones ligeras del modelo y estrategias offline-friendly.
  • Localización y diversidad cultural: el contenido relevante y las señales pueden variar por país y lengua; considere segmentación geográfica y adaptación de modelos.
  • Privacidad y regulaciones: tenga en cuenta las leyes locales de protección de datos y preferencias del usuario sobre personalización; diseñe opciones de consentimiento y minimización de datos.
  • Recursos operativos: en equipos con restricciones de infraestructura, prefiera pipelines reproducibles y modelos fáciles de mantener.

Consejo para la entrevista

Al presentar su diseño, estructúrelo: objetivo de producto, métricas (modelo, producto y sistema), datos y etiquetado, vistas offline/online/feedback, y finalmente arquitectura y trade-offs. Mencione claramente la generación de candidatos, el ranking y la capa de reglas, y cómo monitorizaría el sistema en producción (logs, alertas y experimentos A/B).

Con este enfoque práctico y organizado demostrará que comprende no sólo cómo construir modelos, sino cómo integrarlos en productos escalables y responsables.

Fuente original: Analytics Vidhya