Как включить настройку гиперпараметра в конвейере TFX? - PullRequest
1 голос
/ 17 июня 2019

Трубопровод TFX - действительно хороший инструмент для быстрой сквозной разработки моделей. Однако я также хотел бы включить настройку гиперпараметра перед окончательной тренировкой и оценкой модели.

Мой вопрос заключается в том, существует ли лучшая практика по включению настройки в конвейер, и если да, то является ли она общедоступной?

1 Ответ

1 голос
/ 25 июня 2019

В TFMA или TFX пока нет встроенного компонента, доступного для настройки гиперпараметра.Тем не менее, есть встроенные библиотеки, доступные в Tensorflow.Насколько мне известно, есть 2 способа сделать это.

  1. Настройка гиперпараметра и его визуализация в Tensorboard для TF версии 2.0, упомянутая greeness выше.

Фрагмент кода с неполным кодом показан ниже:

HP_NUM_UNITS = hp.HParam('num_units', hp.Discrete([16, 32]))
HP_DROPOUT = hp.HParam('dropout', hp.RealInterval(0.1, 0.2))
HP_OPTIMIZER = hp.HParam('optimizer', hp.Discrete(['adam', 'sgd']))

METRIC_ACCURACY = 'accuracy'

with tf.summary.create_file_writer('logs/hparam_tuning').as_default():
  hp.hparams_config(hparams=[HP_NUM_UNITS, HP_DROPOUT, HP_OPTIMIZER],
    metrics=[hp.Metric(METRIC_ACCURACY, display_name='Accuracy')],)

Для получения более подробной информации см. Эту ссылку: https://www.tensorflow.org/tensorboard/r2/hyperparameter_tuning_with_hparams

Гиперпараметрическая настройка с использованием TF.Estimator.Мы можем установить params аргумент Estimator в качестве словаря с ключами в качестве имен гиперпараметров и значений в качестве их соответствующих значений.Для получения дополнительной информации см. Ссылку ниже.

https://www.tensorflow.org/api_docs/python/tf/estimator/Estimator#init

и

https://github.com/tensorflow/tensorflow/blob/1bf6646b871d0ce601715f8ed2f50430ca504da7/tensorflow/contrib/training/python/training/hparam.py#L310

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...