我是新手,我最近阅读了“快速入门指南”
但是我找到了一些我认为是错误的东西,你能证实这一点吗? 在最后的“章节”,“使用Encog for Time Series”中,使用以下代码在控制台中输出输出:
while (csv.next() && stopAfter > 0) { StringBuilder result = new StringBuilder(); line[0] = csv.get(2);// ssn line[1] = csv.get(3);// dev helper.normalizeInputVector(line, slice, false); // enough data to build a full window? if (window.isReady()) { window.copyWindow(input.getData(), 0); String correct = csv.get(2); // trying to predict SSN. MLData output = bestMethod.compute(input); String predicted = helper .denormalizeOutputVectorToString(output)[0]; result.append(Arrays.toString(line)); result.append(" -> predicted: "); result.append(predicted); result.append("(correct: "); result.append(correct); result.append(")");
错误我认为这是错误的,是“正确的”变量:因为它是从CSV预测SSN值,所以使用csv.get(2)读取它是正确的,但应该按时调用它“T + 1”。在此代码中,它被评估为等于时间t的SSN
输出也显示了这一点:
[9.4,9.1] - >预测:16.576461298905144(正确:9.4) 这里显然“正确”值与输入相同。
我错过了什么吗?
感谢
一个。