Index: trunk/Ohana/src/opihi/lib.data/nnet.c
===================================================================
--- trunk/Ohana/src/opihi/lib.data/nnet.c	(revision 40320)
+++ trunk/Ohana/src/opihi/lib.data/nnet.c	(revision 40325)
@@ -143,5 +143,5 @@
 }
 
-void CreateNnetData (Nnet *nnet) {
+void CreateNnetData (Nnet *nnet, int LargeWeightInit) {
 
   ohana_gaussdev_init ();
@@ -168,7 +168,9 @@
     }
 
+    float sigma = LargeWeightInit ? 1.0 : 1.0 / sqrt(nnet[0].Nnodes[i-1]);
+
     ALLOCATE (nnet[0].weight[i], float, nnet[0].Nnodes[i-1]*nnet[0].Nnodes[i]);  // weight connected each node in the previous layer to the current layer (excludes input layer)
     for (int j = 0; j < nnet[0].Nnodes[i-1]*nnet[0].Nnodes[i]; j++) {
-      nnet[0].weight[i][j] = ohana_gaussdev_rnd (0.0, 1.0);
+      nnet[0].weight[i][j] = ohana_gaussdev_rnd (0.0, sigma);
     }
 
