- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Neuroph 库训练神经网络,但出现此错误:
44 [NeurophLearningThread] INFO org.neuroph.core.learning.LearningRule - Learning Started
Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
at java.lang.reflect.Method.invoke(Method.java:498)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1028)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1496)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348)
at org.neuroph.util.NeurophArrayList.writeObject(NeurophArrayList.java:710)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
问题是,我在另一个项目中使用相同的代码训练神经网络,该项目具有相同的导入 jar 并且工作正常。这是我用来创建和训练神经网络的代码:
public void TrainNeuralNetwork(double[] inputs, double[] outputs){
DataSet set = new DataSet(inputs.length,outputs.length);
set.addRow(inputs,outputs);
System.out.println("Training...");
MultiLayerPerceptron loadSnakeNN = new MultiLayerPerceptron(TransferFunctionType.LINEAR, inputs.length, 500, outputs.length);
if( loadSnakeNN.getLearningRule() instanceof MomentumBackpropagation )
((MomentumBackpropagation)loadSnakeNN.getLearningRule()).setBatchMode(true);
MomentumBackpropagation learningRule = (MomentumBackpropagation)loadSnakeNN.getLearningRule();// Set learningRule
learningRule.setMaxError(0.01);
loadSnakeNN.learn(set);
loadSnakeNN.save("SnakeNN.nnet");
System.out.println("Neural Network Trained!");
}
更新
我发现问题出在哪里了。当我使用超过 90 个输入时,我收到上述错误。所以我的新问题是,如何训练这个具有超过 90 个输入的神经网络?
最佳答案
您可以使用 JVM 参数 -Xss
增加程序可用的堆栈大小。
`java -Xss2048m ...`
意味着你得到一个2048Mb
的堆栈。如果您从 IDE 运行此程序,您可以搜索以了解如何为您的特定 IDE 传递 JVM 参数。
我假设您的代码或库中没有错误,否则增加堆栈可能还不够。
关于java - 尝试使用 Neuroph 框架训练神经网络时出现 StackOverFlowError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35390429/
我安装了适用于 Windows 64 位的 Neuroph Studio 2.92,但当我想创建新项目时,Neuroph 项目选项未显示。所有其他类别,如 java、maven 都会显示。有没有人遇到
我目前正在研究java的神经网络框架“neuroph”,我有一个关于数据集中数据类型的问题。 有没有办法使用包含单词和数字的数据集作为训练集?因为当我上传具有此类标准的数据集时,我得到“NaN”,这仅
我正在创建一个神经网络,使用 Neuroph 训练识别图像中的数字。我想通过提供输入原始图像的不同变体来使我的神经网络变得更好。以“70.jpg”为例,我想提供 70 的模糊图像、70 的不清楚图像等
我有一堆 GPS 坐标。这些坐标来自一个特定位置,我知道确切的 GPS 坐标。 8.228619|124.237528 8.228619|124.237528 8.228583|124.237560
我是神经网络领域的新手(说实话我几天前才刚开始)。我想在我的 OCR 应用程序中使用神经网络来识别手写文本。 我想知道的是,是否可以在初始训练后训练网络。换句话说,我一开始要训练几个字符,但我想稍后向
我正在使用 Neuroph 2.9 框架编写 ANN 代码来预测房价。我希望每次运行每个纪元时都会出现每个错误(以在图表上显示错误的改进),但这会导致错误。 // create multi layer
为了我的研究生研究,我正在创建一个训练图像识别的神经网络。我要复杂得多,而不仅仅是获取 RGB 值的网格、下采样并将它们发送到网络的输入,就像许多示例所做的那样。我实际上使用了 100 多个独立训练的
我知道如何使用 java 进行编码,但我是 Neuroph 的新手,我在这些代码中遇到了 VectorSizeMismatchException。 主要:https://pastebin.com/dn
我正在尝试使用 Neuroph 库训练神经网络,但出现此错误: 44 [NeurophLearningThread] INFO org.neuroph.core.learning.LearningRu
在学习人工智能概念的过程中,我在http://neuroph.sourceforge.net/tutorials/LensesClassification/LensesClassificationUs
此代码是我的代码的一部分,用于在 Android 上执行 OCR。我在我的项目中导入了neuroph.jar。 我在 Netbeans IDE 上编写该代码并在我的手机上加载,它运行良好。但是当我在
我正在编写一个将执行图像识别和分析的 Android 应用程序。我听说神经网络是执行图像识别的更好方法之一,并尝试移植 CodeProject 上 Mike O'Neill 在他出色的 Win32 手
我有一个关于 Neuroph 2.6 的 Neuroph ImageRecognition 的 FractionRgbData 类的问题。我不完全理解静态 FractionRgbData.conver
我正在研究 Neuroph ANN 框架。在训练神经网络之后,使用以下方法测试新输入(该库是开源的,因此我能够引用我导入的库内的实际实现 1 ): /** * Sets network input.
我是一名优秀的程序员,十分优秀!