Nesta página, você aprenderá como receber predições on-line (únicas e de baixa latência) usando o AutoML Tables.
Introdução
Após criar (treinar) um modelo, será possível implantá-lo e solicitar predições on-line (em tempo real). As predições on-line aceitam uma linha de dados e fornecem um resultado previsto com base no modelo aplicado a esses dados. As predições on-line são úteis para quando você precisar usar uma predição como entrada do fluxo de lógica de negócios.
Para solicitar uma predição on-line, primeiro é necessário implantar o modelo. Modelos implantados geram cobranças. Quando você terminar de fazer as predições on-line, poderá remover a implantação do modelo para evitar cobranças futuras. Saiba mais.
Os modelos precisam ser treinados novamente a cada seis meses para que possam continuar fornecendo previsões.
Como receber uma predição on-line
Console
Geralmente, as predições on-line são usadas para conseguir predições internas de aplicativos comerciais. No entanto, é possível usar o AutoML Tables no Console do Google Cloud para testar o formato de dados ou o modelo com um conjunto de entrada específico.
Acesse a página do AutoML Tables no Console do Google Cloud.
Selecione Modelos e escolha o que você quer usar.
Selecione a guia Testar e usar e clique em Previsão on-line.
Se o modelo ainda não foi implementado, faça-o agora clicando em Implementar modelo.
É necessário que o modelo esteja implementado para fazer predições on-line. A implantação do modelo gera custos. Para mais informações, consulte a página de preços.
Insira seus valores de entrada nas caixas de texto disponíveis.
Outra alternativa é selecionar Visualização de código JSON para inserir os valores de entrada no formato JSON.
Se você quiser ver o impacto de cada recurso na previsão, selecione Gerar importância do atributo.
O console do Google Cloud trunca os valores de importância do recurso local para legibilidade. Se você precisar de um valor exato, use a API Cloud AutoML para fazer a solicitação de previsão.
Para informações sobre a importância do recurso, consulte Importância do recurso local.
Clique em Prever para receber a previsão.
Para informações sobre como interpretar os resultados da previsão, consulte Como interpretar os resultados da sua previsão. Para informações sobre a importância de atributos locais, consulte Importância do atributo local.
(Opcional) Se você não planeja solicitar mais previsões on-line, poderá remover a implantação do modelo para evitar cobranças. Para fazer isso, basta clicar em Cancelar a implantação do modelo.
curl
É possível solicitar uma previsão para um conjunto de valores, basta criar seu objeto JSON com os valores do elemento e, em seguida, usar o método model.predict
para receber a previsão.
É necessário que os valores contenham as colunas exatas incluídas no treinamento. Além disso, eles precisam estar na mesma ordem mostrada na guia Avaliar, que você vê ao clicar no link das colunas incluídas.
Para reordenar os valores, inclua opcionalmente um conjunto de IDs de especificação de coluna na mesma ordem dos valores. Para saber os IDs de especificação de coluna do objeto do modelo, veja o campo TablesModelMetadata.inputFeatureColumnSpecs.
O tipo de dados de cada valor (atributo) no objeto Row depende do tipo de dados designado ao atributo no AutoML Tables. Consulte Formato de objeto Row para ver a lista de tipos de dados aceitos, de acordo com cada tipo de dados do AutoML Tables.
Se você ainda não implantou o modelo, faça-o agora. Saiba mais
Solicite a previsão.
Antes de usar os dados da solicitação, faça as substituições a seguir:
-
endpoint:
automl.googleapis.com
para o local global eeu-automl.googleapis.com
para a região da UE. - project-id: é seu ID do projeto no Google Cloud.
- location: o local do recurso:
us-central1
para global oueu
para a União Europeia. - model-id: o código do modelo. Por exemplo,
TBL543
. - valueN: os valores de cada coluna, na ordem correta.
Método HTTP e URL:
POST https://endpoint/v1beta1/projects/project-id/locations/location/models/model-id:predict
Corpo JSON da solicitação:
{ "payload": { "row": { "values": [ value1, value2,... ] } } }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo chamado
request.json
e execute o seguinte comando:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://endpoint/v1beta1/projects/project-id/locations/location/models/model-id:predict"PowerShell
Salve o corpo da solicitação em um arquivo chamado
request.json
e execute o seguinte comando:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://endpoint/v1beta1/projects/project-id/locations/location/models/model-id:predict" | Select-Object -Expand Contentfeature_importance
. Para mais informações sobre a importância do recurso local, consulte Importância do recurso local.-
endpoint:
Ver os resultados.
No caso de modelos de classificação, o resultado será semelhante ao exemplo a abaixo. Observe que dois resultados são retornados, cada um com uma estimativa de confiança (
score
). A estimativa de confiança fica entre 0 e 1 e mostra a probabilidade de que o modelo ache que esse é o valor de previsão correto. Para mais informações sobre como usar a estimativa de confiança, consulte Como interpretar os resultados da sua previsão.{ "payload": [ { "tables": { "score": 0.11210235, "value": "1" } }, { "tables": { "score": 0.8878976, "value": "2" } } ] }
Para um modelo de regressão, os resultados incluem um valor de predição e um intervalo de predição. O intervalo de previsão fornece um intervalo que inclui o valor verdadeiro em 95% do tempo (com base nos dados em que o modelo foi treinado). O valor previsto pode não ser centralizado no intervalo (ele pode até estar fora do intervalo), porque o intervalo de previsão é centrada em torno da mediana, enquanto o valor previsto é o valor esperado (ou médio).
{ "payload": [ { "tables": { "value": 207.18209838867188, "predictionInterval": { "start": 29.712770462036133, "end": 937.42041015625 } } } ] }
Para informações sobre os resultados de importância de atributos locais, consulte Importância do atributo local.
(Opcional) Se você não quiser solicitar mais predições on-line, poderá remover a implantação do modelo para evitar cobranças. Saiba mais
Java
Se os recursos estiverem localizados na região da UE, você precisará definir o endpoint explicitamente. Saiba mais
Node.js
Se os recursos estiverem localizados na região da UE, você precisará definir o endpoint explicitamente. Saiba mais
Python
A biblioteca de cliente para AutoML Tables inclui outros métodos Python que simplificam o uso da API AutoML Tables. Esses métodos se referem aos conjuntos de dados e aos modelos pelos nomes e não pelos IDs. É preciso que os nomes dos conjuntos de dados e modelos sejam exclusivos. Para mais informações, consulte a Referência do cliente.
Se os recursos estiverem localizados na região da UE, você precisará definir o endpoint explicitamente. Saiba mais
A seguir
- Saiba mais sobre como interpretar os resultados da sua previsão.
- Saiba mais sobre a importância de atributos locais.