首页 > 解决方案 > RNN 的不稳定行为

问题描述

我正在用一些财务数据训练 LSTM 模型。不能透露数据细节,因为它是真实的贸易数据。我面临的问题是,在训练 Keras 时,会打印出日志,其中包含与训练和测试损失、准确性相关的信息。在这些日志中,我的测试准确度是 56%,有时甚至在它附近。但是对于评估,我创建了一个简单的函数,它对测试数据进行预测,然后使用 sklearn 准确度分数打印出预测的准确度。现在,这个准确率是 24%,有时甚至更差。可能是什么原因?我 100% 确定测试数据是相同的,并且我的代码中没有错误。我能做些什么来获得好的结果?我已经尝试过调整学习率、模型架构、层、优化器、梯度裁剪等,但我仍然得到相同的行为。

我正在添加日志和混淆矩阵的图像。在此处输入图像描述 在此处输入图像描述

标签: pythontensorflowmachine-learningkerasrecurrent-neural-network

解决方案


我 100% 确定测试数据是相同的,并且我的代码中没有错误。

如果我错了,请纠正我:如果我理解正确,您已将数据分成两部分:训练和测试。您正在使用 Keras 指标对测试数据执行验证,然后还使用返回不同结果的 sklearn 进行验证。您似乎对自定义损失/度量函数有回归问题。

您是否考虑过手头可能有不同的精度计算公式?例如,一个公式可能是min(prediction, target)/max(prediction, target),而另一个是1-(abs(prediction - target)/target)


推荐阅读