change all Rng's to use variate_generator for consistency

This commit is contained in:
Jeff Donahue 2014-01-22 12:42:12 -08:00 коммит произвёл Evan Shelhamer
Родитель 4b1fba7be3
Коммит b3e4ac55fe
1 изменённых файлов: 11 добавлений и 5 удалений

Просмотреть файл

@ -402,9 +402,12 @@ void caffe_vRngUniform(const int n, Dtype* r,
boost::uniform_real<Dtype> random_distribution(
a, caffe_nextafter<Dtype>(b));
Caffe::random_generator_t &generator = Caffe::vsl_stream();
boost::variate_generator<Caffe::random_generator_t,
boost::uniform_real<Dtype> > variate_generator(
generator, random_distribution);
for(int i = 0; i < n; i += 1) {
r[i] = random_distribution(generator);
for (int i = 0; i < n; ++i) {
r[i] = variate_generator();
}
}
@ -436,7 +439,7 @@ void caffe_vRngGaussian(const int n, Dtype* r, const Dtype a,
boost::normal_distribution<Dtype> > variate_generator(
generator, random_distribution);
for(int i = 0; i < n; ++i) {
for (int i = 0; i < n; ++i) {
r[i] = variate_generator();
}
}
@ -458,9 +461,12 @@ void caffe_vRngBernoulli(const int n, Dtype* r, const double p) {
// FIXME check if parameters are handled in the same way ?
boost::bernoulli_distribution<Dtype> random_distribution(p);
Caffe::random_generator_t &generator = Caffe::vsl_stream();
boost::variate_generator<Caffe::random_generator_t,
boost::bernoulli_distribution<Dtype> > variate_generator(
generator, random_distribution);
for(int i = 0; i < n; i += 1) {
r[i] = random_distribution(generator);
for (int i = 0; i < n; ++i) {
r[i] = variate_generator();
}
}