【问题标题】:Advice on Speeding up SciPy Custom Distribution Sampling & Fitting关于加快 SciPy 自定义分布采样和拟合的建议
【发布时间】:2019-02-19 01:21:18
【问题描述】:

我正在尝试使用 scipy.我已经根据其他一些因素推导出了一个理论 PDF,但无论是手动还是使用符号集成软件,我都找不到 CDF 的确切形式。

目前,从我的自定义分布中简单地评估 1000 个随机样本很昂贵,我认为这是由于需要反转未知的 CDF。如果我找不到 CDF 的显式形式并且它是逆向的,我还能做些什么来加快此分布的使用速度?

我已经使用 maple、matlab 和 Sympy 来尝试确定 CDF,但没有一个给出结果。我还尝试在保留尾部属性的同时对数据进行下采样,但这仍然需要大量数据,以至于对分布进行任何操作都很慢。

我的发行版是 SciPy 的 rv_continuous 类的子类。

感谢您的建议。

【问题讨论】:

  • 您可以尝试使用基于数据直方图的离散 rvs,不是很优雅,但可能更高效。

标签: scipy sampling


【解决方案1】:

这听起来像是您想从概率分布的Kernel Density Estimation 中采样。虽然 Scipy 确实提供了一个高斯内核包,但对于这么多的测量,使用sklearn's implementation 会更好。可以在 Jake VanderPlas 的 blog 上找到一个很好的代码示例资源。

【讨论】:

    猜你喜欢
    • 2021-05-13
    • 2021-09-09
    • 2019-07-01
    • 1970-01-01
    • 2013-07-03
    • 2018-08-21
    • 1970-01-01
    • 2021-07-30
    • 2016-02-19
    相关资源
    最近更新 更多