Turing.jl

用几行 Julia 代码写概率模型,自动完成贝叶斯推断

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开发框架 🍴 复刻 249 🐛 待处理 18 👀 关注 47
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 2262
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费(MIT 许可证)

项目预览

Turing.jl 项目界面预览图
图片来源:项目官网

项目数据

分类开发框架
开发团队TuringLang
定价模式🏷️完全免费
价格说明开源免费(MIT 许可证)
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Julia
技术栈/模型artificial-intelligence,bayesian-inference,bayesian-neural-networks,bayesian-statistics,hamiltonian-monte-carlo,hmc,julia-language,machine-learning,mcmc,probabilistic-graphical-models,probabilistic-inference,probabilistic-models,probabilistic-programming,turing
GitHub 星标★ 2262
上线时间2016-04-29 00:00:00
代码更新2026-10-19
仓库体积48.4 MB
本站数据更新2026-10-25
维护状态活跃
收录时间2026-10-25
浏览次数0

项目介绍

Turing.jl 是 Julia 生态中的概率编程与贝叶斯推断框架,用统一建模语言描述概率模型,再自动完成推断。它解决的是统计建模与贝叶斯分析中手写采样器、梯度推导和调参成本高的问题:用户只需用 @model 宏声明先验与似然,框架即可基于自动微分生成高效采样。核心能力包括哈密顿蒙特卡洛(HMC/NUTS)、Gibbs 采样、变分推断、最大后验估计,并支持贝叶斯神经网络与分层模型;可与 Julia 数值生态无缝配合,在 GPU 上加速大规模推断。适合统计研究、因果分析、参数估计和教学演示,性能接近手写代码,语法贴近数学表达。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-10-25 · 当前星标 ★ 2262

使用教程

⚠ 本教程由 AI 依据该项目 README 整理;原始文档不完整,部分步骤为通用流程推断,实际安装请以项目官方文档为准。

难度:入门 约 10 分钟 部署方式:库/依赖 6 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • 已安装 Julia 运行时(Turing.jl 是 Julia 包,必须先在 Julia 环境中使用)
  • 能正常使用 Julia 的包管理器 Pkg 添加依赖
  • 本地磁盘预留足够空间存放 Julia 依赖包
  • 如需 GPU 加速大规模推断,需自行准备对应的 GPU 环境

安装与启动步骤

  1. 1安装 Julia 运行时

    Turing.jl 用 Julia 编写,需先安装 Julia。README 未指定版本,建议使用 Julia 官方稳定发行版,装好后确认 julia 命令可用。

  2. 2启动 Julia 交互环境

    在终端执行 julia 进入 REPL,后续的包安装与建模都在此环境或用 -e 单行方式执行。

    julia
  3. 3添加 Turing 包

    在 Julia 包管理器中添加 Turing 包,首次安装会拉取依赖,耗时取决于网络与磁盘速度;失败可重试同一命令。

    julia -e 'using Pkg; Pkg.add("Turing")'
  4. 4加载包并自检

    加载 Turing 验证安装是否成功;无报错即说明包及其依赖已正确解析。

    julia -e 'using Turing; println("Turing loaded")'
  5. 5用 @model 写模型

    按 README 说明,用 @model 宏声明先验与似然即可完成建模;下面是结构示意,具体分布按你的数据替换。

    using Turing
    
    @model function mymodel(data)
        theta ~ Normal(0, 1)
        data ~ Normal(theta, 1)
    end
  6. 6查看文档与示例

    README 提供了教程与 API 文档入口(turinglang.org 及其 API 文档页),建模细节与推断算法用法以官方文档为准。

如何确认成功

执行 julia -e 'using Turing' 无报错,且能成功定义并调用 @model 宏,即表示安装可用。

常见问题

Q:需要先装 Julia 吗?

A:需要。Turing.jl 是 Julia 生态中的概率编程包,必须先有可用的 Julia 环境,再通过 Pkg 添加 Turing。

Q:除了 @model 还有别的建模写法吗?

A:README 提到可通过 JuliaBUGS.jl 使用 BUGS 语法建模,也可用 DoodlePPL 进行图形化建模。

Q:安装依赖时报错怎么办?

A:先确认 Julia 版本与磁盘空间正常,然后在同一环境重试 Pkg.add("Turing");仍失败可查看报错中缺失的依赖项。

Q:文档在哪里看?

A:README 给出了官网 turinglang.org 的教程入口与 API 文档页面,推断算法与建模写法以官方文档为准。

注意事项

  • README 节选未提供具体版本号、端口或配置文件,本教程仅覆盖通用安装与加载流程。
  • Turing.jl 以库的形式嵌入 Julia 代码使用,不需要单独启动服务或守护进程。
  • 大规模推断可用 GPU 加速,但需自行准备对应 GPU 驱动与 Julia GPU 生态依赖。

核心亮点

  • 基于 Julia 自动微分与编译优化,NUTS 采样性能接近手写代码
  • @model 宏让模型声明贴近数学公式,支持分层模型与贝叶斯神经网络
  • 推断算法齐全,涵盖 HMC/NUTS、Gibbs、变分推断与 MAP 估计

不足之处

  • 依赖 Julia 生态,相比 Python 概率编程社区用户规模较小
  • 复杂模型的采样诊断与调参仍需较强贝叶斯统计背景
  • 教程与第三方扩展数量少于主流 Python 同类框架

适用场景

  • 统计研究与论文中的贝叶斯模型快速原型验证
  • 分层模型与贝叶斯神经网络的参数估计
  • 高校概率编程与贝叶斯统计课程教学演示

替代项目

Stan、PyMC、NumPyro

上一篇:Power-CAT-Copilot-Studio-Kit

下一篇:没有了!

同类项目推荐

mistral-haystack 开源

用 Mistral 模型快速搭建 RAG 管道,让 AI 应用更聪明。

Mistral + Haystack: build RAG pipelines that rock

★ 107 2026-08-09
mirrord 开源

本地跑代码就有线上真实环境,部署前少踩坑。

Run any process, on your machine or in an AI agent's environment, as if it were a po···

★ 5380 2026-08-09
chatgpt-plugin 开源

用 Cloudflare Workers 快速构建并部署 ChatGPT 插件,免服务器低成本上线。

Build ChatGPT plugins with Cloudflare's Developer Platform

★ 295 2026-08-09
geo-optimizer 开源

让内容在 AI 搜索中被引用,Go 实现的可插拔 GEO 框架

A pluggable framework for GEO (Generative Engine Optimization) in Go. Built-in strat···

★ 103 2026-08-09
devpace 开源

让 Claude Code 帮你把业务目标盯到每一行代码

BizDevOps rhythm manager for Claude Code — trace business goals to code changes wit···

★ 73 2026-08-09
Conduit 开源

用 Swift 一套代码,连接所有大模型

Unified Swift SDK for LLM inference across local and cloud providers

★ 121 2026-08-09
archify 开源

让 AI 代理自动画出清晰可验证的架构图,告别手绘文档。

Turn any idea, plan, or codebase into a beautiful interactive diagram. An agent skil···

★ 88568 2026-08-30
PSOpenAI 开源

在 PowerShell 里直接调用 ChatGPT,让脚本秒变智能。

PowerShell module for OpenAI API.

★ 66 2026-08-09
megabots 开源

不想从零写代码?几分钟搭好一个能用的 LLM 聊天机器人。

State-of-the-art, production ready LLM apps made mega-easy, so you don't have to bui···

★ 350 2026-08-09