The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

NAME

AI::MXNet::Gluon::Data::Sampler

DESCRIPTION

Base class for samplers.
All samplers should subclass AI::MXNet::Gluon::Data::Sampler
and define method 'len' and 'next'
methods.

NAME

AI::MXNet::Gluon::Data::Sampler::SequentialSampler

DESCRIPTION

Samples elements from [0, length) sequentially.
Parameters
----------
length : int
Length of the sequence.

NAME

AI::MXNet::Gluon::Data::Sampler::RandomSampler

DESCRIPTION

Samples elements from [0, length) randomly without replacement.
Parameters
----------
length : int
Length of the sequence.

NAME

AI::MXNet::Gluon::Data::Sampler::BatchSampler

DESCRIPTION

Wraps over another AI::MXNet::Gluon::Data::Sampler and return mini-batches of samples.
Parameters
----------
sampler : AI::MXNet::Gluon::Data::Sampler
The source Sampler.
batch_size : int
Size of mini-batch.
last_batch : {'keep', 'discard', 'rollover'}
Specifies how the last batch is handled if batch_size does not evenly
divide sequence length.
If 'keep', the last batch will be returned directly, but will contain
less element than `batch_size` requires.
If 'discard', the last batch will be discarded.
If 'rollover', the remaining elements will be rolled over to the next
iteration.
Examples
--------
>>> $sampler = gluon->data->SequentialSampler(10)
>>> $batch_sampler = gluon->data->BatchSampler($sampler, batch_size => 3, last_batch => 'keep');
>>> @{ $batch_sampler }
[[0, 1, 2], [3, 4, 5], [6, 7, 8], [9]]