如何在Keras模型中拟合3D矩阵?

PARNAB SANYAL

我正在使用keras创建回归模型。我有10 145 * 5十位数的矩阵。我面临的问题是无法10 145 * 5在keras模型中拟合矩阵。

X 是输入矩阵

In: X.shape

Out: (10, 145, 5)

y 是目标矩阵

In: y.shape

Out: (10,)

对于每个145 * 5矩阵,目标矩阵中将有一个值

制作模型

In: model = Sequential([ Dense(32, input_dim=145), Activation('sigmoid'), Dense(output_dim=10) ])

尽管上一行没有引发任何错误或警告,但是我很确定这不是在这种情况下适合模型的正确方法。

In: model.compile(optimizer='sgd',loss='mse')

到目前为止没有问题。但是当我尝试拟合矩阵时

In: model.fit(X, y.reshape(-1, 1))

在这行之后,我得到了很长的追溯,最终说

ValueError: Error when checking model input: expected dense_input_1 to have 2 dimensions, but got array with shape (10, 145, 5)

请帮助我正确拟合模型中的矩阵。谢谢!

因陀罗

使用input_shape代替input_dim另外,由于输出尺寸的数量在变化,您需要使用FlattenReshape作为尺寸之一。

from keras.layers import Flatten

model = Sequential([
    Dense(32, input_shape=(145,5)),
    Flatten(),
    Activation('sigmoid'),
    Dense(output_dim=10)
])

model.summary()

使用model.summary()来检查你的模型的结构更好地理解。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章