【问题标题】:trying to understand how to interpret 'Accuracy Score' output from LSTM neural network试图了解如何解释 LSTM 神经网络的“准确度分数”输出
【发布时间】:2021-04-14 22:29:24
【问题描述】:

我一直在使用基本的 LSTM 神经网络来探索其预测股市行为的能力,而我围绕它构建的特定代码会产生一个我不完全理解如何解释的准确度得分。它输出一个介于 0 和 1 之间的值,但我不知道如何向某人解释它的好坏以及原因。

任何帮助将不胜感激!

这是计算准确度分数的函数:

def accuracy(model, data):
    y_test = data["y_test"]
    X_test = data["X_test"]
    y_pred = model.predict(X_test)
    y_test = np.squeeze(data["column_scaler"]["Close"].inverse_transform(np.expand_dims(y_test, axis=0)))
    y_pred = np.squeeze(data["column_scaler"]["Close"].inverse_transform(y_pred))
    y_pred = list(map(lambda current, future: int(float(future) > float(current)), y_test[:-LOOKUP_STEP], y_pred[LOOKUP_STEP:]))
    y_test = list(map(lambda current, future: int(float(future) > float(current)), y_test[:-LOOKUP_STEP], y_test[LOOKUP_STEP:]))
    return accuracy_score(y_test, y_pred)

print(str(LOOKUP_STEP) + ":", "Accuracy Score:", accuracy(model, data))

【问题讨论】:

  • “预测股市行为”听起来像是一个回归任务,但看起来这做了很多后处理以将输出离散化为分类任务。 R^{2} 作为指标是否更有意义?

标签: python tensorflow lstm


【解决方案1】:

来自scikit-learn's documentation,您在此处计算的准确度分数是“正确预测的分数(默认)或计数(标准化=假)”。

【讨论】:

  • 是的。我在发布问题并尝试提供它作为答案后找到了文档,但它被删除了。不过谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-11
  • 2017-10-06
  • 2015-06-08
  • 2016-05-30
  • 2019-06-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多