Keras回归预测和输出维不同

2024-10-17 02:36:37 发布

您现在位置:Python中文网/ 问答频道 /正文

你好,我正在尝试进行能源分解(在给定某个家庭的总能耗的同时,预测家用电器的能源使用。)

现在我的输入维是2,因为有两个主要的能量测量值。 Keras序列模型的输出维应该是18,因为我有18个设备我想做一个预测。 我有足够的数据使用REDD数据集(这不是问题)。在

我训练了模型,得到了合理的损失和准确度。 但是当我想对一些测试数据进行预测时,预测是由一维数组中的值组成的。同时输出是18维的?在

这是怎么可能的呢?还是我在尝试一些不可行的东西?在

一些代码:

model = Sequential()

model.add(Dense(HIDDEN_LAYER_NEURONS,input_dim=2))
model.add(Activation('relu'))
model.add(Dense(18))

model.compile(loss=LOSS,
          optimizer=OPTIMIZER,
          metrics=['accuracy'])

model.fit(X_train, y_train, epochs=EPOCHS, batch_size=BATCH_SIZE, 
verbose=1, validation_split=VALIDATION_SPLIT)

pred = model.predict(X_test).reshape(-1)
pred.shape # prints the following 1 dimensional array: (xxxxx,) dimensional

所有的变量都是常量。 Xu火车是2维的 你的火车是18度的

感谢任何帮助!在


Tags: 数据模型addmodel家庭trainkerasdense
1条回答
网友
1楼 · 发布于 2024-10-17 02:36:37

好吧,你正在重塑预测,并在这里把它们变平:

pred = model.predict(X_test).reshape(-1)

reshape(-1)有效地使数组一维。直接预测一下:

^{pr2}$

相关问题 更多 >