Información general sobre la evaluación de modelos de BigQuery ML

En este documento se describe cómo admite BigQuery ML la evaluación de modelos de aprendizaje automático (ML).

Descripción general de la evaluación de modelos

Puede usar las métricas de evaluación de modelos de aprendizaje automático para lo siguiente:

  • Para evaluar la calidad del ajuste entre el modelo y los datos.
  • Para comparar diferentes modelos.
  • Para predecir la precisión con la que se espera que funcione cada modelo en un conjunto de datos específico en el contexto de la selección de modelos.

Las evaluaciones de modelos de aprendizaje supervisado y no supervisado funcionan de forma diferente:

  • En los modelos de aprendizaje supervisado, la evaluación de modelos está bien definida. Un conjunto de evaluación, que son datos que no ha analizado el modelo, normalmente se excluye del conjunto de entrenamiento y, después, se usa para evaluar el rendimiento del modelo. Te recomendamos que no uses el conjunto de entrenamiento para la evaluación, ya que esto provoca que el modelo tenga un rendimiento deficiente al generalizar los resultados de las predicciones para los datos nuevos. Este resultado se conoce como sobreajuste.
  • En el caso de los modelos de aprendizaje no supervisado, la evaluación de modelos está menos definida y suele variar de un modelo a otro. Como los modelos de aprendizaje no supervisado no reservan un conjunto de evaluación, las métricas de evaluación se calculan usando todo el conjunto de datos de entrada.

Ofertas de evaluación de modelos

BigQuery ML proporciona las siguientes funciones para calcular las métricas de evaluación de los modelos de aprendizaje automático:

Categoría de modelo Tipos de modelo Funciones de evaluación de modelos Qué hace la función
Aprendizaje supervisado Regresión lineal

Regresor de árboles de refuerzo

Regresor de bosque aleatorio

Regresor de DNN

Regresor de modelo amplio y profundo

Regresor de AutoML Tables
ML.EVALUATE Informa de las siguientes métricas:
  • Error absoluto medio
  • error cuadrático medio
  • Error de registro cuadrático medio
  • error mediano absoluto
  • Puntuación R2
  • varianza explicada
Regresión logística

Clasificador de árboles potenciados

Clasificador de bosque aleatorio

Clasificador de DNN

Clasificador de modelo amplio y profundo

Clasificador de AutoML Tables
ML.EVALUATE Informa de las siguientes métricas:
  • precisión
  • sensibilidad
  • precisión
  • Puntuación de valor F1
  • Pérdida logarítmica
  • roc auc
ML.CONFUSION_MATRIX Muestra la matriz de confusiones.
ML.ROC_CURVE Muestra las métricas de diferentes valores de umbral, incluidos los siguientes:
  • sensibilidad
  • tasa de falsos positivos
  • Verdaderos positivos
  • Falsos positivos
  • Negativos verdaderos
  • Falsos negativos

Solo se aplica a los modelos de clasificación binaria.
Aprendizaje no supervisado K-medias ML.EVALUATE Informa del índice de Davies-Bouldin y de la distancia cuadrática media entre los puntos de datos y los centroides de los clústeres asignados.
Factorización de matriz ML.EVALUATE En el caso de los modelos basados en comentarios explícitos, se registran las siguientes métricas:
  • Error absoluto medio
  • error cuadrático medio
  • Error de registro cuadrático medio
  • error mediano absoluto
  • Puntuación R2
  • varianza explicada
En el caso de los modelos basados en comentarios implícitos, se registran las siguientes métricas:
PCA ML.EVALUATE Informa del ratio de varianza explicada total.
Autoencoder ML.EVALUATE Informa de las siguientes métricas:
  • Error absoluto medio
  • error cuadrático medio
  • Error de registro cuadrático medio
Series temporales ARIMA_PLUS ML.EVALUATE Informa de las siguientes métricas:
  • Error absoluto medio
  • error cuadrático medio
  • error absoluto medio porcentual
  • error absoluto medio porcentual simétrico

Esta función requiere datos nuevos como entrada.
ML.ARIMA_EVALUATE Informa de las siguientes métricas de todos los modelos candidatos de ARIMA caracterizados por diferentes tuplas (p, d, q, has_drift):

También proporciona otra información sobre la estacionalidad, los efectos de las festividades y los valores atípicos de picos y valles.

Esta función no requiere nuevos datos como entrada.

Evaluación automática en CREATE MODEL instrucciones

BigQuery ML admite la evaluación automática durante la creación de modelos. En función del tipo de modelo, las opciones de división de datos para el entrenamiento y si usas o no el ajuste de hiperparámetros, las métricas de evaluación se calculan a partir del conjunto de datos de evaluación reservado, del conjunto de datos de prueba reservado o de todo el conjunto de datos de entrada.

  • En el caso de los modelos k-means, PCA, autoencoder y ARIMA_PLUS, BigQuery ML usa todos los datos de entrada como datos de entrenamiento y las métricas de evaluación se calculan con respecto a todo el conjunto de datos de entrada.

  • En el caso de los modelos de regresión lineal y logística, árbol de refuerzo, bosque aleatorio, DNN, Wide and Deep y factorización de matrices, las métricas de evaluación se calculan en función del conjunto de datos especificado por las siguientes opciones de CREATE MODEL:

    Cuando entrenas estos tipos de modelos con el ajuste de hiperparámetros, la opción DATA_SPLIT_TEST_FRACTION también te ayuda a definir el conjunto de datos con el que se calculan las métricas de evaluación. Para obtener más información, consulta División de datos.

  • En el caso de los modelos de AutoML Tables, consulta cómo se usan las divisiones de datos para la preparación y la evaluación.

Para obtener las métricas de evaluación calculadas durante la creación del modelo, usa funciones de evaluación como ML.EVALUATE en el modelo sin especificar datos de entrada. Por ejemplo, consulta ML.EVALUATE sin especificar datos de entrada.

Evaluación con un nuevo conjunto de datos

Una vez creado el modelo, puede especificar nuevos conjuntos de datos para la evaluación. Para proporcionar un nuevo conjunto de datos, usa funciones de evaluación como ML.EVALUATE en el modelo con los datos de entrada especificados. Para ver un ejemplo, consulta ML.EVALUATE con un umbral personalizado y datos de entrada.

Siguientes pasos

Para obtener más información sobre las instrucciones y funciones de SQL admitidas en los modelos que admiten la evaluación, consulta los siguientes documentos: