【发布时间】:2017-10-06 11:28:08
【问题描述】:
我正在使用 scipy 优化功能并为其提供自定义最小化功能。我用
调用最小化器result = op.minimize(calc_chi2, start_list, args=())
calc_chi2() 函数看起来像
def calc_chi2(parameters):
if within_priors(parameters):
# calculate chi2
else:
return math.inf
此函数测试是否在某些先验中的参数,如果不是,它应该返回一个非常大的 chi^2。我使用math.inf,但这会导致最小化器将参数向量放在任何地方,所以我猜最小化器不喜欢math.inf???如果我只是使用大量的一切工作正常...我只是想知道这里的正确方法是什么?
【问题讨论】: