Eliminación de un conjuntos de datos - Rekognition

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Eliminación de un conjuntos de datos

Puede eliminar los conjuntos de datos de entrenamiento y de prueba de un proyecto.

Eliminación de un conjunto de datos (consola)

Consulte el siguiente procedimiento para eliminar un conjunto de datos. Si queda un conjunto de datos en el proyecto (de entrenamiento o de prueba), se abrirá la página de detalles del proyecto. Si en el proyecto no quedan conjuntos de datos, se abrirá la página Crear conjunto de datos.

Si elimina el conjunto de datos de entrenamiento, deberá crear un nuevo conjunto de datos de entrenamiento para el proyecto antes de poder entrenar un modelo. Para obtener más información, consulte Creación de conjuntos de datos de entrenamiento y prueba.

Si elimina el conjunto de datos de prueba, podrá entrenar un modelo sin crear un nuevo conjunto de datos de prueba. Durante el entrenamiento, el conjunto de datos de entrenamiento se divide para crear un nuevo conjunto de datos de prueba para el proyecto. Al dividir el conjunto de datos de entrenamiento, se reduce la cantidad de imágenes disponibles para el entrenamiento. Para mantener la calidad, recomendamos crear un nuevo conjunto de datos de prueba antes de entrenar un modelo. Para obtener más información, consulte Añadir un conjunto de datos a un proyecto.

Cómo eliminar un conjunto de datos
  1. Abra la consola de Amazon Rekognition en https://console.aws.amazon.com/rekognition/.

  2. En el panel izquierdo, elija Usar etiquetas personalizadas. Se abrirá la página de inicio de Etiquetas personalizadas de Amazon Rekognition.

  3. En el panel de navegación izquierdo, elija Proyectos. Se abrirá la vista de proyectos.

  4. Elija el proyecto que contenga el conjunto de datos que desea eliminar.

  5. En el panel de navegación izquierdo, en el nombre del proyecto, elija Conjunto de datos.

  6. Elija Acciones.

  7. Para eliminar el conjunto de datos de entrenamiento, seleccione Eliminar conjunto de datos de entrenamiento.

  8. Para eliminar el conjunto de datos de prueba, elija Eliminar conjunto de datos de prueba.

  9. En el cuadro de diálogo Eliminar conjunto de datos de entrenamiento o prueba, escriba eliminar para confirmar que desea eliminar el conjunto de datos.

  10. Elija Eliminar conjunto de datos de entrenamiento o prueba, para eliminarlo.

Eliminación de un conjunto de datos de Etiquetas personalizadas de Amazon Rekognition (SDK)

Para eliminar un conjunto de datos de Etiquetas personalizadas de Amazon Rekognition, debe llamar a DeleteDataset e indicar el nombre de recurso de Amazon (ARN) del conjunto de datos que desee eliminar. Para obtener los ARN de los conjuntos de datos de entrenamiento y de prueba de un proyecto, llame a DescribeProjects. La respuesta incluye una matriz de objetos ProjectDescription. Los ARN (DatasetArn) y los tipos de los conjuntos de datos (DatasetType) figuran en la lista de Datasets.

Si elimina el conjunto de datos de entrenamiento, tendrá que crear un nuevo conjunto de datos de entrenamiento para el proyecto antes de poder entrenar un modelo. Si elimina el conjunto de datos de prueba, tendrá que crear un nuevo conjunto de datos de prueba antes de poder entrenar un modelo. Para obtener más información, consulte Añadir un conjunto de datos a un proyecto (SDK).

