注意:我见过此related post,但我不知道我可以使用 我的问题的答案。
我尝试使用Keras进行简单回归。为此,我创建了一个简单的policy_network()
函数,该函数将返回模型。
def policy_network():
model = Sequential()
model.add(MaxPooling2D(pool_size=(4, 4),input_shape=[64,64,3]))
model.add(Flatten())
model.add(Dense(1, kernel_initializer='normal', activation='linear'))
model.compile(loss='mean_squared_error',
optimizer=Adam(lr=learning_rate),
metrics=['mean_squared_error'])
return model
我还定义了一个全局变量policy_network
。我使用以下作业
policy_network = policy_network().fit(images, actions,
batch_size=256,
epochs=10,
shuffle=True)
但是当我打电话
action = policy_network.predict(image)
我得到了AttributeError: 'History' object has no attribute 'predict'
答案 0 :(得分:2)
Keras的Admin
不会不返回模型,但会返回一个fit()
对象,其中包含每个时期的损失和指标。您使用的代码模式根本无法与Keras配合使用。
这样做:
History
答案 1 :(得分:0)
对Python说时,您已将policy_network的类从keras.Model对象更改为History对象。
policy_network = policy_network().fit(..)
如果要将历史记录存储在变量中,请将其存储在另一个变量中:
history = policy_network.fit(..)
您现在可以按照自己的方式使用policy_network.predict
。