Sistemas de AA de producción: Inferencia estática versus dinámica

La inferencia es el proceso de realizar predicciones mediante la aplicación de un modelo entrenado a ejemplos sin etiqueta. En términos generales, un modelo puede inferir predicciones de una de las siguientes dos maneras:

  • La inferencia estática (también llamada inferencia sin conexión o inferencia por lotes) significa que el modelo realiza predicciones sobre un conjunto de ejemplos sin etiqueta comunes y, luego, almacena en caché esas predicciones en algún lugar.
  • La inferencia dinámica (también llamada inferencia en línea o inferencia en tiempo real) significa que el modelo solo realiza predicciones a pedido, por ejemplo, cuando un cliente solicita una predicción.

Para usar un ejemplo extremo, imagina un modelo muy complejo que toma una hora para inferir una predicción. Esta probablemente sería una excelente situación para la inferencia estática:

Figura 4: En la inferencia estática, un modelo genera predicciones, que luego se almacenan en caché en un servidor.
Figura 4: En la inferencia estática, un modelo genera predicciones, que luego se almacenan en caché en un servidor.

 

Supongamos que este mismo modelo complejo usa por error la inferencia dinámica en lugar de la inferencia estática. Si muchos clientes solicitan predicciones al mismo tiempo, la mayoría de ellos no las recibirán durante horas o días.

Ahora, considera un modelo que infiere rápidamente, quizás en 2 milisegundos, con un mínimo relativo de recursos computacionales. En esta situación, los clientes pueden recibir predicciones de forma rápida y eficiente a través de la inferencia dinámica, como se sugiere en la Figura 5.

Figura 5: En la inferencia dinámica, un modelo infiere predicciones a pedido.
Figura 5: En la inferencia dinámica, un modelo infiere predicciones a pedido.

 

Inferencia estática

La inferencia estática ofrece ciertas ventajas y desventajas.

Ventajas

  • No te preocupes demasiado por el costo de inferencia.
  • Puede realizar la verificación posterior de las predicciones antes de enviarlas.

Desventajas

  • Solo puede entregar predicciones almacenadas en caché, por lo que es posible que el sistema no pueda entregar predicciones para ejemplos de entrada poco comunes.
  • Es probable que la latencia de actualización se mida en horas o días.

Inferencia dinámica

La inferencia dinámica ofrece ciertas ventajas y desventajas.

Ventajas

  • Puede inferir una predicción sobre cualquier elemento nuevo a medida que llega, lo que es ideal para las predicciones de cola larga (menos comunes).

Desventajas

  • Son intensivos en procesamiento y sensibles a la latencia. Esta combinación puede limitar la complejidad del modelo; es decir, es posible que debas crear un modelo más simple que pueda inferir predicciones más rápido que un modelo complejo.
  • Las necesidades de supervisión son más intensivas.

Ejercicios: Comprueba tu comprensión

¿Cuáles tres de las siguientes cuatro afirmaciones son verdaderas sobre la inferencia estática?
El modelo debe crear predicciones para todas las entradas posibles.
Puedes reaccionar rápidamente a los cambios en el mundo.
El sistema puede verificar las predicciones inferidas antes de publicarlas.
Para una entrada específica, el modelo puede entregar una predicción más rápido que la inferencia dinámica.
¿Cuál de las siguientes afirmaciones es verdadera sobre la inferencia dinámica?
Cuando realizas inferencias dinámicas, no necesitas preocuparte por la latencia de predicción (el tiempo de retardo para devolver predicciones) tanto como cuando realizas inferencias estáticas.
Puedes proporcionar predicciones para todos los elementos posibles.
Puedes realizar una verificación posterior de las predicciones antes de que se usen.