Java 如何在netbeans中加载经过训练的神经网络(使用neuroph)?
我正在使用神经网络进行图像识别。为了训练数据,我一直遵循此链接中的说明: 我想在netbeans中使用它,我已经使用了他们在上面这个链接中给出的代码。在这个过程中,我面临的问题很少Java 如何在netbeans中加载经过训练的神经网络(使用neuroph)?,java,netbeans,neural-network,Java,Netbeans,Neural Network,我正在使用神经网络进行图像识别。为了训练数据,我一直遵循此链接中的说明: 我想在netbeans中使用它,我已经使用了他们在上面这个链接中给出的代码。在这个过程中,我面临的问题很少 在这个链接中,只需点击“保存”选项,就可以保存经过训练的神经网络,但我不能。我所能做的就是“拯救一切” 我使用这段代码并提供我的神经网络的名称,它给了我: 线程“main”中出现异常 org.neuroph.core.exceptions.NeurophException:无法读取神经异常 网络文件!在 org.ne
请帮我解决这个问题。下面的代码是一个在java Europh中加载nnet文件的示例(如果您的nnet文件是从Europh studio保存的,则此操作将不起作用) 请记住,此代码只能加载由上述代码保存的nnet文件。否则,如果您从neuralph studio保存它并尝试以这种方式加载,它将无法工作。
希望这能有所帮助。您是否尝试输入文件的完整路径?你目前的工作目录是什么?@BretC是的,我试着给出了通往训练有素网络的全部路径。还是不走运。我想把经过训练的神经网络复制到我的netbeans代码中的一个文件夹中。我也这么做了,但仍然给出了相同的错误。保存和加载网络似乎可以消除所有的权重StackOverflower错误
// create MultiLayerPerceptron neural network
MultiLayerPerceptron neuralNet = new MultiLayerPerceptron(TransferFunctionType.SIGMOID,inputsCount, 22, outputsCount);
// set learning rule
MomentumBackpropagation learningRule = (MomentumBackpropagation) neuralNet.getLearningRule();
learningRule.setLearningRate(0.2);
learningRule.setMaxError(0.01);
//after playing around with this neuralNet, we can save it as:
System.out.println("Saving network");
neuralNet.save("C:\\Users\\Downloads\\MyNeuralNetAnimals.nnet");
Next time, if you want to load that neuralNet, instead of creating new network, dataset, and do all the learning stuffs again:
NeuralNetwork neuralNet = NeuralNetwork.load("C:\\Users\\Downloads\\MyNeuralNetAnimals.nnet");
MomentumBackpropagation learningRule = (MomentumBackpropagation) neuralNet.getLearningRule();