недавно я использовал custom_estimator.py для построения модели.Для того, чтобы очистить изменения значения потерь в обучающем наборе и проверочном наборе.Мне нужно знать, что, как показать кривую потери обучения и проверки, установленные одновременно.Я пытался использовать train_and_evaluate API оценщика, и я получил следующую картину.
Как видно, результатом оценки является точка, но я хочу линию, подобную кривой потерь в тренировочном наборе.Так же, как на картинке, как показано ниже.
Когда я использую оценщик, я называю обучение и валидацию следующим образом:
train_input_fn=tf.estimator.inputs.numpy_input_fn(
x={"x":img_t},
y=lbl_t,
batch_size=100,
num_epochs=None,
shuffle=True)
cla.train(
imput_fn=train_input_fn,
steps=17000,
hooks=[logging_hook])
#Obtain the hole batch of validation images
img_v,lbl_v=sess.run([img_val,lbl_val])
#Enter the inputs to the model for validation
val_input_fn=tf.estimator.inputs.numpy_input_fn(
x={"x":img_v},
y=lbl_v,
num_epochs=1,
shuffle=False)
val_results=cla.evaluate(input_fn=val_input_fn)
и регистрируюсь так:
#Calculate the accuracy........................
accuracy=tf.metrics.accuracy(labels=labels,predictions=predictions["classes"])
metrics={"accuracy":accuracy}
tf.summary.scalar("accuracy",accuracy[1])
#.............................................
#Training.....................................
if mode==tf.estimator.ModeKeys.TRAIN:
optimizer=tf.train.GradientDescentOptimizer(learning_rate=0.001)
train_op=optimizer.minimize(loss=loss,global_step=tf.train.get_global_step())
return tf.estimator.EstimatorSpec(mode=mode,loss=loss,train_op=train_op)
#.............................................
#Validation....................................
if mode==tf.estimator.ModeKeys.EVAL:
return tf.estimator.EstimatorSpec(mode=mode,loss=loss,eval_metric_ops=metrics)
Когда я тренируюсь, я не знаю, как зарегистрировать потерю проверки и показать ее в виде кривой, как на рисунке, я был бы признателен за вашу помощь