Descripción general de la inferencia de modelos
En este documento se describen los tipos de inferencia por lotes que admite BigQuery ML, entre los que se incluyen los siguientes:
La inferencia de aprendizaje automático es el proceso de introducir puntos de datos en un modelo de aprendizaje automático para calcular un resultado, como una única puntuación numérica. Este proceso también se conoce como "operacionalización de un modelo de aprendizaje automático" o "puesta en producción de un modelo de aprendizaje automático".
Predicción por lotes
En las siguientes secciones se describen las formas disponibles de realizar predicciones en BigQuery ML.
Inferencia con modelos entrenados de BigQuery ML
La predicción en BigQuery ML no solo se usa en modelos de aprendizaje supervisado, sino también en modelos de aprendizaje no supervisado.
BigQuery ML admite funciones de predicción a través de la función ML.PREDICT
, con los siguientes modelos:
Categoría de modelo | Tipos de modelos | Qué hace ML.PREDICT |
---|---|---|
Aprendizaje supervisado |
Regresión lineal y logística Árboles de refuerzo Bosque aleatorio Redes neuronales profundas Wide-and-Deep AutoML Tables |
Predice la etiqueta, que puede ser un valor numérico en las tareas de regresión o un valor categórico en las tareas de clasificación. |
Aprendizaje no supervisado | K-medias | Asigna el clúster a la entidad. |
PCA | Aplica la reducción de la dimensionalidad a la entidad transformándola en el espacio abarcado por los vectores propios. | |
Autoencoder | Transforma la entidad en el espacio insertado. |
Inferencia con modelos importados
Con este enfoque, puedes crear y entrenar un modelo fuera de BigQuery, importarlo con la instrucción CREATE MODEL
y, a continuación, ejecutar la inferencia en él con la función ML.PREDICT
.
Todo el procesamiento de inferencias se realiza en BigQuery, con datos de BigQuery. Los modelos importados pueden realizar aprendizaje supervisado o no supervisado.
BigQuery ML admite los siguientes tipos de modelos importados:
- Open Neural Network Exchange (ONNX) para modelos entrenados en PyTorch, scikit-learn y otros frameworks de aprendizaje automático populares.
- TensorFlow
- TensorFlow Lite
- XGBoost
Usa este método para aprovechar los modelos personalizados desarrollados con una amplia gama de frameworks de aprendizaje automático y, al mismo tiempo, beneficiarte de la velocidad de inferencia y la ubicación conjunta con los datos de BigQuery ML.
Para obtener más información, prueba uno de los siguientes tutoriales:
- Hacer predicciones con modelos importados de TensorFlow
- Hacer predicciones con modelos de scikit-learn en formato ONNX
- Hacer predicciones con modelos de PyTorch en formato ONNX
Inferencia con modelos remotos
Con este enfoque, puedes crear una referencia a un modelo alojado en Vertex AI Inference mediante la instrucción CREATE MODEL
y, a continuación, ejecutar la inferencia en él con la función ML.PREDICT
.
Todo el procesamiento de inferencias se realiza en Vertex AI, con datos de BigQuery. Los modelos remotos pueden realizar aprendizaje supervisado o no supervisado.
Usa este método para ejecutar inferencias en modelos grandes que requieran la compatibilidad con hardware de GPU que ofrece Vertex AI. Si la mayoría de tus modelos están alojados en Vertex AI, también puedes ejecutar inferencias en estos modelos mediante SQL, sin tener que crear manualmente flujos de procesamiento de datos para llevar los datos a Vertex AI y devolver los resultados de las predicciones a BigQuery.
Para obtener instrucciones detalladas, consulta Generar predicciones con modelos remotos en Vertex AI.
Inferencia por lotes con modelos de BigQuery en Vertex AI
BigQuery ML tiene asistencia integrada para la predicción por lotes, sin necesidad de usar Vertex AI. También es posible registrar un modelo de BigQuery ML en Model Registry para hacer predicciones por lotes en Vertex AI usando una tabla de BigQuery como entrada. Sin embargo, esto solo se puede hacer mediante la API de Vertex AI y configurando InstanceConfig.instanceType
en object
.
Predicción online
La función de inferencia integrada de BigQuery ML está optimizada para casos prácticos a gran escala, como la predicción por lotes. Aunque BigQuery ML ofrece resultados de inferencia con baja latencia al gestionar datos de entrada pequeños, puedes conseguir predicciones online más rápidas mediante una integración perfecta con Vertex AI.
Puedes gestionar modelos de BigQuery ML en el entorno de Vertex AI, lo que elimina la necesidad de exportar modelos de BigQuery ML antes de desplegarlos como endpoints de Vertex AI. Si gestionas los modelos en Vertex AI, tendrás acceso a todas las funciones de MLOps de Vertex AI, así como a otras funciones, como Vertex AI Feature Store.
Además, puede exportar modelos de BigQuery ML a Cloud Storage para que estén disponibles en otras plataformas de alojamiento de modelos.
Siguientes pasos
- Para obtener más información sobre cómo usar los modelos de Vertex AI para generar texto e inserciones, consulta la información general sobre la IA generativa.
- Para obtener más información sobre cómo usar las APIs de IA de Cloud para realizar tareas de IA, consulta el artículo Descripción general de las aplicaciones de IA.
Para obtener más información sobre las instrucciones y funciones de SQL admitidas para los distintos tipos de modelos, consulta los siguientes documentos: