diff --git a/include/AutoencoderModel.txx b/include/AutoencoderModel.txx
index a308fa55861ac422b67e0737c442108454b121e3..d5ceb9deaeff3af6246dfec8220ed619d753d6d6 100644
--- a/include/AutoencoderModel.txx
+++ b/include/AutoencoderModel.txx
@@ -43,8 +43,7 @@ void AutoencoderModel<TInputValue,AutoencoderType>::Train()
 	Shark::ListSampleToSharkVector(this->GetInputListSample(), features);
 	std::cout << "creating the data vector" << std::endl;
 	shark::Data<shark::RealVector> inputSamples = shark::createDataFromRange( features );
-	
-	
+
 	std::ofstream ofs;
 	if (this->m_WriteLearningCurve =true) 
 	{
@@ -100,8 +99,8 @@ void AutoencoderModel<TInputValue,AutoencoderType>::TrainOneLayer(shark::Abstrac
 
 	std::size_t inputs = dataDimension(samples);
 	net.setStructure(inputs, nbneuron);
-	//initRandomUniform(net,-0.1*std::sqrt(1.0/inputs),0.1*std::sqrt(1.0/inputs));
-	initRandomUniform(net,-1,1);
+	initRandomUniform(net,-0.1*std::sqrt(1.0/inputs),0.1*std::sqrt(1.0/inputs));
+	//initRandomUniform(net,-1,1);
 	shark::ImpulseNoiseModel noise(noise_strength,0.0); //set an input pixel with probability m_Noise to 0
 	shark::ConcatenatedModel<shark::RealVector,shark::RealVector> model = noise>> net;
 	shark::LabeledData<shark::RealVector,shark::RealVector> trainSet(samples,samples);//labels identical to inputs
@@ -146,8 +145,9 @@ void AutoencoderModel<TInputValue,AutoencoderType>::TrainOneSparseLayer(shark::A
 
 	std::size_t inputs = dataDimension(samples);
 	net.setStructure(inputs, nbneuron);
-	//initRandomUniform(net,-0.1*std::sqrt(1.0/inputs),0.1*std::sqrt(1.0/inputs));
-	initRandomUniform(net,-1,1);
+	initRandomUniform(net,-0.1*std::sqrt(1.0/inputs),0.1*std::sqrt(1.0/inputs));
+	
+	//initRandomUniform(net,-1,1);
 	shark::LabeledData<shark::RealVector,shark::RealVector> trainSet(samples,samples);//labels identical to inputs
 	shark::SquaredLoss<shark::RealVector> loss;
 	shark::SparseAutoencoderError error(trainSet,&net, &loss, rho, beta);