我正在使用Keras(与Python 3.6一起)来预测数组(x_test)的输出,但得到的却是TypeError。
这是我的预测代码:
x_test = [[8],[6],[0],[2],[0],[0],[0],[0],[112.128],[0],[0],[2],[0],[1],[1],[2],[2]]
prediction = model.predict(model, x_test, batch_size = 32, verbose = 1)
这是我得到的错误:
TypeError Traceback (most recent call last)
<ipython-input-14-286495dc15a7> in <module>()
1 x_test = [[8],[6],[0],[2],[0],[0],[0],[0],[112.128],[0],[0],[2],[0],[1],[1],[2],[2]]
2
----> 3 prediction = model.predict(model, x_test, batch_size =(17,1), verbose = 1)
TypeError: predict() got multiple values for argument 'batch_size'
如果有人对出了什么问题有任何建议,我们将不胜感激。
供参考,这是我的神经网络,看来工作正常。
model = Sequential()
model.add(Dense(32, input_dim=17, init='uniform', activation='relu' ))
model.add(Dense(64, init='uniform', activation='relu'))
model.add(Dense(128, init='uniform', activation='relu'))
model.add(Dense(64, init='uniform', activation='sigmoid'))
model.add(Dense(32, init='uniform', activation='sigmoid'))
model.add(Dense(16, init='uniform', activation='sigmoid'))
model.add(Dense(8, init='uniform', activation='sigmoid'))
model.add(Dense(4, init='uniform', activation='sigmoid'))
model.add(Dense(1, init='uniform', activation='sigmoid'))
# Compile model
model.compile(loss='mean_squared_logarithmic_error', optimizer='SGD', metrics=['accuracy'])
# Fit model
history = model.fit(X, Y, nb_epoch=300, validation_split=0.2, batch_size=3)
非常感谢!
您无需传入model
参数model.predict
,因为predict的默认设置是predict(self, x, batch_size=32, verbose=0)
由model
自动定义self
。
因此,您的代码应类似于:
prediction = model.predict(x_test, batch_size = 32, verbose = 1)
并且根据文档,x
应该numpy.array
不是list
。
参数:
x:输入数据,作为一个Numpy数组。
batch_size:整数。
verbose:详细模式,0或1。
这意味着x_test
应该改为:
x_test = np.array([[8],[6],[0],[2],[0],[0],[0],[0],[112.128],[0],[0],[2],[0],[1],[1],[2],[2]])
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句