Encog C# PNN 是否有效?
Encog C# PNN does it even works?
我在 Encog 中尝试 PPN 网络:
PNNOutputMode mode = PNNOutputMode.Regression;
BasicPNN network = new BasicPNN(PNNKernelType.Gaussian, mode, 10, 1);
TrainBasicPNN train = new TrainBasicPNN(network, dataSet);
train.Iteration();
我认为 class TrainBasicPNN 中的 GlobalMinimumSearch 应该可以找到最佳西格玛。但是如果我在训练后查看西格玛,它们都具有相同的值 0.001,该值非常低并且网络无法正确预测新数据(我得到的输出都是相同的)。如果我尝试对训练数据集进行预测,那么它会正常工作,因为向量与 PNN 中的中心相同,低 sigmas 不是问题。我什至试图改变起始低西格玛:
train.SigmaLow = 3;
这给了我最终的 sigmas 大约 0.004,这仍然很低。我究竟做错了什么?
有关此错误的更多信息 https://github.com/encog/encog-java-core/issues/188。错误存在于两个版本中(C# 和 Java)。
我在 Encog 中尝试 PPN 网络:
PNNOutputMode mode = PNNOutputMode.Regression;
BasicPNN network = new BasicPNN(PNNKernelType.Gaussian, mode, 10, 1);
TrainBasicPNN train = new TrainBasicPNN(network, dataSet);
train.Iteration();
我认为 class TrainBasicPNN 中的 GlobalMinimumSearch 应该可以找到最佳西格玛。但是如果我在训练后查看西格玛,它们都具有相同的值 0.001,该值非常低并且网络无法正确预测新数据(我得到的输出都是相同的)。如果我尝试对训练数据集进行预测,那么它会正常工作,因为向量与 PNN 中的中心相同,低 sigmas 不是问题。我什至试图改变起始低西格玛:
train.SigmaLow = 3;
这给了我最终的 sigmas 大约 0.004,这仍然很低。我究竟做错了什么?
有关此错误的更多信息 https://github.com/encog/encog-java-core/issues/188。错误存在于两个版本中(C# 和 Java)。