Как включить настройку гиперпараметра в конвейере TFX?
Конвейер TFX - действительно хороший инструмент для быстрой сквозной разработки моделей. Однако я также хотел бы включить настройку гиперпараметра перед окончательной тренировкой и оценкой модели.
Мой вопрос заключается в том, существует ли лучшая практика по включению настройки в конвейер, и если да, то доступна ли она публично?
1 ответ
В TFMA или TFX пока нет встроенного компонента, доступного для настройки гиперпараметра. Тем не менее, есть встроенные библиотеки, доступные в Tensorflow. Насколько мне известно, есть 2 способа сделать это.
- Настройка гиперпараметра и его визуализация в Tensorboard для TF версии 2.0, упомянутые зеленым цветом выше.
Фрагмент кода частичного кода показан ниже:
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
в качестве словаря с ключами в качестве имен Hyper Pameters и значений в качестве их соответствующих значений. Обратитесь по ссылке ниже для получения дополнительной информации.
https://www.tensorflow.org/api_docs/python/tf/estimator/Estimator
а также