Я код в tenorflow.keras. Когда я запускаю «define_generator», результаты (точность) отличаются от «предиката_генератора». (кажется, что__генератор дает правильную точность)
Вот несколько строк кода:
model.load_weights(bestmodel_w)
val_score = model.evaluate_generator(valid_generator,valid_generator.n)
print("Validation Accuracy = ",val_score[1])
против.
pred = model.predict_generator(test_generator,steps=STEP_SIZE_TEST,
workers=0,
use_multiprocessing=False,
verbose=0)
p_labels = np.argmax(pred, axis=1)
print('Recognition Rate:', 100*float(sum(real_labels == p_labels))/float(len(p_labels)))
и вот:
valid_generator = datagen_train.flow_from_directory(
directory=train_dir,
target_size=(img_rows, img_cols),
color_mode="rgb",
batch_size=batch_size,
class_mode="categorical",
#class_mode="binary",
shuffle=False,
subset='validation',
seed=42
)
test_generator = datagen_test.flow_from_directory(
directory=wsi_dir,
target_size=(img_rows, img_cols),
color_mode="rgb",
batch_size=1,
class_mode=None,
#class_mode="categorical",
shuffle=False,
seed=42
)