:py:mod:`neural_compressor.experimental.data.dataloaders.sampler`
=================================================================

.. py:module:: neural_compressor.experimental.data.dataloaders.sampler

.. autoapi-nested-parse::

   Definitions of the methods to sample data.



Module Contents
---------------

Classes
~~~~~~~

.. autoapisummary::

   neural_compressor.experimental.data.dataloaders.sampler.Sampler
   neural_compressor.experimental.data.dataloaders.sampler.IterableSampler
   neural_compressor.experimental.data.dataloaders.sampler.SequentialSampler
   neural_compressor.experimental.data.dataloaders.sampler.BatchSampler




.. py:class:: Sampler(data_source)

   Bases: :py:obj:`object`

   Base class for all Samplers.

   __iter__ is needed no matter whether you use IterableSampler
   or Squential sampler, if you want implement your own sampler, make clear what the type is
   your Dataset, if IterableDataset(method __iter__ implemented), try to use IterableSampler,
   else if you have an IndexDataset(method __getitem__ implemented), your dataset should have
   method __len__ implemented.


.. py:class:: IterableSampler(dataset)

   Bases: :py:obj:`Sampler`

   Interally samples elements.

   Used for datasets retrieved element by interator. Yield None to act as a placeholder for each iteration.


.. py:class:: SequentialSampler(dataset, distributed)

   Bases: :py:obj:`Sampler`

   Sequentially samples elements, used for datasets retrieved element by index.


.. py:class:: BatchSampler(sampler, batch_size, drop_last=True)

   Bases: :py:obj:`Sampler`

   Yield a batch of indices and number of batches.