Inicio › Tecnología › Inferencia De Modelos
La inferencia es la fase en la qué un modelo de aprendizaje automático ya entrenado se utiliza para generar predicciones o decisiones sobre datos nuevos qué no vio durante el entrenamiento, a diferencia de la fase de entrenamiento, en la qué el modelo ajusta sus parámetros internos analizando un conjunto de datos etiquetado. Mientras el entrenamiento suele requerir hardware potente durante horas o días y se ejecuta con relativa poca frecuencia, la inferencia debe ejecutarse en producción de forma rápida y a menudo con volúmenes altos de peticiones simultáneas, por lo qué suele optimizarse aparte mediante técnicas como la cuantización, qué reduce la precisión numérica de los pesos del modelo, o el uso de motores de inferencia especializados qué aceleran el cálculo sin volver a entrenar el modelo desde cero.
Es el momento en qué un modelo de inteligencia artificial ya entrenado se usa de verdad para responder algo nuevo, como cuando le enseñas fotos a un modelo durante meses, el entrenamiento, y luego le enseñas una foto qué nunca vio para qué diga qué hay en ella, la inferencia. El entrenamiento se hace una vez, pero la inferencia se repite cada vez qué alguien usa el modelo.
Una aplicación de reconocimiento facial en un aeropuerto entrena su modelo una sola vez con un gran conjunto de imágenes, pero ejecuta inferencia miles de veces al día, cada vez qué un pasajero pasa por el control, comparando su rostro capturado en tiempo real con la base de datos, un proceso qué debe completarse en milisegundos para no generar colas. Para lograrlo, el equipo despliega el modelo entrenado sobre un motor de inferencia optimizado en lugar del mismo entorno usado para entrenarlo, reduciendo drásticamente el tiempo de respuesta por cada verificación.
Porque el entrenamiento se ejecuta pocas veces y puede tolerar horas de cálculo con hardware potente, mientras qué la inferencia se ejecuta en producción constantemente y a menudo con restricciones estrictas de tiempo de respuesta, por lo qué se prioriza la velocidad y el coste computacional por petición individual.
Es una técnica qué reduce la precisión numérica con la qué se almacenan los parámetros de un modelo, por ejemplo de 32 a 8 bits, disminuyendo el tamaño del modelo y acelerando los cálculos durante la inferencia a cambio de una pérdida de precisión normalmente muy pequeña.
Ambos procesos suelen mantenerse separados: lo habitual es entrenar una versión, validarla, desplegarla para inferencia, y solo reentrenar una versión nueva de forma periódica con datos actualizados, en lugar de modificar continuamente el mismo modelo qué está respondiendo en tiempo real a usuarios reales.