Cómo eliminar un conjunto de datos (SDK)
  1. Si aún no lo ha hecho, instale y configure la AWS CLI y los SDK de AWS. Para obtener más información, consulte Paso 4: Configure los SDK y AWS CLIAWS.

  2. Elimine un conjunto de datos con el siguiente código.

    AWS CLI

    Cambie el valor de dataset-arn por el ARN del conjunto de datos que desee eliminar.

    aws rekognition delete-dataset --dataset-arn dataset-arn \ --profile custom-labels-access
    Python

    Utilice el siguiente código. Indique los siguientes parámetros de línea de comandos:

    • dataset_arn: el ARN del conjunto de datos que desea eliminar.

    # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 """ Purpose Shows how to delete an Amazon Rekognition Custom Labels dataset. """ import argparse import logging import time import boto3 from botocore.exceptions import ClientError logger = logging.getLogger(__name__) def delete_dataset(rek_client, dataset_arn): """ Deletes an Amazon Rekognition Custom Labels dataset. :param rek_client: The Amazon Rekognition Custom Labels Boto3 client. :param dataset_arn: The ARN of the dataset that you want to delete. """ try: # Delete the dataset, logger.info("Deleting dataset: %s", dataset_arn) rek_client.delete_dataset(DatasetArn=dataset_arn) deleted = False logger.info("waiting for dataset deletion %s", dataset_arn) # Dataset might not be deleted yet, so wait. while deleted is False: try: rek_client.describe_dataset(DatasetArn=dataset_arn) time.sleep(5) except ClientError as err: if err.response['Error']['Code'] == 'ResourceNotFoundException': logger.info("dataset deleted: %s", dataset_arn) deleted = True else: raise logger.info("dataset deleted: %s", dataset_arn) return True except ClientError as err: logger.exception("Couldn't delete dataset - %s: %s", dataset_arn, err.response['Error']['Message']) raise def add_arguments(parser): """ Adds command line arguments to the parser. :param parser: The command line parser. """ parser.add_argument( "dataset_arn", help="The ARN of the dataset that you want to delete." ) def main(): logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s") try: # Get command line arguments. parser = argparse.ArgumentParser(usage=argparse.SUPPRESS) add_arguments(parser) args = parser.parse_args() print(f"Deleting dataset: {args.dataset_arn}") # Delete the dataset. session = boto3.Session(profile_name='custom-labels-access') rekognition_client = session.client("rekognition") delete_dataset(rekognition_client, args.dataset_arn) print(f"Finished deleting dataset: {args.dataset_arn}") except ClientError as err: error_message = f"Problem deleting dataset: {err}" logger.exception(error_message) print(error_message) if __name__ == "__main__": main()
    Java V2

    Utilice el siguiente código. Indique los siguientes parámetros de línea de comandos:

    • dataset_arn: el ARN del conjunto de datos que desea eliminar.

    /* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ package com.example.rekognition; import java.util.logging.Level; import java.util.logging.Logger; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.rekognition.RekognitionClient; import software.amazon.awssdk.services.rekognition.model.DeleteDatasetRequest; import software.amazon.awssdk.services.rekognition.model.DeleteDatasetResponse; import software.amazon.awssdk.services.rekognition.model.DescribeDatasetRequest; import software.amazon.awssdk.services.rekognition.model.RekognitionException; public class DeleteDataset { public static final Logger logger = Logger.getLogger(DeleteDataset.class.getName()); public static void deleteMyDataset(RekognitionClient rekClient, String datasetArn) throws InterruptedException { try { logger.log(Level.INFO, "Deleting dataset: {0}", datasetArn); // Delete the dataset DeleteDatasetRequest deleteDatasetRequest = DeleteDatasetRequest.builder().datasetArn(datasetArn).build(); DeleteDatasetResponse response = rekClient.deleteDataset(deleteDatasetRequest); // Wait until deletion finishes DescribeDatasetRequest describeDatasetRequest = DescribeDatasetRequest.builder().datasetArn(datasetArn) .build(); Boolean deleted = false; do { try { rekClient.describeDataset(describeDatasetRequest); Thread.sleep(5000); } catch (RekognitionException e) { String errorCode = e.awsErrorDetails().errorCode(); if (errorCode.equals("ResourceNotFoundException")) { logger.log(Level.INFO, "Dataset deleted: {0}", datasetArn); deleted = true; } else { logger.log(Level.SEVERE, "Client error occurred: {0}", e.getMessage()); throw e; } } } while (Boolean.FALSE.equals(deleted)); logger.log(Level.INFO, "Dataset deleted: {0} ", datasetArn); } catch ( RekognitionException e) { logger.log(Level.SEVERE, "Client error occurred: {0}", e.getMessage()); throw e; } } public static void main(String args[]) { final String USAGE = "\n" + "Usage: " + "<dataset_arn>\n\n" + "Where:\n" + " dataset_arn - The ARN of the dataset that you want to delete.\n\n"; if (args.length != 1) { System.out.println(USAGE); System.exit(1); } String datasetArn = args[0]; try { // Get the Rekognition client. RekognitionClient rekClient = RekognitionClient.builder() .credentialsProvider(ProfileCredentialsProvider.create("custom-labels-access")) .region(Region.US_WEST_2) .build(); // Delete the dataset deleteMyDataset(rekClient, datasetArn); System.out.println(String.format("Dataset deleted: %s", datasetArn)); rekClient.close(); } catch (RekognitionException rekError) { logger.log(Level.SEVERE, "Rekognition client error: {0}", rekError.getMessage()); System.exit(1); } catch (InterruptedException intError) { logger.log(Level.SEVERE, "Exception while sleeping: {0}", intError.getMessage()); System.exit(1); } } }