raw_random – Low-level random numbers

Raw random provides the random-number drawing functionality, that underliesthe friendlier RandomStreams interface.

Reference

  • class theano.tensor.rawrandom.RandomStreamsBase(_object)[source]
  • This is the interface for thetheano.tensor.shared_randomstreams.RandomStreams subclass

    • binomial(self, size=(), n=1, p=0.5, ndim=None):
    • Sample n times with probability of success p for eachtrial and return the number of successes.

If size is ambiguous on the number of dimensions, ndimmay be a plain integer to supplement the missing information.

This wraps the numpy implementation, so it has the samebehavior.

  • uniform(self, size=(), low=0.0, high=1.0, ndim=None):
  • Sample a tensor of the given size whose elements come from auniform distribution between low and high.

If size is ambiguous on the number of dimensions, ndimmay be a plain integer to supplement the missing information.

This wraps the numpy implementation, so it has the samebounds: [low, high[.

  • normal(self, size=(), avg=0.0, std=1.0, ndim=None):
  • Sample from a normal distribution centered on avg with thespecified standard deviation (std)

If size is ambiguous on the number of dimensions, ndimmay be a plain integer to supplement the missing information.

This wrap numpy implementation, so it have the same behavior.

  • random_integers(self, size=(), low=0, high=1, ndim=None):
  • Sample a random integer between low and high, both inclusive.

If size is ambiguous on the number of dimensions, ndimmay be a plain integer to supplement the missing information.

This is a generalization of numpy.random.random_integers()to the case where low and high are tensors. Otherwise itbehaves the same.

  • choice(self, size=(), a=2, replace=True, p=None, ndim=None, dtype='int64'):
  • Choose values from a with or without replacement. acan be a 1-D array or a positive scalar. If a is a scalar,the samples are drawn from the range [0, a[.

If size is ambiguous on the number of dimensions, ndimmay be a plain integer to supplement the missing information.

This wraps the numpy implementation so it has the same behavior.

  • poisson(self, size=(), lam=None, ndim=None, dtype='int64'):
  • Draw samples from a Poisson distribution.

The Poisson distribution is the limit of the Binomialdistribution for large N.

If size is ambiguous on the number of dimensions, ndimmay be a plain integer to supplement the missing information.

This wraps the numpy implementation so it has the same behavior.

  • permutation(self, size=(), n=1, ndim=None):
  • Returns permutations of the integers between 0 and n-1, asmany times as required by size. For instance, ifsize=(p,q), p*q permutations will be generated, andthe output shape will be (p,q,n), because each permutationis of size n.

Theano tries to infer the number of dimensions from the lengthof size, but you may always specify it with ndim.

Note

The output will have ndim+1 dimensions.

This is a generalization of numpy.random.permutation() totensors. Otherwise it behaves the same.

  • multinomial(self, size=(), n=1, pvals=[0.5, 0.5], ndim=None):
  • Sample n times from a multinomial distribution defined byprobabilities pvals, as many times as required bysize. For instance, if size=(p,q), p*q sampleswill be drawn, and the output shape will be(p,q,len(pvals)).

Theano tries to infer the number of dimensions from the lengthof size, but you may always specify it with ndim.

Note

The output will have ndim+1 dimensions.

This is a generalization of numpy.random.multinomial()to the case where n and pvals are tensors. Otherwiseit behaves the same.

  • shuffle_row_elements(self, input):
  • Return a variable with every row (rightmost index) shuffled.

This uses a permutation random variable internally, availablevia the .permutation attribute of the return value.

  • class theano.tensor.rawrandom.RandomStateType(_gof.Type)[source]
  • A Type for variables that will take numpy.random.RandomStatevalues.
  • theano.tensor.rawrandom.random_state_type(_name=None)[source]
  • Return a new Variable whose .type is random_state_type.
  • class theano.tensor.rawrandom.RandomFunction(_gof.Op)[source]
  • Op that draws random numbers from a numpy.RandomState object.This Op is parametrized to draw numbers from many possibledistributions.
  • theano.tensor.rawrandom.uniform(_random_state, size=None, low=0.0, high=1.0, ndim=None, dtype=None)[source]
  • Sample from a uniform distribution between low and high.

If the size argument is ambiguous on the number ofdimensions, the first argument may be a plain integerto supplement the missing information.

Returns:RandomVariable, NewRandomState

  • theano.tensor.rawrandom.binomial(_random_state, size=None, n=1, p=0.5, ndim=None, dtype='int64')[source]
  • Sample n times with probability of success p for eachtrial and return the number of successes.

If size is ambiguous on the number of dimensions, ndim maybe a plain integer to supplement the missing information.

Returns:RandomVariable, NewRandomState

  • theano.tensor.rawrandom.normal(_random_state, size=None, avg=0.0, std=1.0, ndim=None, dtype=None)[source]
  • Sample from a normal distribution centered on avg with thespecified standard deviation (std).

If size is ambiguous on the number of dimensions, ndim maybe a plain integer to supplement the missing information.

Returns:RandomVariable, NewRandomState

  • theano.tensor.rawrandom.random_integers(_random_state, size=None, low=0, high=1, ndim=None, dtype='int64')[source]
  • Sample random integers in [low, high] to fill up size.

If size is ambiguous on the number of dimensions, ndim maybe a plain integer to supplement the missing information.

Returns:RandomVariable, NewRandomState

  • theano.tensor.rawrandom.permutation(_random_state, size=None, n=1, ndim=None, dtype='int64')[source]
  • Returns permutations of the integers in [0, n[, as many timesas required by size. For instance, if size=(p,q), p*qpermutations will be generated, and the output shape will be(p,q,n), because each permutation is of size n.

If size is ambiguous on the number of dimensions, ndimmay be a plain integer, which should correspond to len(size).

Note

The output will have ndim+1 dimensions.

Returns:RandomVariable, NewRandomState

  • theano.tensor.rawrandom.multinomial(_random_state, size=None, p_vals=[0.5, 0.5], ndim=None, dtype='int64')[source]
  • Sample from a multinomial distribution defined by probabilitiespvals, as many times as required by size. For instance, ifsize=(p,q), p*q samples will be drawn, and the outputshape will be (p,q,len(pvals)).

If size is ambiguous on the number of dimensions, ndimmay be a plain integer, which should correspond to len(size).

Note

The output will have ndim+1 dimensions.

Returns:RandomVariable, NewRandomState