无法将类型'void'隐式转换为'Encog.ML.Data.IMLData'

时间:2014-02-24 13:38:49

标签: c# parameters encog

尝试使用测试示例测试我的神经网络时出现此错误。

这是发生错误的行:

 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重载)?

谢谢。

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的结果与预期的测试输出进行比较。