Что такое hp.Discrete и hp.Realinterval?Могу ли я включить больше значений в hp.realinterval вместо 2? - PullRequest
1 голос
/ 12 июня 2019

Я использую Гиперпараметр с использованием HParams Dashboard в Tensorflow 2.0-beta0, как предлагается здесь https://www.tensorflow.org/tensorboard/r2/hyperparameter_tuning_with_hparams

Я запутался в шаге 1, я не смог найти лучшего объяснения.Мои вопросы связаны со следующими строками:

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']))

Мой вопрос : я хочу попробовать большее количество выпадающих значений вместо двух (0,1 и 0,2).Если я напишу больше значений в нем, то получится ошибка - «можно дать максимум 2 аргумента».Я попытался найти документацию, но не смог найти ничего похожего на то, откуда пришли эти функции hp.Discrete и hp.RealInterval.Любая помощь будет оценена.Спасибо!

Ответы [ 2 ]

0 голосов
/ 17 июля 2019

Глядя на реализацию , мне кажется, что это не GridSearch, а MonteCarlo / Random search

Так что на каждой итерации выбирается случайное смещение этого реального интервала

Если вы хотите поведение GridSearch, просто используйте «Дискретный».Таким образом, вы даже можете смешивать и сопоставлять GridSearch с произвольным поиском, очень круто!

0 голосов
/ 22 июня 2019

Хороший вопрос. У них нет учебника во многих аспектах. В любом случае, вот как вы это делаете при определенном разрешении res

for dropout_rate in tf.linspace(
      HP_DROPOUT.domain.min_value,
      HP_DROPOUT.domain.max_value,
      res,): 
...