Puntos de control
Calculate trips taken by Yellow taxi in each month of 2015
/ 10
Calculate average speed of Yellow taxi trips in 2015
/ 10
Test whether fields are good inputs to your fare forecasting model
/ 20
Create a BigQuery dataset to store models
/ 10
Create a taxifare model
/ 20
Evaluate classification model performance
/ 10
Predict taxi fare amount
/ 20
Prediga las tarifas de taxis con un modelo de previsión de AA de BigQuery
GSP246
Descripción general
BigQuery es la base de datos estadísticos de Google de bajo costo, no-ops y completamente administrada. Con BigQuery, puede consultar muchos terabytes de datos sin tener que administrar ninguna infraestructura y sin la necesidad de un administrador de base de datos.
BigQuery Machine Learning BQML es donde los analistas de datos pueden crear, entrenar, evaluar y predecir con modelos de aprendizaje automático con una codificación mínima.
En este lab, explorará millones de viajes en taxis amarillos de la ciudad de Nueva York disponibles en un conjunto de datos públicos de BigQuery. Luego, creará un modelo de aprendizaje automático dentro de BigQuery para predecir la tarifa del viaje en taxi según las entradas de su modelo. Por último, evaluará el rendimiento de su modelo y hará predicciones con él.
Objetivos
En este lab, aprenderá a realizar las siguientes tareas:
- Utilizar BigQuery para buscar conjuntos de datos públicos
- Consultar y explorar el conjunto de datos públicos de taxis
- Crear un conjunto de datos de entrenamiento y evaluación para usar en la predicción por lotes
- Crear un modelo de previsión (regresión lineal) en BQML
- Evaluar el rendimiento de su modelo de aprendizaje automático
Requisitos
- Un proyecto de Google Cloud
- Un navegador, como Google Chrome o Mozilla Firefox
Configure su entorno
Antes de hacer clic en el botón Comenzar lab
Lea estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando hace clic en Comenzar lab, indica por cuánto tiempo tendrá a su disposición los recursos de Google Cloud.
Este lab práctico de Qwiklabs le permitirá llevar a cabo las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, le proporciona credenciales temporales nuevas que utilizará para acceder a Google Cloud durante todo el lab.
Qué necesita
Para completar este lab, necesitará lo siguiente:
- Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
- Tiempo para completar el lab
Nota: Si ya tiene un proyecto o una cuenta personal de Google Cloud, no los use para este lab.
Nota: Si usa un dispositivo con Chrome OS, ejecute este lab en una ventana de incógnito.
Cómo iniciar su lab y acceder a la consola de Google Cloud
-
Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab que tiene estos elementos:
- El botón Abrir la consola de Google
- Tiempo restante
- Las credenciales temporales que debe usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haga clic en Abrir la consola de Google. El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ve el diálogo Elegir una cuenta, haga clic en Usar otra cuenta. -
Si es necesario, copie el nombre de usuario del panel Detalles del lab y péguelo en el cuadro de diálogo Acceder. Haga clic en Siguiente.
-
Copie la contraseña del panel Detalles del lab y péguela en el cuadro de diálogo de bienvenida. Haga clic en Siguiente.
Importante: Debe usar las credenciales del panel de la izquierda. No use sus credenciales de Google Cloud Skills Boost. Nota: Usar su propia Cuenta de Google podría generar cargos adicionales. -
Haga clic para avanzar por las páginas siguientes:
- Acepte los términos y condiciones.
- No agregue opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No se registre para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Cloud en esta pestaña.
Cómo abrir la consola de BigQuery
- En la consola de Google Cloud, seleccione elmenú de navegación > BigQuery.
Se abrirá el cuadro de mensaje Te damos la bienvenida a BigQuery en la consola de Cloud. Este cuadro de mensaje contiene un vínculo a la guía de inicio rápido y las notas de la versión.
- Haga clic en Listo.
Se abrirá la consola de BigQuery.
Explore los datos de taxis de NYC
Pregunta: ¿Cuántos viajes por mes hicieron los taxis amarillos en 2015?
Copie el siguiente código SQL y péguelo en el Editor de consultas:
#standardSQL
SELECT
TIMESTAMP_TRUNC(pickup_datetime,
MONTH) month,
COUNT(*) trips
FROM
`bigquery-public-data.new_york.tlc_yellow_trips_2015`
GROUP BY
1
ORDER BY
1
Luego, haga clic en Ejecutar.
Debería recibir el siguiente resultado:
Como podemos ver, todos los meses del año 2015 hubo más de 10 millones de viajes en taxi en la ciudad de Nueva York. No es una cantidad pequeña.
Pruebe la tarea completada
Haga clic en Revisar mi progreso para verificar la tarea realizada. Si la completó correctamente, se le otorgará una puntuación de evaluación.
Pregunta: ¿Cuál fue la velocidad promedio de los viajes de taxis amarillos en 2015?
Reemplace la consulta anterior por lo siguiente y, luego, haga clic en Ejecutar:
#standardSQL
SELECT
EXTRACT(HOUR
FROM
pickup_datetime) hour,
ROUND(AVG(trip_distance / TIMESTAMP_DIFF(dropoff_datetime,
pickup_datetime,
SECOND))*3600, 1) speed
FROM
`bigquery-public-data.new_york.tlc_yellow_trips_2015`
WHERE
trip_distance > 0
AND fare_amount/trip_distance BETWEEN 2
AND 10
AND dropoff_datetime > pickup_datetime
GROUP BY
1
ORDER BY
1
Debería recibir el siguiente resultado:
Durante el día, la velocidad promedio es de aproximadamente 18 a 19 km/h; pero, a las 5:00 a.m., la velocidad promedio casi se duplica a 34 km/h. Por intuición, esto tiene sentido, ya que probablemente haya menos tráfico en la carretera a las 5:00 a.m.
Pruebe la tarea completada
Haga clic en Revisar mi progreso para verificar la tarea realizada. Si la completó correctamente, se le otorgará una puntuación de evaluación.
Identifique un objetivo
Ahora creará un modelo de aprendizaje automático en BigQuery para predecir el precio de un viaje en taxi en la ciudad de Nueva York basándose en el conjunto de datos históricos y los datos de viajes. Predecir la tarifa antes de acceder al servicio puede resultar muy útil para la planificación de viajes, tanto para el pasajero como para la agencia de taxis.
Seleccione características y cree su conjunto de datos de entrenamiento
El conjunto de datos de taxis amarillos de la ciudad de Nueva York es un conjunto de datos públicos que proporciona la ciudad y que se cargó en BigQuery para que lo pueda analizar. Explore la lista completa de campos aquí y, luego, obtenga una vista previa del conjunto de datos en busca de características útiles que ayudarán a que un modelo de aprendizaje automático comprenda la relación entre los datos sobre viajes históricos en taxi y el precio de la tarifa.
Su equipo decide probar si estos campos representan buenas entradas para su modelo de previsión de tarifas:
- Importe de peaje
- Importe de tarifa
- Hora del día
- Dirección de partida
- Dirección de destino
- Cantidad de pasajeros
Reemplace la consulta por los siguientes valores:
#standardSQL
WITH params AS (
SELECT
1 AS TRAIN,
2 AS EVAL
),
daynames AS
(SELECT ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'] AS daysofweek),
taxitrips AS (
SELECT
(tolls_amount + fare_amount) AS total_fare,
daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,
EXTRACT(HOUR FROM pickup_datetime) AS hourofday,
pickup_longitude AS pickuplon,
pickup_latitude AS pickuplat,
dropoff_longitude AS dropofflon,
dropoff_latitude AS dropofflat,
passenger_count AS passengers
FROM
`nyc-tlc.yellow.trips`, daynames, params
WHERE
trip_distance > 0 AND fare_amount > 0
AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.TRAIN
)
SELECT *
FROM taxitrips
Observe algunos puntos sobre la consulta:
- La parte principal de la consulta se encuentra al final (
SELECT * from taxitrips
). -
taxitrips
hace la mayor parte de la extracción del conjunto de datos de la ciudad de Nueva York. La variableSELECT
contiene sus características de entrenamiento y la etiqueta. - La variable
WHERE
quita los datos sobre los que no desea entrenar. -
WHERE
también incluye una cláusula de muestra para seleccionar solo 1/1,000 de los datos. - Defina una variable llamada
TRAIN
para poder compilar con rapidéz un conjuntoEVAL
independiente.
Ahora que comprende mejor el propósito de esta consulta, haga clic en Ejecutar.
Debería obtener un resultado similar al siguiente:
¿Cuál es la etiqueta (respuesta correcta)?
total_fare
es la etiqueta (lo que va a predecir). Usted creó este campo a partir de tolls_amount
y fare_amount
para poder ignorar las propinas de los clientes como parte del modelo, ya que estas son a discreción.
Pruebe la tarea completada
Haga clic en Revisar mi progreso para verificar la tarea realizada. Si la completó correctamente, se le otorgará una puntuación de evaluación.
Cree un conjunto de datos de BigQuery para almacenar modelos
En esta sección, creará un conjunto de datos nuevo de BigQuery que almacenará sus modelos de ML.
-
En el panel Explorer de la izquierda, haga clic sobre los tres puntos que se encuentran junto a su ID de proyecto llamados "Ver acciones" y luego haga clic en Crear conjunto de datos.
-
En el diálogo Crear conjunto de datos, ingrese lo siguiente:
- En ID de conjunto de datos, escriba taxi.
- Seleccione us(múltiples regiones en Estados Unidos) como ubicación.
- Deje los otros valores en su configuración predeterminada.
-
Luego, haga clic en Crear conjunto de datos.
Pruebe la tarea completada
Haga clic en Revisar mi progreso para verificar la tarea realizada. Si la completó correctamente, se le otorgará una puntuación de evaluación.
Seleccione un tipo de modelo de BQML y especifique las opciones
Ahora que ya seleccionó sus atributos iniciales, está listo para crear su primer modelo de AA en BigQuery.
Hay varios tipos de modelos entre los cuales puede elegir:
- La previsión de valores numéricos, como las ventas del mes próximo, con regresión lineal (linear_reg).
- La clasificación binaria o multiclase, como los correos electrónicos deseados y no deseados, con regresión logística (logistic_reg).
- El agrupamiento en clústeres de k-means si desea un aprendizaje sin supervisión de exploración (kmeans).
Ingrese la siguiente consulta para crear un modelo y especifique sus opciones.
CREATE or REPLACE MODEL taxi.taxifare_model
OPTIONS
(model_type='linear_reg', labels=['total_fare']) AS
WITH params AS (
SELECT
1 AS TRAIN,
2 AS EVAL
),
daynames AS
(SELECT ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'] AS daysofweek),
taxitrips AS (
SELECT
(tolls_amount + fare_amount) AS total_fare,
daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,
EXTRACT(HOUR FROM pickup_datetime) AS hourofday,
pickup_longitude AS pickuplon,
pickup_latitude AS pickuplat,
dropoff_longitude AS dropofflon,
dropoff_latitude AS dropofflat,
passenger_count AS passengers
FROM
`nyc-tlc.yellow.trips`, daynames, params
WHERE
trip_distance > 0 AND fare_amount > 0
AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.TRAIN
)
SELECT *
FROM taxitrips
Luego, haga clic en Ejecutar para entrenar su modelo.
Espere a que el modelo se entrene (de 5 a 10 minutos).
Una vez que su modelo esté entrenado, verá el mensaje "Esta declaración creará un nuevo modelo llamado qwiklabs-gcp-03-xxxxxxxx: taxi.taxifare_model". lo que indica que su modelo ha sido entrenado con éxito.
Explore dentro de su conjunto de datos de taxis y confirme que ahora aparezca taxifare_model:
A continuación, evaluará el rendimiento del modelo en comparación con nuevos datos de evaluación no vistos.
Pruebe la tarea completada
Haga clic en Revisar mi progreso para verificar la tarea realizada. Si la completó correctamente, se le otorgará una puntuación de evaluación.
Evalúe el rendimiento del modelo de clasificación
Seleccione sus criterios de rendimiento
Para los modelos de regresión lineal, debe usar una métrica de pérdidas como raíz cuadrada del error cuadrático medio (RMSE). Debe continuar entrenando y mejorando el modelo hasta que tenga la RMSE más bajo.
En BQML, mean_squared_error
es un campo para consultas cuando evalúa su modelo entrenado de AA. Agregue un SQRT()
para obtener el RMSE.
Ahora que completó el entrenamiento, puede evaluar el rendimiento del modelo con esta consulta a través de ML.EVALUATE
. Copie lo siguiente, péguelo en el Editor de consultas y haga clic en Ejecutar:
#standardSQL
SELECT
SQRT(mean_squared_error) AS rmse
FROM
ML.EVALUATE(MODEL taxi.taxifare_model,
(
WITH params AS (
SELECT
1 AS TRAIN,
2 AS EVAL
),
daynames AS
(SELECT ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'] AS daysofweek),
taxitrips AS (
SELECT
(tolls_amount + fare_amount) AS total_fare,
daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,
EXTRACT(HOUR FROM pickup_datetime) AS hourofday,
pickup_longitude AS pickuplon,
pickup_latitude AS pickuplat,
dropoff_longitude AS dropofflon,
dropoff_latitude AS dropofflat,
passenger_count AS passengers
FROM
`nyc-tlc.yellow.trips`, daynames, params
WHERE
trip_distance > 0 AND fare_amount > 0
AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.EVAL
)
SELECT *
FROM taxitrips
))
Ahora está evaluando el modelo con un conjunto distinto de viajes de taxi con su filtro params.EVAL
.
Después de que el modelo se ejecute, revise los resultados (el valor de la RMSE de su modelo variará ligeramente).
Fila |
RMSE |
1 |
9.477056435999074 |
Luego de evaluar su modelo, obtiene un RMSE de 9.47. Como calculamos la raíz del error cuadrático medio (RMSE), el error de 9.47 se puede evaluar en las mismas unidades que total_fare, de manera que es +-USD 9.47.
Conocer si esta métrica de pérdidas es aceptable o no a fin de llevar su modelo a producción depende por completo de sus criterios de comparación, que se configuran antes de comenzar el entrenamiento de modelos. Las comparativas implican establecer un nivel mínimo de exactitud y rendimiento aceptable.
Pruebe la tarea completada
Haga clic en Revisar mi progreso para verificar la tarea realizada. Si la completó correctamente, se le otorgará una puntuación de evaluación.
Prediga el importe de las tarifas de taxis
A continuación, escribirá una consulta para usar su nuevo modelo a fin de hacer predicciones. Copie lo siguiente, péguelo en el Editor de consultas y haga clic en Ejecutar:
#standardSQL
SELECT
*
FROM
ml.PREDICT(MODEL `taxi.taxifare_model`,
(
WITH params AS (
SELECT
1 AS TRAIN,
2 AS EVAL
),
daynames AS
(SELECT ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'] AS daysofweek),
taxitrips AS (
SELECT
(tolls_amount + fare_amount) AS total_fare,
daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,
EXTRACT(HOUR FROM pickup_datetime) AS hourofday,
pickup_longitude AS pickuplon,
pickup_latitude AS pickuplat,
dropoff_longitude AS dropofflon,
dropoff_latitude AS dropofflat,
passenger_count AS passengers
FROM
`nyc-tlc.yellow.trips`, daynames, params
WHERE
trip_distance > 0 AND fare_amount > 0
AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.EVAL
)
SELECT *
FROM taxitrips
));
Ahora verá las predicciones del modelo para tarifas de taxi junto con las tarifas reales y otras características de esos viajes. Sus resultados deberían ser similares a los que se muestran a continuación:
Pruebe la tarea completada
Haga clic en Revisar mi progreso para verificar la tarea realizada. Si la completó correctamente, se le otorgará una puntuación de evaluación.
Mejore el modelo con la ingeniería de atributos
La compilación de modelos de aprendizaje automático es un proceso iterativo. Una vez evaluado el rendimiento de nuestro modelo inicial, a menudo volvemos atrás y reducimos nuestros atributos y filas para ver si podemos conseguir un modelo todavía mejor.
Filtre el conjunto de datos de entrenamiento
Veamos las estadísticas comunes para las tarifas de taxis. Copie lo siguiente, péguelo en el Editor de consultas y haga clic en Ejecutar:
SELECT
COUNT(fare_amount) AS num_fares,
MIN(fare_amount) AS low_fare,
MAX(fare_amount) AS high_fare,
AVG(fare_amount) AS avg_fare,
STDDEV(fare_amount) AS stddev
FROM
`nyc-tlc.yellow.trips`
# 1,108,779,463 fares
Debería obtener un resultado similar al siguiente:
Como puede ver, hay algunos valores atípicos extraños en nuestro conjunto de datos (tarifas negativas o superiores a USD 50,000). Apliquemos algo de nuestra experiencia en el tema para evitar que el modelo aprenda a partir de valores atípicos extraños.
Limitemos los datos solo a tarifas que se encuentren entre USD 6 y USD 200. Copie lo siguiente, péguelo en el Editor de consultas y haga clic en Ejecutar:
SELECT
COUNT(fare_amount) AS num_fares,
MIN(fare_amount) AS low_fare,
MAX(fare_amount) AS high_fare,
AVG(fare_amount) AS avg_fare,
STDDEV(fare_amount) AS stddev
FROM
`nyc-tlc.yellow.trips`
WHERE trip_distance > 0 AND fare_amount BETWEEN 6 and 200
# 843,834,902 fares
Debería obtener un resultado similar al siguiente:
Eso está un poco mejor. Mientras hace esto, limitemos la distancia recorrida de modo que se enfoque totalmente en la ciudad de Nueva York.
Copie lo siguiente, péguelo en el Editor de consultas y haga clic en Ejecutar:
SELECT
COUNT(fare_amount) AS num_fares,
MIN(fare_amount) AS low_fare,
MAX(fare_amount) AS high_fare,
AVG(fare_amount) AS avg_fare,
STDDEV(fare_amount) AS stddev
FROM
`nyc-tlc.yellow.trips`
WHERE trip_distance > 0 AND fare_amount BETWEEN 6 and 200
AND pickup_longitude > -75 #limiting of the distance the taxis travel out
AND pickup_longitude < -73
AND dropoff_longitude > -75
AND dropoff_longitude < -73
AND pickup_latitude > 40
AND pickup_latitude < 42
AND dropoff_latitude > 40
AND dropoff_latitude < 42
# 827,365,869 fares
Debería obtener un resultado similar al siguiente:
Todavía tiene un conjunto de datos de entrenamiento grande de más de 800 millones de viajes a partir del que aprenderá nuestro modelo nuevo. Volvamos a entrenar el modelo con estas nuevas limitaciones y veamos su rendimiento.
Vuelva a entrenar el modelo
Llamemos taxi.taxifare_model_2
a nuestro modelo nuevo y volvamos a entrenar nuestro modelo de regresión lineal para predecir la tarifa total. Notará que también agregó algunas características calculadas para la distancia euclidiana (línea recta) entre las ubicaciones habilitadas para recoger y dejar pasajeros.
Copie lo siguiente, péguelo en el Editor de consultas y haga clic en Ejecutar:
CREATE OR REPLACE MODEL taxi.taxifare_model_2
OPTIONS
(model_type='linear_reg', labels=['total_fare']) AS
WITH params AS (
SELECT
1 AS TRAIN,
2 AS EVAL
),
daynames AS
(SELECT ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'] AS daysofweek),
taxitrips AS (
SELECT
(tolls_amount + fare_amount) AS total_fare,
daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,
EXTRACT(HOUR FROM pickup_datetime) AS hourofday,
SQRT(POW((pickup_longitude - dropoff_longitude),2) + POW(( pickup_latitude - dropoff_latitude), 2)) as dist, #Euclidean distance between pickup and drop off
SQRT(POW((pickup_longitude - dropoff_longitude),2)) as longitude, #Euclidean distance between pickup and drop off in longitude
SQRT(POW((pickup_latitude - dropoff_latitude), 2)) as latitude, #Euclidean distance between pickup and drop off in latitude
passenger_count AS passengers
FROM
`nyc-tlc.yellow.trips`, daynames, params
WHERE trip_distance > 0 AND fare_amount BETWEEN 6 and 200
AND pickup_longitude > -75 #limiting of the distance the taxis travel out
AND pickup_longitude < -73
AND dropoff_longitude > -75
AND dropoff_longitude < -73
AND pickup_latitude > 40
AND pickup_latitude < 42
AND dropoff_latitude > 40
AND dropoff_latitude < 42
AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.TRAIN
)
SELECT *
FROM taxitrips
Volver a entrenar el modelo puede llevar algunos minutos. Puede pasar al siguiente paso cuando reciba este mensaje en Console:
Evalúe el modelo nuevo
Ahora que se optimizó nuestro modelo de regresión lineal, usémoslo para evaluar el conjunto de datos y ver su rendimiento. Copie lo siguiente, péguelo en el Editor de consultas y haga clic en Ejecutar:
SELECT
SQRT(mean_squared_error) AS rmse
FROM
ML.EVALUATE(MODEL taxi.taxifare_model_2,
(
WITH params AS (
SELECT
1 AS TRAIN,
2 AS EVAL
),
daynames AS
(SELECT ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'] AS daysofweek),
taxitrips AS (
SELECT
(tolls_amount + fare_amount) AS total_fare,
daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,
EXTRACT(HOUR FROM pickup_datetime) AS hourofday,
SQRT(POW((pickup_longitude - dropoff_longitude),2) + POW(( pickup_latitude - dropoff_latitude), 2)) as dist, #Euclidean distance between pickup and drop off
SQRT(POW((pickup_longitude - dropoff_longitude),2)) as longitude, #Euclidean distance between pickup and drop off in longitude
SQRT(POW((pickup_latitude - dropoff_latitude), 2)) as latitude, #Euclidean distance between pickup and drop off in latitude
passenger_count AS passengers
FROM
`nyc-tlc.yellow.trips`, daynames, params
WHERE trip_distance > 0 AND fare_amount BETWEEN 6 and 200
AND pickup_longitude > -75 #limiting of the distance the taxis travel out
AND pickup_longitude < -73
AND dropoff_longitude > -75
AND dropoff_longitude < -73
AND pickup_latitude > 40
AND pickup_latitude < 42
AND dropoff_latitude > 40
AND dropoff_latitude < 42
AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.EVAL
)
SELECT *
FROM taxitrips
))
Debería obtener un resultado similar al siguiente:
Como puede ver, bajamos la RMSE a ±USD 5.12. Esto es mucho mejor que el valor ±USD 9.47 de su primer modelo.
Dado que la RMSE define la desviación estándar de los errores de predicción, vemos que la regresión lineal que se volvió a entrenar hizo que nuestro modelo fuera mucho más preciso.
Ponga a prueba sus conocimientos
A continuación, se presentan algunas preguntas de opción múltiple para reforzar sus conocimientos de los conceptos de este lab. Trate de responderlas lo mejor posible.
Otros conjuntos de datos para explorar
Puede usar el siguiente vínculo para incorporar el proyecto bigquery-public-data si desea explorar la creación de modelos en otros conjuntos de datos como la previsión de tarifas para viajes de taxi en Chicago:
https://bigquery.cloud.google.com/table/bigquery-public-data::chicago_taxi_trips.taxi_trips
¡Felicitaciones!
Compiló correctamente un modelo de AA en BigQuery para prever la tarifa de taxis de la ciudad de Nueva York.
Finalice su Quest
Este lab de autoaprendizaje forma parte de las Quests Data Engineering y BigQuery for Machine Learning, Applying BigQuery for Machine Learning's Classification, Regression, and Demand Forecasting for Retail Applications. Una Quest es una serie de labs relacionados que forman una ruta de aprendizaje. Si completa esta Quest, obtendrá una insignia como reconocimiento por su logro. Puede hacer públicas sus insignias y agregar vínculos a ellas en su currículum en línea o en sus cuentas de redes sociales. Si realizó este lab, inscríbase en alguna de las Quests y obtenga un crédito inmediato de finalización. Consulte otras Quests de disponibles.
Próximos pasos/Más información
- Para obtener más información sobre BigQuery, consulte la documentación de BigQuery.
- Para obtener más información sobre el aprendizaje automático, consulte la documentación de AI Platform.
Google Cloud Training & Certification
Aproveche al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarlo a ponerse en marcha rápidamente y a seguir aprendiendo. Para que pueda realizar nuestros cursos cuando más le convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: según demanda, presenciales y virtuales. Las certificaciones lo ayudan a validar y demostrar sus habilidades y experiencia en las tecnologías de Google Cloud.
Última actualización del manual: 10 de marzo de 2022
Prueba más reciente del lab: 10 de marzo de 2022
Copyright 2020 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.