mxnet
Public Member Functions | List of all members
mshadow::Random< cpu, DType > Class Template Reference

CPU random number generator. More...

#include <random.h>

Collaboration diagram for mshadow::Random< cpu, DType >:
Collaboration graph

Public Member Functions

 Random (int seed)
 constructor of random engine More...
 
 ~Random (void)
 
void Seed (int seed)
 seed random number generator using this seed More...
 
unsigned GetSeed () const
 get random seed used in random generator More...
 
void set_stream (Stream< cpu > *stream)
 set the stream of computation More...
 
template<int dim>
expr::ReshapeExp< Tensor< cpu, 1, DType >, DType, dim, 1 > gaussian (Shape< dim > shape)
 return a temporal expression storing standard gaussian random variables the temporal tensor is only valid before next call of gaussian or uniform can be used as part of expression Caution: this means expression such as A = gaussian(s1) * gaussian(s2) will give invalid result, since second call of gaussian(s2) makes gaussian(s1) invalid A = gaussian(s1)*B+C; is correct; use one gaussian/uniform in each expression More...
 
template<int dim>
expr::ReshapeExp< Tensor< cpu, 1, DType >, DType, dim, 1 > uniform (Shape< dim > shape)
 return a temporal expression storing standard uniform [0,1) the temporal tensor is only valid before next call of gaussian or uniform can be used as part of expression Caution: this means expression such as A = uniform(s1) * uniform(s2) will give invalid result, since second call of gaussian(s2) makes gaussian(s1) invalid A = gaussian(s1)*B+C; is correct; use one gaussian/uniform in each expression More...
 
std::mt19937 & GetRndEngine ()
 

Detailed Description

template<typename DType>
class mshadow::Random< cpu, DType >

CPU random number generator.

Constructor & Destructor Documentation

template<typename DType >
mshadow::Random< cpu, DType >::Random ( int  seed)
inlineexplicit

constructor of random engine

Parameters
seedrandom number seed
template<typename DType >
mshadow::Random< cpu, DType >::~Random ( void  )
inline

Member Function Documentation

template<typename DType >
template<int dim>
expr::ReshapeExp<Tensor<cpu, 1, DType>, DType, dim, 1> mshadow::Random< cpu, DType >::gaussian ( Shape< dim >  shape)
inline

return a temporal expression storing standard gaussian random variables the temporal tensor is only valid before next call of gaussian or uniform can be used as part of expression Caution: this means expression such as A = gaussian(s1) * gaussian(s2) will give invalid result, since second call of gaussian(s2) makes gaussian(s1) invalid A = gaussian(s1)*B+C; is correct; use one gaussian/uniform in each expression

Parameters
shapeshape of the tensor
Returns
a temporal expression storing standard gaussian random variables
Template Parameters
dimdimension of tensor
template<typename DType >
std::mt19937& mshadow::Random< cpu, DType >::GetRndEngine ( )
inline
template<typename DType >
unsigned mshadow::Random< cpu, DType >::GetSeed ( ) const
inline

get random seed used in random generator

Returns
seed in unsigned
template<typename DType >
void mshadow::Random< cpu, DType >::Seed ( int  seed)
inline

seed random number generator using this seed

Parameters
seedseed of prng
template<typename DType >
void mshadow::Random< cpu, DType >::set_stream ( Stream< cpu > *  stream)
inline

set the stream of computation

Parameters
streamcomputation stream
template<typename DType >
template<int dim>
expr::ReshapeExp<Tensor<cpu, 1, DType>, DType, dim, 1> mshadow::Random< cpu, DType >::uniform ( Shape< dim >  shape)
inline

return a temporal expression storing standard uniform [0,1) the temporal tensor is only valid before next call of gaussian or uniform can be used as part of expression Caution: this means expression such as A = uniform(s1) * uniform(s2) will give invalid result, since second call of gaussian(s2) makes gaussian(s1) invalid A = gaussian(s1)*B+C; is correct; use one gaussian/uniform in each expression

Parameters
shapeshape of the tensor
Returns
a temporal expression storing standard uniform [0,1)
Template Parameters
dimdimension of tensor

The documentation for this class was generated from the following file: