【发布时间】:2021-04-04 20:31:53
【问题描述】:
我面临一个具有 4 个特点的实时问题:
Vmean、Vmedian、Vnow、VV。
我想做的是:
for i in range(len(X)):
model.fit(X[i], X[i+1])
model.predict(X[i+1])
也就是说,我试图通过X[i+1] 和X[i] 来预测X[i+2] 的值,因为一行与下一行相关,依此类推。
这是我的模型:
def kerasModel():
input_layer = keras.layers.Input(shape=(4, 1), name='input_shape')
x = keras.layers.LSTM(100, name='lstm_0')(input_layer)
x = keras.layers.Dropout(0.2, name='lstm_dropout')(x)
x = keras.layers.Dense(64, name='x2')(x)
output = keras.layers.Dense(4, activation='linear', name='x3')(x)
model = keras.Model(inputs=input_layer, outputs=output)
adam = keras.optimizers.Nadam(lr=0.005)
model.compile(optimizer=adam, loss='mse')
return model
但它不起作用。它没有像应该做的那样预测下一个值。我的问题是:是否有任何论文或规则可以根据您的特征制作一个好的深度学习模型?另外,基于这个问题,哪个可能是一个好的模型?
【问题讨论】:
-
您每次都试图拟合和预测一个新模型,这是一个主要问题。每个模型除了一个数据点外没有什么要“学习”的。在建模中,您根据数据集的一部分(训练集)训练模型,并在同一数据集的另一个看不见的部分上对其进行评估。然后,您对未来的新数据进行预测,并确信您的模型是合理的。您的问题不在于模型,而在于总体上如何建模。
标签: python tensorflow keras deep-learning