【问题标题】:R keras LSTM input shapeR keras LSTM 输入形状
【发布时间】:2019-01-20 08:07:02
【问题描述】:

关于如何为 Keras LSTM 重塑数据有很多答案,但它们都是关于 Python,而不是 R。 Array transformation for KerasR LSTM in R 这个答案显示了转换方法,但我还有一个问题。如果特征数是 2 怎么办? 这是我的数据。

这是一个温度数据。它有 290 行和 122 列。每个列代表一个站点的时间序列数据。每行表示一天的最高温度。我想用历史数据预测第二天的最高温度,所以特征数是122,但我不知道样本和时间步长是多少。

【问题讨论】:

    标签: r tensorflow keras


    【解决方案1】:

    根据我的经验,您应该将数据重塑为 3D 数组,使得维度为:samples: timesteps: features

    最初我有一个输入矩阵,X,其中有 n 列(特征)和 r 行(观察值、天数)。我在矩阵的每一列上应用了 m 个周期的时滞,所以现在我有 n 个具有相同 r 的单独矩阵(每个特征一个) 行,但有 m 列,对应于我实现的时间延迟数。我在 z 维度中将所有这些单独的矩阵压缩在一起,所以我现在有一个包含 r 行、m 列和一个n 的深度。

    我实际上对此有自己的疑问,我将很快在 StackOverflow 或 CrossValidated 上发布我自己的查询。

    【讨论】:

    • 感谢您的回答。很清楚,但我从未在 R 中看到过 3D 矩阵...如何在 z 维度中将这些矩阵组合在一起?使用数组?
    • 正确。这将是一个 3D 数组。如果您有 1000 个观察值,每个观察值滞后 30 天,对于 10 个变量,您的矩阵将具有类似于 num [1:1000, 1:30, 1:10] 的维度
    • 如果我想用今天的温度来预测第二天的温度,矩阵会有像 num[1:1000, 1,1:10] 这样的维度?但是我该怎么做呢,它就像一个二维矩阵......
    • 嗨,你知道如何重塑 R 中的输入吗?我在R中使用keras,也遇到了这个问题。
    猜你喜欢
    • 2018-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-04
    • 2019-01-29
    • 1970-01-01
    相关资源
    最近更新 更多