gpt4 book ai didi

python - Sacred - 将所有参数作为一个参数传递

转载 作者:行者123 更新时间:2023-12-04 02:54:56 28 4
gpt4 key购买 nike

例如,当使用 Sacred 时,有必要将实验配置中的所有变量传递到主函数中

ex = Experiment('iris_rbf_svm')

@ex.config
def cfg():
C = 1.0
gamma = 0.7

@ex.automain
def run(C, gamma):
iris = datasets.load_iris()
per = permutation(iris.target.size)
iris.data = iris.data[per]
iris.target = iris.target[per]
clf = svm.SVC(C, 'rbf', gamma=gamma)
clf.fit(iris.data[:90],
iris.target[:90])
return clf.score(iris.data[90:],
iris.target[90:])

如您所见,在这个实验中有 2 个变量,Cgamma,它们被传递到 main 函数中。

在实际场景中,有几十个实验变量,将它们全部传递到 main 函数中会变得非常困惑。有没有办法将它们全部作为字典传递?或者可能作为具有属性的对象?

一个好的解决方案会产生如下结果:

@ex.automain
def run(config):
config.C # Option 1
config['C'] # Option 2

最佳答案

是的,您可以使用 special value _config 的值:

ex = Experiment('iris_rbf_svm')

@ex.config
def cfg():
C = 1.0
gamma = 0.7

@ex.automain
def run(_config):
C = _config['C']
gamma = _config['gamma']

关于python - Sacred - 将所有参数作为一个参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53431283/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com