一尘不染

Tensorflow模型的超参数调整

python

我之前曾使用Scikit-learn的GridSearchCV优化模型的超参数,但只是想知道是否存在类似的工具来优化Tensorflow的超参数(例如
历元数,学习率,滑动窗口大小等 )。

如果没有,如何实现有效运行所有不同组合的代码段?


阅读 282

收藏
2021-01-20

共1个答案

一尘不染

使用Tensorflow进行网格搜索的另一个可行的(已记录)选项是Ray
Tune
。它是用于超参数调整的可扩展框架,专门用于深度学习/强化学习。

您可以在此处尝试快速教程

它还负责大约10行Python中的Tensorboard日志记录和有效的搜索算法(即HyperOptIntegration和HyperBand)。

from ray import tune

def train_tf_model(config):  
    for i in range(num_epochs):
        accuracy = train_one_epoch(model)
        tune.report(acc=accuracy)

tune.run(train_tf_model,
         config={
            "alpha": tune.grid_search([0.2, 0.4, 0.6]),
            "beta": tune.grid_search([1, 2]),
         })

(免责声明:我为这个项目做出了积极的贡献!)

2021-01-20