probly.representation.sampling.sampler

Model sampling and sample representer implementation.

Functions

get_sampling_predictor(predictor)

Get the predictor to be used for sampling.

sampler_factory(predictor[, num_samples, ...])

Sample multiple predictions from the predictor.

Classes

EnsembleSampler(predictor[, sample_factory, ...])

A sampler that creates representations from ensemble predictions.

Sampler(predictor, num_samples[, ...])

A representation predictor that creates representations from finite samples.

class probly.representation.sampling.sampler.EnsembleSampler(predictor, sample_factory=<lazy_dispatch.singledispatch.lazydispatch object>, sample_axis=1)[source]

Bases: Representer[In, KwIn, Iterable], Generic

A sampler that creates representations from ensemble predictions.

Parameters:
sample(*args, **kwargs)[source]

Sample from the ensemble predictor for a given input.

Parameters:
  • args (In)

  • kwargs (Unpack[KwIn])

Return type:

S

predictor: Predictor[In, KwIn, Out]
sample_factory: SampleFactory[Out, S]
class probly.representation.sampling.sampler.Sampler(predictor, num_samples, sampling_strategy='sequential', sample_factory=<lazy_dispatch.singledispatch.lazydispatch object>, sample_axis=1)[source]

Bases: Representer, Generic

A representation predictor that creates representations from finite samples.

Parameters:
  • predictor (Predictor[In, KwIn, Out])

  • num_samples (int)

  • sampling_strategy (SamplingStrategy)

  • sample_factory (SampleFactory[Out, S])

  • sample_axis (int)

predict(*args, **kwargs)[source]

Sample from the predictor for a given input.

Parameters:
  • args (In)

  • kwargs (Unpack[KwIn])

Return type:

S

num_samples: int
predictor: Predictor[In, KwIn, Out]
sample_axis: int
sample_factory: SampleFactory[Out, S]
sampling_strategy: SamplingStrategy
probly.representation.sampling.sampler.get_sampling_predictor(predictor)[source]

Get the predictor to be used for sampling.

Parameters:

predictor (Predictor[In, KwIn, Out])

Return type:

tuple[Predictor[In, KwIn, Out], Callable[[], None]]

probly.representation.sampling.sampler.sampler_factory(predictor, num_samples=1, strategy='sequential')[source]

Sample multiple predictions from the predictor.

Parameters:
  • predictor (Predictor[In, KwIn, Out])

  • num_samples (int)

  • strategy (SamplingStrategy)

Return type:

Predictor[In, KwIn, list[Out]]