Keras LSTM输入传输

2024-04-20 12:00:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Keras训练timeseries LSTM模型。我知道模型的输入必须采用以下格式:[samples, timesteps, features]。在

但是,当我反向转置每个输入元素时,输入的格式是:[samples, features, timesteps]我的模型精度显著提高,训练时间也减少了不少。有人能解释为什么吗?在

以下是我的培训数据统计数据,供参考:

samples: 720
timesteps: 256
features: 4

所以我的输入张量应该是[720, 256, 4]的形状,但是改为[720, 4, 256]会产生更好的结果。为什么?在


Tags: 数据模型元素格式时间精度统计数据keras
1条回答
网友
1楼 · 发布于 2024-04-20 12:00:15

正如我在相当长的评论中所说,答案是“因为你没有学到同样的东西”。像tensorflow和keras这样的框架试图使培训和使用网络更加方便,因此只要您的输入至少大致正确,框架就会尽力将数据输入到网络中。但是网络无法解释你输入的数据。这取决于你要确保你输入到网络中的内容在你的数据上下文中是有意义的。无论您发送什么数据和使用什么标签,网络都会尽力了解数据和标签之间的映射关系。它可能会成功。仅仅因为你试图学习的模式没有意义并不意味着它不能被学习。所以为了回答你的问题,你需要弄清楚你的输入转置是什么意思,并且考虑到LSTM将把你的数据当作一系列连续的数据点,你最终学到了什么序列。在

相关问题 更多 >