#概率编程
edward2
Edward2是一个简洁易用的概率编程语言,为深度学习生态系统设计,支持编写和操控模型用于灵活的训练和推断。项目包括核心库代码、示例和前沿研究,同时支持TensorFlow、JAX和NumPy后端。用户可将随机变量与TensorFlow操作结合,开展如贝叶斯逻辑回归等任务。此外,Edward2支持模型计算操作追踪及程序转换,满足各种训练和测试需求。
Gen.jl
Gen.jl是由MIT概率计算项目组开发的一个通用概率编程平台。它为研究者提供了灵活的工具来构建复杂的概率模型,并支持用户自定义推理算法。平台提供了完整的文档和教程。2019年PLDI会议论文详细介绍了其设计和实现。更多信息和支持,请访问官方网站。
blackjax
BlackJAX是一个为JAX开发的贝叶斯采样库,支持CPU和GPU计算。它提供多种采样器,可与概率编程语言集成。适用于需要采样器的研究人员、算法开发者和概率编程语言开发者。其模块化设计便于创建和定制采样算法,促进采样算法研究。BlackJAX通过简洁API和高性能,连接了简单框架与可定制库。
cascades
Cascades是一个开源Python库,专注于实现复杂的语言模型组合。它支持草稿纸、思维链、工具使用和选择推理等高级AI技术。作为一个嵌入Python的通用概率编程库,Cascades为AI研究和开发提供了灵活的实验框架。该项目基于相关学术论文,尽管不是Google官方支持的产品,但为语言模型应用领域贡献了创新实现。
MarkovJunior
MarkovJunior结合了马尔可夫算法和重写规则,创造了一种新型概率编程语言。它能够通过简单规则生成复杂模型,在迷宫生成、建筑设计和谜题创作等领域表现出色。该项目支持多维操作,采用XML语法,并融合了约束传播推理,为程序化内容生成提供了强大的工具。
Turing.jl
Turing.jl是Julia语言生态系统中的概率编程框架,为贝叶斯推理和机器学习提供工具。该框架支持多种采样算法,可处理复杂概率模型,适用于学术研究和实际数据分析。项目具有活跃的社区支持和持续的更新,用户可通过官方文档和社区讨论获取帮助。