TFX管道是用于快速端到端模型开发的非常好的工具。但是,我还想在最终模型训练和评估之前包括超参数调整。
我的问题是是否存在将调整包括在管道中的最佳实践,如果可以的话,它是否可以公开获得?
答案 0 :(得分:1)
在TFMA或TFX中没有可用于超参数调整的内置组件。但是,Tensorflow中有内置的库。据我所知,有两种方法可以做到这一点。
部分代码段如下所示:
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
的{{1}}自变量设置为Dictionary,并以Keys作为Hyperpameters的名称,并将Values作为其各自的值。请参阅下面的链接以获取更多信息。https://www.tensorflow.org/api_docs/python/tf/estimator/Estimator#init
和