gpt4 book ai didi

machine-learning - 为 RNN 设置正确的输入

转载 作者:行者123 更新时间:2023-12-03 17:20:04 24 4
gpt4 key购买 nike

在数据库中有带有记录的时间序列数据:

  • device - timestamp - temperature - min limit - max limit
  • device - timestamp - temperature - min limit - max limit
  • device - timestamp - temperature - min limit - max limit
  • ...

  • device有 4 小时的时间序列数据(间隔 5 分钟)在发出警报之前有 4 小时的时间序列数据(再次间隔 5 分钟)没有引发任何警报。该图更好地描述了数据的表示,对于每个 device :
    enter image description here
    我需要在 python 中使用 RNN 类进行警报预测。我们定义警报时 temperature低于 min limit或以上 max limit .
    阅读tensorflow的官方文档后 here ,我在理解如何设置模型的输入时遇到了麻烦。我应该事先规范化数据还是其他什么,如果是,如何规范化?
    也在阅读答案 here也没有帮助我清楚地了解如何将我的数据转换为 RNN 模型可接受的格式。
    关于如何 X 的任何帮助和 Ymodel.fit应该看起来像我的情况?
    如果您看到有关此问题的任何其他问题,请随时发表评论。
    附注。我已经设置了 pythondockertensorflow , keras等等,以防这些信息有帮助。

    最佳答案

    您可以从 a snippet 开始你在问题中提到的。

    Any help on how the X and Y in model.fit should look like for my case?

    X应该是一个形状为 [num samples, sequence length, D] 的 numpy 矩阵,其中 D是每个时间戳的多个值。我想 D=1在您的情况下,因为您只传递温度值。 y应该是目标值的向量(如片段中所示)。二进制(警报/not_alarm)或连续(例如最大温度偏差)。在后一种情况下,您需要更改 sigmoid 激活以进行其他操作。

    Should i normalise the data beforehand


    是的,预处理您的原始数据是必不可少的。我认为这里有两件重要的事情要做:
  • 使用 min-max 或标准化( wikisklearn preprocessing )对温度值进行标准化。另外,我会添加一些平滑。
  • 从所有时间序列中删除最后时间戳的一部分以避免信息泄漏。

  • 最后,我想说这个任务比看起来更复杂。您可能想要找到关于时间序列分类的良好入门教程,或者一般的机器学习类(class)。我相信你可以找到比 RNN 更好的方法。

    关于machine-learning - 为 RNN 设置正确的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63227352/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com