Я использую пользовательский оценщик для обучения NN для прогнозирования набора данных MNIST. В настоящее время я использую SummarySaverHook для записи матриц путаницы в TensorBoard во время оценки, например:
eval_hooks = tf.train.SummarySaverHook(
save_steps=1,
output_dir="./models/clasif/eval_core",
summary_op=tf.summary.merge_all())
# Add it to the evaluation_hook list
if (mode == tf.estimator.ModeKeys.EVAL):
return tf.estimator.EstimatorSpec(
mode, loss=loss, eval_metric_ops=metrics, evaluation_hooks=[eval_hooks])
Моя проблема в том, что я хочу иметь несколько матриц путаницы, поскольку у меня есть несколько наборов тестов, и я хочу, чтобы они хранились в разных папках, что достигается с помощью параметра name . Но я не знаю, как подать команду SummarySaverHook на запись каждой Матрицы изображений / Путаницы в соответствующую подпапку для текущей оценки.
Я знаю, что существует tf.estimator.Estimator.eval_dir (name = None) метод, который возвращает каталог сохранения для каждого оценочного набора в соответствии с их именами.
У меня такой вопрос: как я могу получить этот текущий eval_dir или текущее имя , которое выполняет оценивать () в Оценщике, чтобы я мог можно хранить журналы оценки в отдельных папках? (В настоящее время они все хранятся в "./models/clasif/eval_core")