我尝试将KerasClassifier(包装器)放入final_model.h5
validator = GridSearchCV(estimator=clf, param_grid=param_grid)
grid_result = validator.fit(train_images, train_labels)
best_estimator = grid_result.best_estimator_
best_estimator.model.save("final_model.h5")
然后我想重用模型
from keras.models import load_model
loaded_model = load_model("final_model.h5")
但是似乎loaded_model
现在是Sequential
对象。换句话说,它不同于KerasClassifier
之类的best_estimator
对象
我想重用score
中可用的KerasClassifier
之类的方法,而Sequential
模型中不可用的方法。我该怎么办?
此外,我想进一步了解如何继续进行final_model.h5
结束的培训过程。我接下来该怎么办?
答案 0 :(得分:3)
是的,最后,您将Keras模型保存为HDF5,而不是KerasClassifier,后者只是用于scikit-learn的适配器。
但是您实际上并不需要KerasClassifier实例,您需要http.authorizeRequests()
.anyRequest().authenticated()
.and()
.addFilterAfter(new JWTAuthenticationFilter(),UsernamePasswordAuthenticationFilter.class)
函数,并且在keras中将此函数称为 public void configure(WebSecurity web) {
web.ignoring().antMatchers(HttpMethod.POST, "/users/login");
}
,因此只需调用score
,这将返回一个包含以下内容的列表首先是损失,然后是模型使用的任何指标(最有可能的准确性)。
要继续训练模型,只需加载模型并使用新的训练集调用evaluate
即可。