PyTorch: conjuntos de datos

En este capítulo, nos centraremos más en torchvision.datasetsy sus diversos tipos. PyTorch incluye los siguientes cargadores de conjuntos de datos:

  • MNIST
  • COCO (subtítulos y detección)

El conjunto de datos incluye la mayoría de los dos tipos de funciones que se indican a continuación:

  • Transform- una función que toma una imagen y devuelve una versión modificada de cosas estándar. Estos se pueden componer junto con transformaciones.

  • Target_transform- una función que toma el objetivo y lo transforma. Por ejemplo, toma la cadena de subtítulos y devuelve un tensor de índices mundiales.

MNIST

El siguiente es el código de muestra para el conjunto de datos MNIST:

dset.MNIST(root, train = TRUE, transform = NONE, 
target_transform = None, download = FALSE)

Los parámetros son los siguientes:

  • root - directorio raíz del conjunto de datos donde existen los datos procesados.

  • train - Verdadero = Conjunto de entrenamiento, Falso = Conjunto de prueba

  • download - Verdadero = descarga el conjunto de datos de Internet y lo coloca en la raíz.

COCO

Esto requiere que se instale la API de COCO. El siguiente ejemplo se usa para demostrar la implementación de COCO del conjunto de datos usando PyTorch:

import torchvision.dataset as dset
import torchvision.transforms as transforms
cap = dset.CocoCaptions(root = ‘ dir where images are’, 
annFile = ’json annotation file’,
transform = transforms.ToTensor())
print(‘Number of samples: ‘, len(cap))
print(target)

El resultado obtenido es el siguiente:

Number of samples: 82783
Image Size: (3L, 427L, 640L)