Vista geral da avaliação do modelo do BigQuery ML

Este documento descreve como o BigQuery ML suporta a avaliação de modelos de aprendizagem automática (AA).

Vista geral da avaliação de modelos

Pode usar métricas de avaliação de modelos de ML para os seguintes fins:

  • Para avaliar a qualidade do ajuste entre o modelo e os dados.
  • Para comparar diferentes modelos.
  • Para prever a precisão com que pode esperar que cada modelo funcione num conjunto de dados específico, no contexto da seleção de modelos.

As avaliações de modelos de aprendizagem supervisionada e não supervisionada funcionam de forma diferente:

  • Para modelos de aprendizagem supervisionada, a avaliação de modelos está bem definida. Um conjunto de avaliação, que são dados que não foram analisados pelo modelo, é normalmente excluído do conjunto de preparação e, em seguida, usado para avaliar o desempenho do modelo. Recomendamos que não use o conjunto de preparação para avaliação, uma vez que isso faz com que o modelo tenha um desempenho fraco ao generalizar os resultados da previsão para novos dados. Este resultado é conhecido como sobreajuste.
  • Para modelos de aprendizagem não supervisionada, a avaliação do modelo é menos definida e, normalmente, varia de modelo para modelo. Uma vez que os modelos de aprendizagem não supervisionada não reservam um conjunto de avaliação, as métricas de avaliação são calculadas usando o conjunto de dados de entrada completo.

Ofertas de avaliação de modelos

O BigQuery ML oferece as seguintes funções para calcular métricas de avaliação para modelos de ML:

Categoria do modelo Tipos de modelos Funções de avaliação de modelos O que a função faz
Aprendizagem supervisionada Regressão linear

Regressão de árvores melhoradas

Regressão de floresta aleatória

Regressão de RNC

Regressão ampla e profunda

Regressão do AutoML Tables
ML.EVALUATE Comunica as seguintes métricas:
  • erro absoluto médio
  • erro quadrático médio
  • erro de registo quadrático médio
  • erro absoluto mediano
  • r2 score
  • variância explicada
Regressão logística

Classificador de árvores com reforço

Classificador de floresta aleatória

Classificador de DNN

Classificador amplo e profundo

Classificador do AutoML Tables
ML.EVALUATE Comunica as seguintes métricas:
  • precisão
  • recordar
  • precisão
  • Pontuação de F1
  • Perda logarítmica
  • roc auc
ML.CONFUSION_MATRIX Comunica a matriz de confusão.
ML.ROC_CURVE Apresenta métricas para diferentes valores de limite, incluindo o seguinte:
  • recordar
  • taxa de falsos positivos
  • verdadeiros positivos
  • falsos positivos
  • verdadeiros negativos
  • falsos negativos

Aplica-se apenas a modelos de classificação de classe binária.
Aprendizagem não supervisionada K-means ML.EVALUATE Comunica o índice de Davies-Bouldin e a distância média ao quadrado entre os pontos de dados e os centroides dos clusters atribuídos.
Fatorização de matrizes ML.EVALUATE Para modelos baseados em feedback explícito, o relatório apresenta as seguintes métricas:
  • erro absoluto médio
  • erro quadrático médio
  • erro de registo quadrático médio
  • erro absoluto mediano
  • r2 score
  • variância explicada
Para modelos baseados em feedback implícito, comunica as seguintes métricas:
PCA ML.EVALUATE Comunica a relação da variância explicada total.
Autoencoder ML.EVALUATE Comunica as seguintes métricas:
  • erro absoluto médio
  • erro quadrático médio
  • erro de registo quadrático médio
Intervalos temporais ARIMA_PLUS ML.EVALUATE Comunica as seguintes métricas:
  • erro absoluto médio
  • erro quadrático médio
  • erro percentual absoluto médio
  • erro percentual absoluto médio simétrico

Esta função requer novos dados como entrada.
ML.ARIMA_EVALUATE Comunica as seguintes métricas para todos os modelos candidatos ARIMA caracterizados por diferentes tuplos (p, d, q, has_drift):

Também comunica outras informações sobre a sazonalidade, os efeitos das épocas festivas e os valores atípicos de picos e quedas.

Esta função não requer novos dados como entrada.

Avaliação automática em CREATE MODEL declarações

O BigQuery ML suporta a avaliação automática durante a criação de modelos. Consoante o tipo de modelo, as opções de preparação de divisão de dados e se está a usar o ajuste de hiperparâmetros, as métricas de avaliação são calculadas com base no conjunto de dados de avaliação reservado, no conjunto de dados de teste reservado ou no conjunto de dados de entrada completo.

  • Para os modelos k-means, PCA, autoencoder e ARIMA_PLUS, o BigQuery ML usa todos os dados de entrada como dados de preparação, e as métricas de avaliação são calculadas em relação ao conjunto de dados de entrada completo.

  • Para os modelos de regressão linear e logística, árvore de reforço, floresta aleatória, DNN, Wide-and-deep e fatorização de matrizes, as métricas de avaliação são calculadas com base no conjunto de dados especificado pelas seguintes opções CREATE MODEL:

    Quando prepara estes tipos de modelos com o ajuste de hiperparâmetros, a opção DATA_SPLIT_TEST_FRACTION também ajuda a definir o conjunto de dados com base no qual as métricas de avaliação são calculadas. Para mais informações, consulte o artigo Divisão de dados.

  • Para modelos do AutoML Tables, veja como as divisões de dados são usadas para preparação e avaliação.

Para obter métricas de avaliação calculadas durante a criação do modelo, use funções de avaliação, como ML.EVALUATE, no modelo sem dados de entrada especificados. Para ver um exemplo, consulte ML.EVALUATE sem dados de entrada especificados.

Avaliação com um novo conjunto de dados

Após a criação do modelo, pode especificar novos conjuntos de dados para avaliação. Para fornecer um novo conjunto de dados, use funções de avaliação como ML.EVALUATE no modelo com os dados de entrada especificados. Para ver um exemplo, consulte o artigo ML.EVALUATE com um limite personalizado e dados de entrada.

O que se segue?

Para mais informações sobre as declarações e as funções SQL suportadas para modelos que suportam a avaliação, consulte os seguintes documentos: