Pregunta de entrevista para Ingeniero de machine learning

¿Cómo decides entre puntuación en batch e inferencia en tiempo real para un modelo?

Qué evalúa el entrevistador, cómo estructurar tu respuesta y un ejemplo hablado que puedes adaptar.

Respuesta rápida

Decide a partir de la frescura y de la forma de la petición. Si las características y la población se conocen de antemano y las predicciones siguen siendo válidas durante horas, precalcula en batch y sirve desde una tabla de consulta, que es más simple, más barato y mucho más fiable. Ve a tiempo real cuando las características dependen de la petición actual, cuando el conjunto de entidades no está acotado, o cuando la obsolescencia perjudica de verdad a la decisión.

Por qué lo preguntan los entrevistadores

Es una pregunta de criterio arquitectónico, y los entrevistadores quieren verte optar por lo simple por defecto. Mucha gente tira de un servicio de baja latencia donde bastaría un trabajo nocturno y una consulta, lo que multiplica el coste operativo para nada. Las mejores respuestas mencionan el patrón híbrido, precalculando las características pesadas en batch y combinándolas con señales del momento de la petición.

Cómo estructurar tu respuesta

  • Parte de los requisitos de frescura y de la disponibilidad de las características.
  • Defiende el batch como opción por defecto más barata cuando encaja.
  • Nombra las condiciones que obligan al tiempo real.
  • Ofrece el patrón híbrido como el término medio habitual.

Ejemplo de respuesta

Ejemplo hablado, en primera persona

Empiezo con dos preguntas: cuánto puede envejecer la predicción, y si sé de antemano a quién voy a puntuar. Para algo como una puntuación semanal de abandono sobre una base de clientes existente, ambas respuestas favorecen el batch. Ejecuto un trabajo nocturno, escribo las puntuaciones en una tabla, y servir se convierte en una consulta por clave primaria que básicamente no puede fallar. Sin acelerador en la ruta de la petición, sin arranques en frío, y si el trabajo se rompe todavía tengo las puntuaciones de ayer, que es un fallo mucho más suave que un timeout. El tiempo real se gana su sitio cuando las características vienen de la propia petición, como lo que el usuario acaba de escribir o lo que tiene ahora mismo en el carrito, o cuando la entidad puede no existir todavía, como una sesión recién creada. La mayoría de los sistemas que he construido acabaron híbridos: agregados pesados calculados en batch y cacheados, unidos en el momento de la petición con un puñado de señales vivas, y luego puntuados. Eso mantiene barata la ruta online sin dejar de reaccionar a lo que acaba de pasar. El error que intento evitar es elegir tiempo real por un diagrama de arquitectura más bonito cuando nada aguas abajo consume de verdad esa frescura.

¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.

Mira cómo funciona

Preguntas de seguimiento que puedes esperar

  • ¿Cómo manejarías un trabajo batch que falla a mitad de camino?
  • ¿Qué te cuesta el patrón híbrido en complejidad?
  • ¿Cómo evitas que el cálculo de características batch y online diverja?

Más preguntas para Ingeniero de machine learning

Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.

Predecir mis preguntas

Ensaya las preguntas difíciles antes de que te las hagan

Practica con un copiloto en vivo y entra preparado. Un Session Pass de $29 te lleva a través de la entrevista sin suscripción y sin ataduras.

Consigue GhostPilot