Недавно я начал использовать Tensorflow и пытаюсь использовать объекты tf.estimator.Estimator. Я хотел бы сделать что-то априори вполне естественное: после обучения моего классификатора, т.е. экземпляра tf.estimator.Estimator (методом train
), я хотел бы сохранить его в файл (независимо от расширения), а затем перезагрузить это позже, чтобы предсказать метки для некоторых новых данных. Поскольку официальная документация рекомендует использовать Estimator API, я думаю, что что-то столь же важное должно быть реализовано и задокументировано.
На какой-то другой странице я видел, что это можно сделать export_savedmodel
(см. ">официальная документация), но я просто не понимаю документацию. Нет объяснения, как использовать этот метод. Что такое аргумент serving_input_fn
? Я никогда не сталкивался с этим в учебнике Создание пользовательских оценщиков или в любом из руководств, которые я читал. Погуглив, я обнаружил, что около года назад оценщики были определены с использованием другого класса (tf.contrib.learn.Estimator
), и похоже, что tf.estimator.Estimator повторно использует некоторые из предыдущих API. Но я не нахожу четких объяснений в документации по этому поводу.
Может ли кто-нибудь привести мне пример игрушки? Или объясните мне, как определить/найти этот serving_input_fn
?
И как тогда снова загрузить обученный классификатор?
Спасибо за помощь!
Изменить: я обнаружил, что не обязательно использовать export_savemodel для сохранения модели. На самом деле это делается автоматически. Затем, если позже мы определим новый оценщик с тем же аргументом model_dir, он также автоматически восстановит предыдущий оценщик, как объяснено здесь.