关于使用python预测股票价格的LSTM的问题

关于使用python预测股票价格的LSTM的问题,python,tensorflow,keras,lstm,Python,Tensorflow,Keras,Lstm,我成功地复制了教程中的代码,并实现了一个基本的LSTM网络来预测股票价格。教程如下: 在添加额外的功能列时,我并没有改进模型,所以我尝试了一些非常基本的方法来更好地理解正在发生的事情。 假设要素列为[“日期”、“价格”、“数量”] 然后,我添加了一个附加的特性列“nextDayPrice”,其中包含来自“下一行”的数据。 显然,这些数据在“股价预测模型”中是不可用的,但我想测试一下,看看模型的准确度是否接近100%(正如我所预期的那样) 考虑到其中一个输入是第二天的准确价格(不实际),模

我成功地复制了教程中的代码,并实现了一个基本的LSTM网络来预测股票价格。教程如下:

在添加额外的功能列时,我并没有改进模型,所以我尝试了一些非常基本的方法来更好地理解正在发生的事情。

假设要素列为[“日期”、“价格”、“数量”] 然后,我添加了一个附加的特性列“nextDayPrice”,其中包含来自“下一行”的数据。

显然,这些数据在“股价预测模型”中是不可用的,但我想测试一下,看看模型的准确度是否接近100%(正如我所预期的那样)

考虑到其中一个输入是第二天的准确价格(不实际),模型的准确度不是应该接近100%吗?


这一模式似乎没有改善。我在这里遗漏了什么吗?

您需要向模型中添加另一个输入。仅仅将特征添加到数据集中是不够的


如果您的标签与输入相同,则准确率应为100%。

感谢您的反馈。我相信我确实在输入中添加了该特性,但将进一步测试。为了测试这个问题,我又添加了模拟数据,使价格每天增加1美元。所以第一天=1美元,第300天=300美元,等等。。。有趣的是,该模型有时接近100%的准确度,但却没有达到。50个时代之后,模型实际上开始变得更糟,然后又回到100%,但仍然无法100%准确地预测第二天的“价格”。这是LTSM的一项功能,其设计目的是避免过盈吗?显然,大多数模型并不试图预测基本的线性函数。LSTM的设计并不是为了防止过度拟合。为什么你认为大多数模型都不试图预测线性函数?如果你不添加非线性激活-所有的模型都是线性的-按照我构建它的方式,有一个退出层,退出率为0.4。这似乎可以解释在我的示例中,模型无法收敛到100%的准确度,其中列_y(目标)作为输入。这听起来对吗?是的,辍学可以在一定程度上防止过度装配!对于阅读本文的其他人,我在这里阅读了关于正则化和使用输入层和隐藏层的dropout的内容: