- Noise_Init() depoends only on seed
- more detrmistic calls of shuffle() - Shuffle() init weights with uniform noise git-svn-id: http://moon:8086/svn/software/trunk/projects/RBM@599 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
+9
-5
@@ -82,23 +82,27 @@ public:
|
||||
m_w.resize(m_numVisible, m_numHidden);
|
||||
m_bv.resize(m_numVisible);
|
||||
m_bh.resize(m_numHidden);
|
||||
shuffle(0.01);
|
||||
}
|
||||
|
||||
void shuffle(double stdDev)
|
||||
{
|
||||
uint32_t i, j;
|
||||
|
||||
m_bv.array().fill(stdDev*Noise_Gaussian(&m_noise));
|
||||
m_bh.array().fill(stdDev*Noise_Gaussian(&m_noise));
|
||||
|
||||
for (i=0; i < m_numVisible; i++)
|
||||
{
|
||||
for (j=0; j < m_numHidden; j++)
|
||||
{
|
||||
m_w(i,j) = stdDev*Noise_Gaussian(&m_noise);
|
||||
m_w(i,j) = stdDev*(Noise_Uniform(&m_noise) - 0.5);
|
||||
}
|
||||
}
|
||||
for (i=0; i < m_numVisible; i++)
|
||||
{
|
||||
m_bv(i) = stdDev*(Noise_Uniform(&m_noise) - 0.5);
|
||||
}
|
||||
for (i=0; i < m_numHidden; i++)
|
||||
{
|
||||
m_bh(i) = stdDev*(Noise_Uniform(&m_noise) - 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
Weights& operator= (const Weights &rhs)
|
||||
|
||||
+1
-1
@@ -46,7 +46,7 @@ double ran0(long *idum)
|
||||
void Noise_Init(noise_gen_t *pObj, long seed)
|
||||
{
|
||||
|
||||
pObj->state = seed ^ clock();
|
||||
pObj->state = seed;
|
||||
}
|
||||
|
||||
void Noise_Free(noise_gen_t *pObj)
|
||||
|
||||
Reference in New Issue
Block a user