尝试使用测试示例测试我的神经网络时出现此错误。
这是发生错误的行:
IMLData output = network.Compute(skuska1,testout1);
输入skuska1的地方:
double[] skuska1 = File.ReadAllText(@"E:\te1.txt").Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).Select(double.Parse).ToArray();
和testout1是期望的输出:
double[] testout1 = File.ReadAllText(@"E:\te1out.txt").Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).Select(double.Parse).ToArray();
对于那些不熟悉encog的人,这是根据MVS 2012的Compute方法所需要的
void BasicNetwork.Compute(double[] input, double[] output) (+1 overload(s))
我应该想象一下(+1重载)?
谢谢。
答案 0 :(得分:2)
void BasicNetwork.Compute(double[] input, double[] output)
向神经Netowrk提供来自input
的数据并将输出提供给output
。这就是它返回void
的原因。所以你的代码应该像这样:
double[] output = new double[skuska1.Length];
BasicNetwork.Compute(double[] skuska1, double[] output);
然后,您可以将output
的结果与预期的测试输出进行比较。