model = keras.models.load_model("model.h5") test_loss, test_acc = model.evaluate(test_images, test_labels)
可以看到这个代码,很符合model测试的逻辑,但是他依然会报错,我看到其他文章也有这样的代码,不清楚他们会不会报错,反正我这是出现了RuntimeError: You must compile your model before training/testing. Use `model.compile(optimizer, loss)`这样的错误。
其实解决此问题很简单:.
model = keras.models.load_model("model.h5") # print(model.summary()) model.compile(optimizer=tf.train.AdamOptimizer(0.001), loss='sparse_categorical_crossentropy', metrics=['accuracy']) test_loss, test_acc = model.evaluate(test_images, test_labels)
我想说的是,为什莫在符合逻辑的情况下还会报错,大家注意model.compile()方法其实实在编译model中的参数,只有编译完成后才能运行,可以理解为c++编译成功后 才能运行。