【发布时间】:2017-10-15 17:34:12
【问题描述】:
我是 Keras 的新手,我正在尝试创建需要在纸牌游戏中学习的网络。它需要 93 个二进制输入,其中包含 40 个神经元的隐藏层和一个计算分数(从 0 到 25)的输出神经元。
model = Sequential()
model.add(Dense(input_dim=93, units=40, activation="sigmoid"))
model.add(Dense(units=2, activation="linear"))
sgd = optimizers.SGD(lr=0.01, clipvalue=0.5)
model.compile(loss="mse", optimizer=sgd, learning_rate=0.01)
我首先尝试计算(进行前向传播)这 93 个输入
这是“s.toInputs()”
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 1 1 0 0 1 0 0 0 0 1 1 0 1]
model.predict(np.array(s.toInputs())
但我得到了错误
ValueError: 检查时出错:预期 dense_1_input 具有形状 (None, 93) 但得到的数组具有形状 (93, 1)
如何传递正确的参数?
【问题讨论】:
标签: python numpy tensorflow neural-network keras