【问题标题】:Make Tensorflow predictions on time series data? (Regression Model)对时间序列数据进行 TensorFlow 预测? (回归模型)
【发布时间】:2020-06-23 20:03:20
【问题描述】:

我用浅层机器学习算法(岭回归)尝试了同样的练习,但我想尝试一下神经网络。

我可以访问以下格式的原始传感器数据。 (+10 万行)

Timestamp    OilPressure     OilTemperature     RPM     FilterRestriction
0001         145             90                 1100    15
0002         140             92                 1100    15
0003         134             93                 1123    16
0004         143             91                 1135    14

这个练习的标签是 OilPressure,我已经在它上面训练了下面的模型。

model = keras.Sequential([
   layers.Dense(64, activation='relu', input_shape=[len(train_dataset.keys())]),
   layers.Dense(64, activation='relu'),
   layers.Dense(1)
])

我将原始数据集分成 25% 和 75%,因为我想在原始 25% 上训练和测试模型,并将其用作我的“健康”设备的基线。所以我将数据集按日期升序排序并相应拆分。

这 25% 被进一步随机分成 80%/20% 进行训练测试。

生成的模型给我的 MSE 大约为 3 PSI...

我现在想做的是用另一列填充原始数据框,我可以在其中将实际油压与预测油压进行比较。预测将由经过 25% 训练的模型生成,但适用于未经过训练或测试的 85%。

我正在考虑应用一个 lambda 函数,但我不确定这是否可行,我是否可以定义一些其他类型的函数来接收 OilTemperature、RPM 和 FilterRestriction,将其传递给我的模型并输出 PredictedOilPressure?

这就是我想要实现的目标:

Timestamp    OilPressure     OilTemperature     RPM     FilterRestriction    PredictedOilPressure
1000         139             89                 1203    11                   141
1001         142             89                 1109    10                   142
1002         146             87                 1177    10                   147
1003         143             84                 1205    12                   144

【问题讨论】:

  • 为什么不直接预测整个数据集,然后简单地将预测结果作为新列添加到现有数据框中?

标签: python pandas tensorflow machine-learning


【解决方案1】:

为您要预测的每条记录创建一个 pandas 数据框。 (X_features) 然后只需使用 model.predict() 函数来进行预测。将结果保存为数据集中的列。

dataset['PredictedOilPressure'] = model.predict(X_features)

【讨论】:

    猜你喜欢
    • 2021-12-21
    • 2018-08-03
    • 2020-07-26
    • 1970-01-01
    • 1970-01-01
    • 2015-04-24
    • 2022-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多