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 the
theano.tensor.shared_randomstreams.RandomStreams
subclassbinomial(self, size=(), n=1, p=0.5, ndim=None):
- Sample
n
times with probability of successp
for eachtrial and return the number of successes.
If size
is ambiguous on the number of dimensions, ndim
may 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, ndim
may 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, ndim
may 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, ndim
may 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.a
can be a 1-D array or a positive scalar. Ifa
is a scalar,the samples are drawn from the range [0,a
[.
If size
is ambiguous on the number of dimensions, ndim
may 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, ndim
may 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 bysize
. For instance, ifsize=(p,q)
,p*q
permutations will be generated, andthe output shape will be(p,q,n)
, because each permutationis of sizen
.
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, ifsize=(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.RandomState
values.
theano.tensor.rawrandom.
random_state_type
(_name=None)[source]- Return a new Variable whose
.type
israndom_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 successp
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 upsize
.
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 bysize
. For instance, ifsize=(p,q)
,p*q
permutations will be generated, and the output shape will be(p,q,n)
, because each permutation is of sizen
.
If size
is ambiguous on the number of dimensions, ndim
may 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 probabilities
pvals
, as many times as required bysize
. 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, ndim
may be a plain integer, which should correspond to len(size)
.
Note
The output will have ndim+1
dimensions.
Returns:RandomVariable
, NewRandomState