Laboratorio 6: BigQuery ML (Machine Learning)

Laboratorio 6: BigQuery ML (Machine Learning)

Objetivos del Laboratorio

  • Comprender la ventaja de entrenar modelos de Machine Learning en la propia base de datos, evitando latencias y riesgos de exportación de datos (data egress).
  • Entrenar un modelo de aprendizaje supervisado de tipo Regresión Lineal para estimar tendencias de gasto analítico.
  • Evaluar la precisión del algoritmo aplicando métricas estándar de regresión como el coeficiente de determinación (R-cuadrado) y el error absoluto medio (MAE).
  • Ejecutar inferencias predictivas en tiempo real sobre nuevos registros directamente con consultas SQL.

Herramientas y APIs Utilizadas

  • BigQuery ML (BQML): Extensión integrada de BigQuery que permite desarrollar modelos predictivos utilizando exclusivamente SQL estándar.
  • bq CLI: Interfaz de línea de comandos empleada para enviar secuencialmente las consultas de entrenamiento, evaluación y predicción.
  • BigQuery API: API encargada de coordinar los recursos distribuidos de computación para la convergencia del algoritmo matemático.

Estructura del Código Desarrollado

  • customer_features.csv: Datos históricos de clientes que asocian atributos cuantitativos (edad, fidelidad, historial de pedidos) con el gasto anual (variable objetivo).
  • main.tf: Declaración de Terraform que despliega el dataset lab06_dataset y la tabla de entrenamiento en una región compatible.
  • 06_01_train_model.sql: Consulta SQL que implementa la definición del algoritmo y procesa los datos para generar el modelo.
  • 06_02_evaluate_model.sql: Consulta que interroga al modelo y extrae los indicadores matemáticos de rendimiento.
  • 06_03_predict_model.sql: Sentencia que utiliza el modelo persistido para inferir resultados predictivos sobre registros simulados.

Paso a Paso del Despliegue

Fase 1: Preparación del Entorno

  • Estructuración de las características de entrenamiento recopilando el comportamiento cuantitativo de clientes históricos.
  • Despliegue del dataset de BigQuery y de la tabla nativa vacía ejecutando el flujo declarativo de Terraform.
  • Carga física del archivo CSV con las características de los clientes utilizando la instrucción bq load.

Fase 2: Entrenamiento y Evaluación

  • Lanzamiento del script de entrenamiento con la sintaxis CREATE OR REPLACE MODEL especificando la opción model_type='linear_reg'.
  • Asociación de la variable predictora declarándola mediante el parámetro de entrenamiento input_label_cols=['yearly_spend'].
  • Auditoría y análisis del rendimiento del modelo ejecutando la función integrada ML.EVALUATE para comprobar la precisión frente al error absoluto medio.

Fase 3: Inferencia Predictiva

  • Diseño de una consulta de predicción estructurada sobre la función analítica predictora ML.PREDICT.
  • Alimentación del modelo con nuevos datos de clientes simulados utilizando una subconsulta basada en la directiva de combinación UNION ALL.
  • Inspección de la columna autogenerada de resultados predicted_yearly_spend para validar el comportamiento del modelo matemático.
Newsletter GCP
¿Quieres estar al día con las últimas novedades de Google Cloud Platform? ¡Suscríbete y no te pierdas nada!