Так что я использую это учебное пособие , чтобы создать свой собственный оценщик, и я не могу заставить тензорную доску нарисовать точность валидации в процессе обучения. Эта проблема на Github прекрасно описывает мою проблему. Как кто-то упомянул в последнем комментарии, установив save_checkpoints_steps
до небольшого значения, модель должна выполнять оценку на каждом этапе, однако это не так для меня. после бега:
classifier = tf.estimator.Estimator(
model_fn=my_model,
params={
'n_classes': 4,
},
model_dir=model_dir_str,
config=tf.estimator.RunConfig(save_checkpoints_steps=int(1)))
loss_hook = early_stopping.stop_if_lower_hook(classifier, "loss", 0.2, model_dir_str + 'loss_eval')
acc_hook = early_stopping.stop_if_no_increase_hook(classifier, "accuracy", 100, model_dir_str + 'acc_eval')
train_spec = tf.estimator.TrainSpec(input_fn=input_train_fn, max_steps=steps, hooks=[loss_hook, acc_hook])
eval_spec = tf.estimator.EvalSpec(input_fn=input_eval_fn, steps=1000)
results = tf.estimator.train_and_evaluate(classifier, train_spec, eval_spec)
Я получаю только две точки на графике. Я экспериментировал с разными значениями и до сих пор получаю те же результаты.