Saiba nesta página como criar um conjunto de dados da Vertex AI a partir dos seus dados de vídeo para começar a treinar modelos de reconhecimento de ação. É possível criar um conjunto de dados usando o console do Google Cloud ou a API Vertex AI.
Criar um conjunto de dados vazio e importar ou associar seus dados
Console do Google Cloud
Use as instruções a seguir para criar um conjunto de dados vazio e importar ou associar seus dados.
- No Console do Google Cloud, na seção "Vertex AI", acesse a página Conjuntos de dados.
- Clique em Criar para abrir a página de detalhes da criação do conjunto de dados.
- Modifique o campo Nome do conjunto de dados para criar um nome de exibição descritivo para o conjunto de dados.
- Selecione a guia Vídeo.
- Selecione Reconhecimento de ação em vídeo.
- Selecione uma região na lista suspensa Região.
- Clique em Criar para criar o conjunto de dados vazio e avance para a página de importação de dados.
- Escolha uma das seguintes opções na seção Selecionar um método de
importação:
Fazer upload de dados do computador
- Na seção Selecionar um método de importação, escolha fazer o upload dos dados a partir do computador.
- Clique em Selecionar arquivos e escolha todos os arquivos locais para fazer upload para um bucket do Cloud Storage.
- Na seção Selecionar um caminho do Cloud Storage, clique em Procurar para escolher um local do bucket do Cloud Storage para fazer upload dos dados.
Fazer upload de um arquivo de importação do computador
- Clique em Fazer upload de um arquivo de importação do computador.
- Clique em Selecionar arquivos e escolha o arquivo de importação local para fazer upload para um bucket do Cloud Storage.
- Na seção Selecionar um caminho do Cloud Storage, clique em Procurar para escolher um local do bucket do Cloud Storage para fazer upload do arquivo.
Selecione um arquivo de importação do Cloud Storage
- Clique em Selecione um arquivo de importação do Cloud Storage.
- Na seção Selecionar um caminho do Cloud Storage, clique em Procurar para escolher o arquivo de importação no Cloud Storage.
- Clique em Continuar.
A importação de dados pode levar várias horas, dependendo do tamanho dos dados. Você pode fechar esta guia e voltar a ela mais tarde. Você receberá um e-mail quando seus dados forem importados.
API
Para criar um modelo de aprendizado de máquina, primeiro é preciso ter uma coleção representativa de dados para treinar. Depois de importar os dados, é possível fazer modificações e iniciar o treinamento do modelo.
Crie um conjunto de dados
Use as amostras a seguir para criar um conjunto de dados para seus dados.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
-
LOCATION: região onde o conjunto de dados será armazenado. Precisa se. uma região compatível com recursos do conjunto de dados. Por exemplo,
us-central1
. Consulte a Lista de locais disponíveis. - PROJECT: o ID do projeto.
- DATASET_NAME: nome do conjunto de dados.
- PROJECT_NUMBER: o número do projeto gerado automaticamente.
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets
Corpo JSON da solicitação:
{ "display_name": "DATASET_NAME", "metadata_schema_uri": "gs://google-cloud-aiplatform/schema/dataset/metadata/video_1.0.0.yaml" }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets" | Select-Object -Expand Content
Será exibido um código semelhante a este. Use OPERATION_ID na resposta para ver o status da operação.
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetOperationMetadata", "genericMetadata": { "createTime": "2020-07-07T21:27:35.964882Z", "updateTime": "2020-07-07T21:27:35.964882Z" } } }
Terraform
O exemplo a seguir usa o recurso google_vertex_ai_dataset
do Terraform para criar um conjunto de dados de vídeo chamado video-dataset
.
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
Java
Antes de testar esse exemplo, siga as instruções de configuração para Java no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Java.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Antes de testar esse exemplo, siga as instruções de configuração para Node.js no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Node.js.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
A amostra a seguir usa o SDK do Vertex AI para Python para criar um conjunto de dados e importar dados. Se você executar esse código de amostra, poderá pular a seção Importar dados deste guia.
Esta amostra em particular importa dados para classificação. Se o modelo tiver um objetivo diferente, será necessário ajustar o código.
Importar dados
Depois de criar um conjunto de dados vazio, importe seus dados para ele. Se você usou o SDK do Vertex AI para Python para criar o conjunto de dados, talvez já tenha importado dados quando criou o conjunto de dados. Em caso afirmativo, pule esta seção.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- LOCATION: região onde o conjunto de dados será armazenado. Por exemplo,
us-central1
. - PROJECT: o ID do projeto.
- DATASET_ID: ID do conjunto de dados.
- IMPORT_FILE_URI: caminho para o arquivo CSV ou JSON Lines no Cloud Storage que lista itens de dados armazenados no Cloud Storage a serem usados para treinamento de modelo; para conhecer os formatos e limitações dos arquivos de importação, consulte Como preparar dados de vídeo.
- OBJECTIVE: designe o objetivo do modelo de "classificação", "objeto_tracking" ou "reconhecimento de ação".
- PROJECT_NUMBER: o número do projeto gerado automaticamente.
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets/DATASET_ID:import
Corpo JSON da solicitação:
{ "import_configs": [ { "gcs_source": { "uris": "IMPORT_FILE_URI" }, "import_schema_uri" : "gs://google-cloud-aiplatform/schema/dataset/ioformat/automl_video_OBJECTIVE_io_format_1.0.0.yaml" } ] }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets/DATASET_ID:import"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets/DATASET_ID:import" | Select-Object -Expand Content
Será exibido um código semelhante a este. Use OPERATION_ID na resposta para ver o status da operação.
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.ImportDataOperationMetadata", "genericMetadata": { "createTime": "2020-10-08T20:32:02.543801Z", "updateTime": "2020-10-08T20:32:02.543801Z" } } }
Java
Antes de testar esse exemplo, siga as instruções de configuração para Java no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Java.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
Receber status da operação
Algumas solicitações iniciam operações de longa duração que exigem tempo para serem concluídas. Essas solicitações retornam um nome de operação, que pode ser usado para ver o status da operação ou cancelá-la. A Vertex AI oferece métodos auxiliares para realizar chamadas em operações de longa duração. Para mais informações, consulte Como trabalhar com operações de longa duração.