【问题标题】:PyMinuit vs IMinuitPyMinuit 与 IMinuit
【发布时间】:2013-09-09 21:03:19
【问题描述】:

我一直在寻找 Python 2.7 上的等价物,我发现了这两个变体:
PyMinuit
iMinuit

我的问题是:它们之间有什么区别?

两者都使用 Seal 1.7.9 Minuit 和一些 2D 高斯拟合测试,我都得到了相同的答案。那么,除了安装方式(iMinuit 更简单),我为什么要选择其中一种呢?


谢谢你的帮助! xD

附:我也尝试标记 iminuit 但我无法创建新标签... =/

【问题讨论】:

    标签: python minimization pyminuit iminuit


    【解决方案1】:

    免责声明:我写了 iminuit。让我给你一点历史。

    我是 PyMinuit 的骄傲用户。我喜欢它,他想出的语法非常棒。然而,我最终发现我无法真正以编程方式(并且有效地)构建成本函数。例如,如果你想制作一个通用的 chi^2 函子,它以 n 参数的数据和 pdf 作为参数并吐出 n-1 参数的 chi^2 函数,那么(几乎)不可能做到PyMinuit。

    所以,我尝试修改 PyMinuit 以添加确切的功能并修改一些打印输出。我发现 PyMinuit 代码在 C 中,修改起来很麻烦。所以,我用 cython 重写了它。

    您会在 iminuit 中找到一对加法:

    1. Better integration 与 IPython 笔记本。它将结果打印在一张漂亮的表格中,并可以免费为您绘制一些图表。
    2. Function signature extraction 比 PyMinuit 宽容得多
    3. Long parameter name。不是真正的 PyMinuit 错误,但在 Minuit 1.7.x 中有一个错误,即名称长度是硬编码的。
    4. One side limit我不确定,但我认为 PyMinuit 不会这样做
    5. 进度打印输出有点不同,但这是个人喜好问题。我的灵感来自 ROOT,IMO 更有意义。
    6. probfit 集成。还记得我提到过获取数据和 pdf 并吐出 chi^2 函数以进行最小化的函数吗?见tutorial

    【讨论】:

    • PyMinuit作者现在也推荐iminuit:github.com/jpivarski/…
    • 是:安装 iminuit。 (我是 PyMinuit 的作者。)我在新生教程中使用 iminuit。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多