En este instructivo, usarás un modelo de regresión lineal en BigQuery ML para predecir el peso de un pingüino a partir de la información demográfica del pingüino. Una regresión lineal es un tipo de modelo de regresión que genera un valor continuo a partir de una combinación lineal de atributos de entrada.
En este instructivo, se usa el conjunto de datos bigquery-public-data.ml_datasets.penguins.
Objetivos
En este instructivo, realizarás las siguientes tareas:
- Crear un modelo de regresión lineal.
- Evalúa el modelo.
- Haz predicciones mediante el modelo.
Costos
En este instructivo, se usan los siguientes componentes facturables de Google Cloud:
- BigQuery
- BigQuery ML
Para obtener más información sobre los costos de BigQuery, consulta la página Precios de BigQuery.
Para obtener más información sobre los costos de BigQuery ML, consulta los precios de BigQuery ML.
Antes de comenzar
-
En la consola de Google Cloud , en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud .
Roles necesarios para seleccionar o crear un proyecto
- Selecciona un proyecto: Para seleccionar un proyecto, no se requiere un rol de IAM específico. Puedes seleccionar cualquier proyecto en el que se te haya otorgado un rol.
-
Crear un proyecto: Para crear un proyecto, necesitas el rol de Creador de proyectos (
roles/resourcemanager.projectCreator), que contiene el permisoresourcemanager.projects.create. Obtén más información para otorgar roles.
-
Verifica que la facturación esté habilitada para tu proyecto de Google Cloud .
-
Habilita la API de BigQuery.
Roles necesarios para habilitar las APIs
Para habilitar APIs, necesitas el permiso
serviceusage.services.enable. Si creaste el proyecto, es probable que ya tengas este permiso a través del rol de propietario (roles/owner). De lo contrario, puedes obtener este permiso a través del rol de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin). Obtén más información para otorgar roles.
Permisos necesarios
Para crear el modelo con BigQuery ML, necesitas los siguientes permisos de IAM:
bigquery.jobs.createbigquery.models.createbigquery.models.getDatabigquery.models.updateDatabigquery.models.updateMetadata
Para ejecutar inferencias, necesitas los siguientes permisos:
bigquery.models.getDataen el modelobigquery.jobs.create
Crea un conjunto de datos
Para crear un conjunto de datos de BigQuery, selecciona una de las siguientes opciones:Console
En la consola de Google Cloud , ve a la página BigQuery.
En el panel de la izquierda, haz clic en Explorar.

Si no ves el panel izquierdo, haz clic en Expandir panel izquierdo para abrirlo.
En Explorador, expande tu proyecto y, luego, haz clic en Conjuntos de datos.
En la página Conjuntos de datos, haz clic en Crear conjunto de datos.
En el panel Crear conjunto de datos, haz lo siguiente:
En ID del conjunto de datos, ingresa
bqml_tutorial.En Ubicación de los datos, selecciona EE.UU..
Deja el resto de la configuración predeterminada como está.
Haz clic en Crear conjunto de datos.
bq
Para crear un conjunto de datos nuevo, usa el comando bq mk --dataset.
Crea un conjunto de datos llamado
bqml_tutorialcon la ubicación de los datos establecida enUS:bq mk --dataset \ --location=US \ --description "BigQuery ML tutorial dataset." \ bqml_tutorial
Confirma que se haya creado el conjunto de datos:
bq ls
API
Llama al método datasets.insert con un recurso de conjunto de datos definido:
{ "datasetReference": { "datasetId": "bqml_tutorial" } }
Permite trabajar con BigQuery DataFrames.
Antes de probar este ejemplo, sigue las instrucciones de configuración de BigQuery DataFrames en la guía de inicio rápido de BigQuery con BigQuery DataFrames. Para obtener más información, consulta la documentación de referencia de BigQuery DataFrames.
Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura ADC para un entorno de desarrollo local.
Crea el modelo
Crea un modelo de regresión lineal con el conjunto de datos de muestra de Analytics para BigQuery.
SQL
Puedes crear un modelo de regresión lineal con la sentencia CREATE MODEL y especificando LINEAR_REG para el tipo de modelo. La creación del modelo incluye el entrenamiento del modelo.
La siguiente información es útil para saber sobre la declaración CREATE MODEL:
- La opción
input_label_colsespecifica qué columna de la declaraciónSELECTse usará como columna de la etiqueta. Aquí, la columna de la etiqueta esbody_mass_g. Para los modelos de regresión lineal, la columna de la etiqueta debe tener un valor real, es decir, sus valores deben ser números reales. La declaración
SELECTde esta consulta usa las siguientes columnas de la tablabigquery-public-data.ml_datasets.penguinspara predecir el peso de un pingüino:species: la especie del pingüino.island: la isla en la que reside el pingüino.culmen_length_mm: la longitud del culmen del pingüino en milímetros.culmen_depth_mm: la profundidad del culmen del pingüino en milímetros.flipper_length_mm: la longitud de las aletas del pingüino en milímetros.sex: el sexo del pingüino.
La cláusula
WHEREen la declaraciónSELECTde esta consulta,WHERE body_mass_g IS NOT NULL, excluye las filas en las que la columnabody_mass_gesNULL.
Ejecuta la consulta que crea tu modelo de regresión lineal:
En la consola de Google Cloud , ve a la página BigQuery.
En el Editor de consultas, ejecute la siguiente consulta:
CREATE OR REPLACE MODEL `bqml_tutorial.penguins_model` OPTIONS (model_type='linear_reg', input_label_cols=['body_mass_g']) AS SELECT * FROM `bigquery-public-data.ml_datasets.penguins` WHERE body_mass_g IS NOT NULL;
La creación del modelo
penguins_modeltoma alrededor de 30 segundos.Para ver el modelo, sigue estos pasos:
En el panel de la izquierda, haz clic en Explorar.

Si no ves el panel izquierdo, haz clic en Expandir panel izquierdo para abrirlo.
En el panel Explorador, expande tu proyecto y haz clic en Conjuntos de datos.
Haz clic en el conjunto de datos
bqml_tutorial.Haz clic en la pestaña Modelos.
Permite trabajar con BigQuery DataFrames.
Antes de probar este ejemplo, sigue las instrucciones de configuración de BigQuery DataFrames en la guía de inicio rápido de BigQuery con BigQuery DataFrames. Para obtener más información, consulta la documentación de referencia de BigQuery DataFrames.
Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura ADC para un entorno de desarrollo local.