我有一个简单的网络:
input_layer = Input(1)
inner_layer = Dense(4, activation='relu')(input_layer)
output_layer = Dense(1, activation='linear')(inner_layer)
model = Model(input_layer, output_layer)
optimizer = Adam(learning_rate=0.01)
model.compile(optimizer=optimizer, loss='mse')
直观地说,对输入的推断将只是 。但是,这会生成此错误:0model.predict(0)expected input_2 to have 2 dimensions, but got array with shape ()
我知道它期望输入(这是一个单个数字)是二维的,但我不明白Tensorflow接受什么作为有效输入。我尝试了许多不同的输入组合,有些有效,有些不起作用,它似乎非常不一致,警告/错误通常没有用:
model.predict()model.predict(0)- 投掷
model.predict([0]) - 工程
model.predict([[0]]) - 工程
model()model(0)- 投掷
model([0])- 投掷
model([[0]])- 投掷
np.reshapemodel(np.reshape(0,[1,1])) - 工程
model(np.reshape([0],[1,1])) - 工程
model(np.reshape([[0]],[1,1])) - 工程
似乎一直在工作的是使用numpy的功能。它始终适用于所有输入,只要它们被重塑为形状即可。reshapemodel.predict()model()[1,1]
在输入形状/类型方面,将输入馈送到张量流模型中的准则是什么?
“”是什么意思?shape ()
“”是什么意思?(None, 1)
为什么有效但无效?两者都创建一个二维集合。reshape[[0]]
为什么在调用 // 时,此警告显示: ?model(0)model([0])model([[0]])WARNING:tensorflow:Model was constructed with shape Tensor("input_1:0", shape=(None, 1), dtype=float32) for input (None, 1), but it was re-called on a Tensor with incompatible shape ()
慕姐8265434
冉冉说
随时随地看视频慕课网APP
相关分类