RandomGenerator gen = new MersenneTwister(123); MultiLayerConfiguration encoderConf = new NeuralNetConfiguration.Builder().weightInit(WeightInit.VI) .layerFactory(LayerFactories.getFactory(RBM.class)) .iterations(5) .lossFunction(LossFunctions.LossFunction.RECONSTRUCTION_CROSSENTROPY).rng(gen) .learningRate(1e-1).nIn(784).nOut(30).list(3) .hiddenLayerSizes(new int[]{2000, 1000, 500}) .build();