LSTM识别(多分类预测)

在我的整个模型中,对读进来的时间序列数据处理,删不必要列,特征筛选,归一化,独特编码,处理不平衡是手动的,滑窗,LSTM模型(python tensorflow),每一步都print过,出现如图问题,test中loss变大,accuracy减小,请教🫑这是什么原因造成的?怎么解决嘞

img

img

img

img

img

  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7511163
  • 你也可以参考下这篇文章:用LSTM做时间序列预测的思路,tensorflow代码实现及传入数据格式
  • 除此之外, 这篇博客: 交通流预测爬坑记(二):最简单的LSTM预测交通流,使用tensorflow2实现中的 上面代码是最简单的,只是用流量,同时单一节点进行流量预测。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 也可以使用速度,占有率等信息,加入到模型中对流量进行预测。真要认真做起来是比较难的,但是如果只是应付应付,提供一个思虑:

    可以把另外几种特征也按照time_step=5,进行划分,直接传入到模型中,只不过在模型的最后一层加一个Flatten层(将所有数据拉直成一维),这样就可以大大方方的说”本文考虑了,流量、速度、车道占有率等多种因数,相对于以前文章具有重大改进“

  • 您还可以看一下 覃秉丰老师的Tensorflow进阶项目系列课程中的 使用LSTM完成语音分类小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    可能造成训练效果恶化的原因有很多,其中可能的原因包括但不限于:

    1. 数据预处理过程中的错误,例如特征筛选、归一化、独特编码等步骤有误,导致模型无法正确学习信息

    2. 训练参数设置有误,例如学习率设置过高过低,迭代次数不足等导致模型无法学习到有效的信息

    3. 模型结构设计不合理,例如LSTM模型中的神经元数不足,导致模型无法捕捉到时间序列数据的特征

    解决上述问题的方法如下:

    1. 重新检查数据预处理过程中的每一步骤,确保数据处理的正确性和有效性

    2. 调整训练参数并重新训练模型,例如降低学习率,增加迭代次数等等

    3. 重新设计模型结构,例如增加LSTM模型中的神经元数或增加层数,以提高模型的性能

    最好的解决方案需要结合具体情况而定,可以多次调整参数、设计模型,并尝试不同的数据处理方法,以找到最优解决方案。还可以使用一些辅助工具和库来对模型进行调优,例如TensorFlow的内置调优功能等。