@Override public NeuralNetwork train(double[][] x, int[] y) { NeuralNetwork net = new NeuralNetwork(errorFunction, activationFunction, numUnits); net.setLearningRate(eta); net.setMomentum(alpha); net.setWeightDecay(lambda); for (int i = 1; i <= epochs; i++) { net.learn(x, y); logger.info("Neural network learns epoch {}", i); } return net; } }