【发布时间】:2018-10-18 15:56:17
【问题描述】:
您好,我正在尝试进行能源分解(在给定某个家庭的总能源消耗的同时预测电器的能源使用情况。)
现在我的输入维度为 2,因为有 2 个主要能量测量值。 Keras Sequential 模型的输出维度应该是 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
ALL_CAPS 变量是常量。 X_train 是 2-dim y_train 是 18-dim
感谢任何帮助!
【问题讨论】:
-
我不完全理解这个问题。 X_train、y_train、X_test 和 pred 的形状你能说清楚一点吗?
-
@jmsinusa 我的问题已经得到正确回答,但还是谢谢!
标签: python tensorflow neural-network keras regression