python-3.x - 如何在 keras 模型中拟合 3D 矩阵?

标签 python-3.x neural-network keras

我正在用 keras 创建一个回归模型。我有 10 145 * 5十位数矩阵。我在安装 10 时遇到问题145 * 5 keras 模型中的矩阵。
X是输入矩阵
In: X.shapeOut: (10, 145, 5)y是目标矩阵
In: y.shapeOut: (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()检查模型的结构以更好地理解。

关于python-3.x - 如何在 keras 模型中拟合 3D 矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41335431/

相关文章:

optimization - 提高以下计算 softmax 导数的代码性能的技巧

python - keras 语法有变化吗?

python - 当未启用急切执行时,张量对象不可迭代。要迭代此张量,请使用 tf.map_fn

python - 在 for 循环中创建一个新的顺序模型(使用 Keras)

python - 我们如何将 Python Pandas DataFrame reshape 为 C-Contiguous 内存?

python - 如何从 MLflow 中删除 run_id

python - 通过查看某些字符并判断在何处分隔来尝试分隔行

MATLAB 神经网络模式识别

python-3.x - TypeError : 'Not JSON Serializable' while doing tf. keras.Model.save 并在 tf.keras.Model.compile 的 loss_weights 中使用 keras 变量

python - 如何在kivy python中使用 slider 作为进度条并控制音频?