Minimization 负对数似然最小化的参数约束
我试图拟合一个5参数(a,b,c,d,e)模型,其中一个参数受另一个参数的约束 0Minimization 负对数似然最小化的参数约束,minimization,log-likelihood,iminuit,zfit,Minimization,Log Likelihood,Iminuit,Zfit,我试图拟合一个5参数(a,b,c,d,e)模型,其中一个参数受另一个参数的约束 0
zfit.Parameters
,并设置了限制,以确保它们可以访问的范围是有效的,再说一次,假设:
d=zfit.参数('d',值=0.5,下限=0.3,上限=1.0,步长=0.01)
e=zfit.参数('e',值=0.1,下限=0.0,上限=0.3,步长=0.01)
到目前为止,它一直运作良好,但我认为这不是正确的做法
所以我的问题是,处理这种约束的正确方法是什么
干杯我会谨慎使用这个极限,因为它们会阻止变量,理想情况下,它们应该远离最终值 有两种方法可以实现您的目标:
- 或者“以数学方式”作为逻辑结果施加约束,因此使用组合参数(是其他参数的函数)从另一个参数定义一个参数。如果可能,这应该是首选的方式
- 另一种选择是在可能性方面加上一个附加条款。然而,当您修改可能性时,这可能会产生影响。最小值会找到一个最小值,但这可能不是您所寻找的最小值。您可以使用SimpleConstraint,并在违反上述任何一项的可能性中添加一个惩罚项(例如
)。也许还要确保minuit是使用use\u minuit\u grad运行的tf.cast(tf.morer(d,1),tf.float64)*100.