首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >本地超参数调优-- Tensorflow Google Cloud ML Engine

本地超参数调优-- Tensorflow Google Cloud ML Engine
EN

Stack Overflow用户
提问于 2018-11-30 04:26:04
回答 3查看 636关注 0票数 1

是否可以使用ML引擎调优超参数以在本地训练模型?文档只提到了在云中使用超参数调优进行培训(提交作业),而没有提到在本地进行培训。

否则,是否存在另一种常用的超参数调优,将命令参数传递给task.py,如人口普查估计器教程中所述?

https://github.com/GoogleCloudPlatform/cloudml-samples/tree/master/census

EN

回答 3

Stack Overflow用户

发布于 2018-12-03 00:51:27

正如Puneith所说,超参数调优不能在ML-Engine中本地运行。

SciKit优化提供了一个易于使用的包装器,可用于任何模型,包括估计器。只需将运行N个时期的训练的代码放入其自己的函数中,该函数将返回评估1-准确性,1-auroc或损失度量以最小化。

代码语言:javascript
运行
复制
import numpy as np
from skopt import gp_minimize

def train(hyperparam_config):
    # set from passed in hyperparameters
    learning_rate = hyperparam_config[0]
    num_layers = hyperparam_config[2]
    # run training
    res = estimator.train_and_evaluate()...
    return res['loss']  # return metric to minimize

hyperparam_config = [Real(0.0001, 0.01, name="learning_rate"),
                      Integer(3, 10, name="num_layers")]
res = gp_minimize(train, hyperparam_config)
with open('results.txt', 'w') as wf:
    wf.write(str(res))
print(res)

来源:https://github.com/scikit-optimize/scikit-optimize/blob/master/examples/hyperparameter-optimization.ipynb

票数 2
EN

Stack Overflow用户

发布于 2018-11-30 08:20:57

您不能在本地执行HPTuning (云ML引擎支持的基于Bayesian Optimization的HPTuning ),因为它是云ML引擎提供的托管服务。还有其他方法来执行超参数调整,例如,Scikit-learn GridSearch,但它们在这项任务中的效率要低得多。

票数 1
EN

Stack Overflow用户

发布于 2018-12-13 20:28:39

查看Sherpa,这是一个优秀的超参数优化库。

上面写着:

超参数优化,使研究人员能够快速进行实验、可视化和扩展

有很多HyperParameter优化库,但是使用Sherpa one可以可视化结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53547031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档