Как преобразовать сохраненный_модель.pb в EvalSavedModel?

Я проходил через tensorflow-model-analysis документация по оценке моделей TensorFlow. Руководство по началу работы рассказывает о специальной SavedModel под названием EvalSavedModel,

Цитирую руководство по началу работы:

Эта EvalSavedModel содержит дополнительную информацию, которая позволяет TFMA вычислять те же метрики оценки, определенные в вашей модели, распределенным образом для большого объема данных и определенных пользователем срезов.

Мой вопрос, как я могу конвертировать уже существующий saved_model.pb для EvalSavedModel?

1 ответ

Если я правильно понимаю ваш вопрос, у вас есть saved_model.pb генерируется, либо с помощью tf.saved_model.simple_save или tf.saved_model.builder.SavedModelBuilderили по estimator.export_savedmodel.

Если я правильно понимаю, то вы экспортируете графики обучения и вывода в saved_model.pb.

В пункте, о котором вы упомянули в Руководстве веб-сайта TF Org, говорится, что помимо экспорта графика обучения нам также необходимо экспортировать график оценки. Это называется EvalSavedModel.

График оценки включает метрики для этой модели, так что вы можете оценить производительность модели с помощью визуализаций.

Прежде чем мы экспортируем EvalSaved Модель, надо подготовить eval_input_receiver_fn, похожий на serving_input_receiver_fn.

Мы также можем упомянуть другие функции, например, если вы хотите, чтобы метрики определялись распределенным способом, или если мы хотим оценить нашу модель, используя фрагменты данных, а не весь набор данных. Такие варианты можно упомянуть вeval_input_receiver_fn.

Затем мы можем экспортировать EvalSavedModel используя код ниже:

tfma.export.export_eval_savedmodel(estimator=estimator,export_dir_base=export_dir,
  eval_input_receiver_fn=eval_input_receiver_fn)

EvalSavedModel экспортируется как сообщение SavedModel, поэтому нет необходимости в таком преобразовании.

EvalSavedModel использования SavedModelBuilder под капотом. Он заполняет граф оценки несколькими заполнителями, создает дополнительные наборы метрик. Позже он выполняет простой SavedModelBuilder процедура.

Источник - https://github.com/tensorflow/model-analysis/blob/master/tensorflow_model_analysis/eval_saved_model/export.py

PS Полагаю, ты хочешь бежать model-analysis на вашей модели, экспортируется SavedModelBuilder, поскольку SavedModel не имеет ни узлов метрики, ни связанных коллекций, которые создаются в EvalSavedModelэто бесполезно - model-analysis просто не смог найти метрики, связанной с вашей оценкой.

Другие вопросы по тегам