我在理解 Keras 功能 API 的输入形状时遇到了一些麻烦。它期望一个输入样本的大小,还是整个训练数据集的大小?
我的数据集由一个大小为 (3200, 24) 的输入集组成,其中一个训练样本(在人身上)是 (100, 24)。所以我有32个训练样本/人。对于每个人,标签是一个时间序列 (100,1)。我如何告诉 NN 它需要将 100 行视为一个样本?我的输入形状是什么?
X_transformed.shape = (3200, 24) and final_y.shape = (3200, 3) #这是三列因为我在做自定义损失函数,需要补充信息。向量的实际标签部分是 (3200, 1)。
### FUNCTIONAL API MODEL ###
inputs = keras.Input(shape=(32, 100, 24))
dense1 = layers.Dense(64, activation="relu")(inputs)
dense2 = layers.Dense(32, activation="relu")(dense1)
outputs = layers.Dense(1)(dense2)
model = keras.Model(inputs=inputs, outputs=outputs)
model.compile(
optimizer='adam',
loss=custom_loss,
metrics=['accuracy']
)
history = model.fit(X_transformed, final_y, epochs=10)