CIFAR10SuperPixelDataset

class dgl.data.CIFAR10SuperPixelDataset(raw_dir=None, split='train', use_feature=False, force_reload=False, verbose=False, transform=None)[source]

Bases: SuperPixelDataset

CIFAR10 superpixel dataset for the graph classification task.

DGL dataset of CIFAR10 in the benchmark-gnn which contains graphs converted fromt the original CIFAR10 images.

Reference http://arxiv.org/abs/2003.00982

Statistics:

  • Train examples: 50,000

  • Test examples: 10,000

  • Size of dataset images: 32

Parameters:
  • raw_dir (str) – Directory to store all the downloaded raw datasets. Default: β€œ~/.dgl/”.

  • split (str) – Should be chosen from [β€œtrain”, β€œtest”] Default: β€œtrain”.

  • use_feature (bool) –

    • True: Adj matrix defined from super-pixel locations + features

    • False: Adj matrix defined from super-pixel locations (only)

    Default: False.

  • force_reload (bool) – Whether to reload the dataset. Default: False.

  • verbose (bool) – Whether to print out progress information. Default: False.

  • transform (callable, optional) – A transform that takes in a DGLGraph object and returns a transformed version. The DGLGraph object will be transformed before every access.

Examples

>>> from dgl.data import CIFAR10SuperPixelDataset
>>> # CIFAR10 dataset
>>> train_dataset = CIFAR10SuperPixelDataset(split="train")
>>> len(train_dataset)
50000
>>> graph, label = train_dataset[0]
>>> graph
Graph(num_nodes=123, num_edges=984,
    ndata_schemes={'feat': Scheme(shape=(5,), dtype=torch.float32)}
    edata_schemes={'feat': Scheme(shape=(1,), dtype=torch.float32)}),
>>> # support tensor to be index when transform is None
>>> # see details in __getitem__ function
>>> import torch
>>> idx = torch.tensor([0, 1, 2])
>>> train_dataset_subset = train_dataset[idx]
>>> train_dataset_subset[0]
Graph(num_nodes=123, num_edges=984,
    ndata_schemes={'feat': Scheme(shape=(5,), dtype=torch.float32)}
    edata_schemes={'feat': Scheme(shape=(1,), dtype=torch.float32)}),
__getitem__(idx)

Get the idx-th sample.

Parameters:

idx (int or tensor) – The sample index. 1-D tensor as idx is allowed when transform is None.

Returns:

  • (dgl.DGLGraph, Tensor) – Graph with node feature stored in feat field and its label.

  • or

  • dgl.data.utils.Subset – Subset of the dataset at specified indices

__len__()

The number of examples in the dataset.