Como gerenciar conjuntos de dados
Um conjunto de dados contém amostras representativas do tipo de conteúdo que você quer rotular, com os rótulos de caixa delimitadora que você quer que seu modelo use. O conjunto de dados serve como entrada para treinar um modelo.
Veja a seguir os principais passos para criar um conjunto de dados:
- Criar um conjunto de dados e especificar se quer permitir vários rótulos em cada item.
- Importe itens de dados para o conjunto de dados.
Antes do treinamento de um modelo, prepare os dados.
Um projeto pode ter vários conjuntos de dados, cada um usado para treinar um modelo separado. É possível conseguir uma lista dos conjuntos de dados disponíveis e excluir conjuntos de dados que não são mais necessários.
Como criar um conjunto de dados
A primeira etapa no desenvolvimento de um modelo personalizado é criar um conjunto de dados vazio que vai armazenar os dados de treinamento do modelo.
IU da Web
A interface do usuário de rastreamento de objetos de vídeo do AutoML permite criar um novo conjunto de dados e importar itens para ele na mesma página.- Abra a IU de rastreamento de objetos do AutoML Video. A página Conjuntos de dados mostra o status de conjuntos de dados criados anteriormente para o projeto atual. Para adicionar um conjunto de dados para um projeto diferente, selecione o projeto na lista suspensa no canto superior direito da barra de título.
- Na página Conjuntos de dados, clique em Criar conjunto de dados.
- Na caixa de diálogo Criar conjunto de dados, faça o seguinte:
- Especifique um nome para ele.
- Selecione Rastreamento de objetos em vídeo.
- Clique em Criar conjunto de dados.
- Na página do conjunto de dados, forneça o URI do Cloud Storage do
arquivo CSV que contém os URIs dos dados de treinamento
sem o prefixo
gs://
no início. - Ainda na página do conjunto de dados, clique em Continuar para começar a importação.
REST
No exemplo a seguir, criamos um conjunto de dados chamado my_dataset01
, que
é compatível com casos de uso de rastreamento de objetos. O conjunto de dados recém-criado não contém
dados até que você importe itens para ele.
Salve o "name"
do novo conjunto de dados (da resposta) para usar com outras operações, como importar itens para o conjunto de dados e treinar um modelo.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- dataset-name: o nome do conjunto de dados de destino.
Por exemplo,my_dataset_01
- Observação:
- project-number: o número do seu projeto
- location-id: a região do Cloud em que a anotação deve ocorrer. As regiões de nuvem compatíveis são:
us-east1
,us-west1
,europe-west1
easia-east1
. Se nenhuma região for especificada, uma região será determinada com base na localização do arquivo de vídeo.
Método HTTP e URL:
POST https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets
Corpo JSON da solicitação:
{ "displayName": "dataset-name", "videoObjectTrackingDatasetMetadata": { } }
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 "x-goog-user-project: project-number" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/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"; "x-goog-user-project" = "project-number" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets" | Select-Object -Expand Content
VOT12345....
Java
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Importar itens para um conjunto de dados
Depois de criar um conjunto de dados, será possível importar dados rotulados de arquivos CSV armazenados em um bucket do Cloud Storage. Para mais informações sobre como preparar os dados e criar arquivos CSV para importação, consulte Como preparar dados de treinamento.
Você pode importar itens para um conjunto de dados vazio ou importar itens adicionais para um conjunto de dados existente.
IU da Web
Normalmente, você importa os dados quando cria o conjunto de dados.No entanto, se precisar importar seus dados depois de criar o conjunto de dados, faça o seguinte:
- Abra a IU de rastreamento de objetos do AutoML Video. A página Conjuntos de dados mostra o status de conjuntos de dados criados anteriormente para o projeto atual.
- Na lista, clique no conjunto de dados em que você quer importar dados.
- Na guia Importar, forneça o URI do Cloud Storage do
arquivo CSV que contém os URIs dos dados de treinamento
sem o prefixo
gs://
. - Além disso, na guia Importar do conjunto de dados, clique em Continuar para começar a importação.
REST
Para importar seus dados de treinamento, use o métodoimportData
. Esse método exige que você forneça dois parâmetros:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- dataset-id: ID do conjunto de dados. Ele é o último elemento do nome do conjunto de dados. Por exemplo:
- nome do conjunto de dados:
projects/project-number/locations/location-id/datasets/3104518874390609379
- ID do conjunto de dados:
3104518874390609379
- nome do conjunto de dados:
- bucket-name: substitua pelo nome do bucket do Cloud Storage em que você armazenou o arquivo CSV da lista de arquivos de treinamento do modelo.
- csv-file-name: substitua pelo nome do arquivo CSV da lista de arquivos de treinamento do modelo.
- Observação:
- project-number: o número do seu projeto
- location-id: a região do Cloud em que a anotação deve ocorrer. As regiões de nuvem compatíveis são:
us-east1
,us-west1
,europe-west1
easia-east1
. Se nenhuma região for especificada, uma região será determinada com base na localização do arquivo de vídeo.
Método HTTP e URL:
POST https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets/dataset-id:importData
Corpo JSON da solicitação:
{ "inputConfig": { "gcsSource": { "inputUris": ["gs://bucket-name/csv-file-name.csv"] } } }
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 "x-goog-user-project: project-number" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets/dataset-id:importData"
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"; "x-goog-user-project" = "project-number" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets/dataset-id:importData" | Select-Object -Expand Content
VOT7506374678919774208
.
Java
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Rotular itens de treinamento
Para ser útil ao treinamento de um modelo, cada item em um conjunto de dados precisa conter pelo menos uma caixa delimitadora e um rótulo de categoria atribuído a ele. Há duas maneiras de fornecer rótulos e caixas delimitadoras para seus itens de treinamento:
- incluir rótulos e caixas delimitadoras no arquivo CSV;
- aplicar rótulos e caixas delimitadoras aos itens na IU de rastreamento de objetos do AutoML Video.
Para detalhes sobre como rotular itens no arquivo .CSV, consulte Como preparar seus dados de treinamento.
Para rotular itens na IU de rastreamento de objetos em vídeo AutoML, selecione o conjunto de dados na página de listagem do conjunto de dados para ver os detalhes. O nome de exibição do conjunto de dados selecionado é exibido na barra de título, e a página relaciona os itens individuais no conjunto de dados com os respectivos rótulos. A barra de navegação à esquerda resume o número de itens rotulados e não rotulados. É possível filtrar a lista de itens por rótulo.
Para atribuir rótulos e caixas delimitadoras a vídeos não rotulados ou alterar rótulos e caixas delimitadoras de vídeo, faça o seguinte:
- Na página do conjunto de dados, clique no vídeo ao qual você quer adicionar rótulos.
Na página do vídeo, faça o seguinte:
- Execute o vídeo até ver o item que você quer rotular.
- Arraste o cursor para desenhar uma caixa delimitadora em torno do item.
- Depois de desenhar a caixa delimitadora, selecione o rótulo que você quer usar.
- Clique em Save.
Se você precisar adicionar um novo rótulo ao conjunto de dados, na página do conjunto de dados, acima da lista de rótulos atuais, clique nos três pontos ao lado de Filtrar rótulos e, em seguida, clique em Adicionar novo rótulo.
Como alterar rótulos nos dados
Também é possível alterar os rótulos aplicados aos vídeos em um conjunto de dados. Na IU do rastreamento de objetos do AutoML, faça o seguinte:
- Na página do conjunto de dados, clique no vídeo cujos rótulos você quer alterar.
Na página do vídeo, faça o seguinte:
- Na lista de rótulos à esquerda, selecione o rótulo que você quer alterar.
- Na visualização do vídeo, clique com o botão direito do mouse na caixa delimitadora do vídeo e selecione o rótulo pretendido.
- Clique em Save.
Como listar conjuntos de dados
Um projeto pode incluir vários conjuntos de dados. Nesta seção, você verá como recuperar uma lista dos conjuntos de dados disponíveis para um projeto.
IU da Web
Para ver uma lista dos conjuntos de dados disponíveis usando o interface de usuário do rastreamento de objetos de vídeo do AutoML, navegue até a página Conjuntos de dados.
Para ver os conjuntos de dados de outro projeto, selecione-o na lista suspensa na parte superior direita da barra de título.
REST
Use os comandos docurl
ou do PowerShell a seguir para receber uma lista dos conjuntos de dados e o número de vídeos de amostra que foram importados para o conjunto de dados.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-number: o número do seu projeto
- location-id: a região do Cloud em que a anotação deve ocorrer. As regiões de nuvem compatíveis são:
us-east1
,us-west1
,europe-west1
easia-east1
. Se nenhuma região for especificada, uma região será determinada com base na localização do arquivo de vídeo.
Método HTTP e URL:
GET https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets
Para enviar a solicitação, escolha uma destas opções:
curl
execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-number" \
"https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets "
PowerShell
execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-number" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets " | Select-Object -Expand Content
VOT3940649673949184000
é o ID da operação de longa duração criada para a solicitação e fornecida na resposta quando você iniciou a operação.
Java
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Como excluir um conjunto de dados
O código a seguir demonstra como excluir um conjunto de dados.
IU da Web
-
Navegue até a página Conjuntos de dados na IU de rastreamento de objetos do AutoML Video.
- Clique no menu de três pontos à extrema direita da linha que você quer excluir e selecione Excluir conjunto de dados.
- Clique em Confirmar na caixa de diálogo de confirmação.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-number: o número do seu projeto
- location-id: a região do Cloud em que a anotação deve ocorrer. As regiões de nuvem compatíveis são:
us-east1
,us-west1
,europe-west1
easia-east1
. Se nenhuma região for especificada, uma região será determinada com base na localização do arquivo de vídeo. - datase-id: substitua pelo identificador do código do conjunto de dados.
Método HTTP e URL:
DELETE https://automl.googleapis.com/v1beta1/projects/project-number/locations/location-id/datasets/dataset-id
Para enviar a solicitação, expanda uma destas opções:
Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.
Java
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para autenticar no AutoML Video Object Tracking, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.