免责声明:
✓
:具有全部功能或特性。~
:存在部分功能或特性。✗
:没有能力或特征。注意事项:
RxInfer.jl
在制定从指数族分布派生的复杂模型方面表现出色。该软件包不仅包含常用的分布(例如高斯分布或伯努利分布),还包含代表流行概率模型(例如自回归模型、伽马混合模型等)的专用随机节点。此外,RxInfer.jl
熟练地管理指数族变量的确定性变换,请参阅Delta 节点。然而,对于指数族之外的模型,RxInfer.jl
可能不是一个好的选择。此类模型需要创建新颖的节点和相应的规则,如图所示。RxInfer.jl
以其植根于反应式消息传递的推理引擎而著称。这种方法非常高效,有助于跨系统实时传播更新,支持并行化、可中断性等。然而,当前版本RxInfer.jl
尚未充分利用所有这些潜力。RxInfer.jl
目前不支持这一点,但解决方案即将出现:RxInfer.jl
借助 Julia 的宏观功能,用户能够优雅、简洁地制作模型,紧密反映概率符号。为了说明这一点,让我们考虑以下模型:RxInfer.jl
struggles with Julia's early-stage debugging system, it does provide a mechanism to debug the inference procedure, even though not as seamlessly as some other packages.Toolbox | Universality | Efficiency | Expressiveness | Debugging & Visualization | Modularity | Inference Engine | Language | Community & Ecosystem |
---|---|---|---|---|---|---|---|---|
RxInfer.jl | ~ | ✓ | ✓ | ~ | ✗ | Message-passing | Julia | ✗ |
ForneyLab.jl | ✗ | ~ | ✗ | ~ | ✗ | Message-passing | Julia | ✗ |
Infer.net | ~ | ✓ | ✗ | ✓ | ✗ | Message-passing | C# | ✗ |
PGMax | ✗ | ✓ | ✗ | ✓ | ✗ | Message-passing | Python | ✗ |
Turing.jl | ✓ | ✗ | ✓ | ~ | ✗ | Sampling | Julia | ✓ |
PyMC | ✓ | ✗ | ✓ | ✓ | ✗ | Sampling | Python | ✓ |
NumPyro | ✓ | ✓ | ~ | ✓ | ✗ | Sampling | Python | ✓ |
TensorFlow Probability | ✓ | ✗ | ~ | ✓ | ✗ | Sampling | Python | ✓ |
Stan | ✓ | ✗ | ✓ | ✓ | ✗ | Sampling | Stan | ✓ |
(Date of creation: 20/10/2023)