50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

概率编程语言与贝叶斯方法实践

  • 2014-07-18
  • 本文字数:1495 字

    阅读完需:约 5 分钟

近日,机器学习爱好者 Cameron Davidson-Pilon 在 GitHub 上发布了《概率编程和贝叶斯方法实践》一书,该书以动手编程和理解为首要任务,数学原理次之的理念,以概率编程的角度为读者介绍贝叶斯方法。该书为入门书籍,主要面向数学基础较弱以及不关心其数学原理的读者,对于经过严格数学训练的读者,建议结合其他有数学分析的相关图书阅读。该书源代码构成的项目在GitHub 上获得了高达5900+ 个星标,被fork 1100 多次,目前有765 次更新以及74 位贡献者。全书使用Python 脚本语言作为示例语言,采用非常新颖的IPython Notebook 形式发布,全部代码都可以随时执行并立即得到效果。《概率编程和贝叶斯方法实践》一书之所以选择PyMC 作为概率编程语言,主要考虑到两个原因,一是PyMC 缺乏入门教材,官方文档假设读者对贝叶斯和概率编程都很了解;二是鉴于近年来Python 语言在学术界的流行程度,PyMC 可能很快就成为一个核心模块。

贝叶斯方法是进行逻辑推理的一种非常自然的方法,但是对于广大读者来说,它的出现,通常附带着大量的数学公式和推导过程,让人望而却步。现有介绍贝叶斯推理的图书,通常会用两三个章节来讲解概率论基础,然后才能告诉我们什么是贝叶斯推理。非常不幸的是,由于大多数贝叶斯模型与生俱来的数学复杂性,读者接触到的只能是一些简单的,人为构造的虚假简化示例。这很容易给读者一种贝叶斯方法没什么了不起的感觉。实际上,这些错误的感觉只是那些图书作者的一面之词。

在目睹了近年来贝叶斯方法在机器学习领域的贡献,该书作者决定亲自来撰写一本通俗易懂而且可用性非常强的贝叶斯方法入门图书。他投入了大量的时间精力,研究如何将贝叶斯方法的数学基础和实践联系在一起。最后他发现,最大的问题在于,当前的资料中,贝叶斯相关数学知识和概率编程之间缺乏紧密的联系。因此本书的目标就在于弥补这一缺失。

如果说贝叶斯推理是我们最终的目标,那么用数学工具进行分析只是通向它的一个途径。现在的计算能力如此便宜,我们完全可以从另外一个完全不同的途径——概率编程来达到推理的目的。概率编程对于我们来讲更加实用,因为它不需要每一步都去考虑那些复杂的数学公式,这样我们就把拦在贝叶斯推理前面的数学巨石轻而易举的绕过了。

全书内容分为引言和六个章节,第一章介绍贝叶斯方法的原则以及概率编程初步;第二章介绍PyMC;第三章介绍马尔科夫蒙特卡洛方法(MCMC);第四章介绍大数定律;第五章介绍损失函数;第六章也是最重要的一张,介绍先验知识。另外还有两个补充章节,介绍贝叶斯方法在机器学习领域的应用以及PyMC 的更多细节。纵观全书,作者给出了非常多的真实数据来让读者深入了解贝叶斯方法。比如第一章中的通过用户一天发送的短信息数量来推测用户行为的变化;第二章中的AB 测试、谎言测试以及航天飞机事故分析;第三章中的贝叶斯后验概率和马尔科夫蒙特卡洛,以及数据聚类;第四章中的reddit 内容分享网站评论的按质量排序;第五章中的猜商品价格和Kaggle 竞赛题;第六章中的贝叶斯老虎机问题和股票分析等等。

值得一提的地方,此书的全部内容是开源的,意味着任何感兴趣的读者都可以自己做出贡献,只要通过GitHub 提交即可。在首页的最后,作者呼吁大家参与到图书的编写当中,并提供了一些入手的线索,比如对于马尔科夫蒙特卡洛方法、最大后验概率、贝叶斯网络、概率分布等内容的介绍、相关Python 代码的编写、对例子做出更生动的解释以及文字上的纠错等等。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-18 02:4611445
用户头像

发布了 268 篇内容, 共 135.5 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

用 AI “一句话生成代码”,用创意兑换灵码潮品:技术人的夏日狂欢季来了

阿里云云效

Aliyun OSS iOS SDK 使用指南

qife122

ios 阿里云

稳定币是对 Pi 网络的威胁吗?

TechubNews

现代 Web 安全实践:基于 Token 与 Refresh Token 的单点登录 (SSO) 实现

袋鼠云数栈

Web 数字化转型 解决方案 数据管理 单点登录

【清源SCA社区版】正式上线!|深度解析:从功能架构到技术实践的全维度指南

安势信息

开源 代码检测 情源SCA 清源SCA社区版

链游开发:在区块链浪潮中构建虚拟世界

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 公链开发代币开发

华商律所与iCourt达成战略合作,国内首家千人规模强所完成AI本地化部署

科技汇

AI 应用开发(二):Blender 建模助手

北桥苏

人工智能 大模型 AI智能体 AI工作流 MCP协议

用友与柳钢再续合作新篇,共筑废钢产业数智化新标杆

用友BIP

智能指标AIMetrics赋能:构建一体化数据智能决策中枢

袋鼠云数栈

数据 数据治理 大数据平台 数据管理 数据库 大数据

嘉为蓝鲸IT服务管理中心ITSM解决方案:多项殊荣实力彰显,融合创新重塑IT服务管理生态

嘉为蓝鲸

AIOPS ITSM 智能运维 IT服务管理中心

DApp 开发:开启去中心化应用新时代

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

用 AI “一句话生成代码”,用创意兑换灵码潮品:技术人的夏日狂欢季来了

阿里巴巴云原生

通义灵码

真正好用的企业AI:生于“原生”,成于“一体”

用友BIP

筑牢数据防线!企业级数据安全管控的核心功能全解析

袋鼠云数栈

数据库 大数据 数据治理 企业数据库

通义灵码2.5来袭!MCP 功能直接让开发效率提升300%(附实战案例)

阿里巴巴云原生

阿里云 通义灵码

汇金资损防控体系建设及实践 | 得物技术

得物技术

人工智能

公链钱包开发:打造安全便捷的数字资产管家

区块链软件开发推广运营

交易所开发 链游开发 公链开发 代币开发 链游开发公链开发

AI Infra 运维实践:DeepSeek 部署运维中的软硬结合

袋鼠云数栈

数据库 大数据 运维 数据治理 数据平台

非凸科技荣获“2025中国金融科技竞争力百强企业”

非凸科技

淘宝API系列:淘宝店铺所有商品API接口详解

tbapi

淘宝API 天猫API 天猫店铺所有商品接口 淘宝店铺所有商品接口

亚马逊云科技中国峰会:数新智能CTO原攀峰详解一站式AI原生数智平台DataCyber在Amazon EKS的实践

数新网络官方账号

数智焕新 “数质”先行 用友BIP为企业补上数据这一课

用友BIP

Spring Boot 插件化开发模式,即插即用

Geek_e3e86e

Java 编程

Java原生交易所全套开发

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

昇腾CANN再进化:开放创新繁荣AI生态

极客天地

用友成功中标茅台集团司库数据管理项目

用友BIP

javascript中IIFE(立即执行函数表达式)到底是咋来的?

电子尖叫食人鱼

JavaScript

商品中心—库存分桶调配的技术文档

不在线第一只蜗牛

Java spring

Sermant指标采集功能:构建指标可观测性实践

华为云开源

开源 微服务架构 sermant

三角偶极子天线(上)---MIMO系统, 包络相关系数ECC和分集增益DG

思茂信息

电磁 MIMO CST Studio Suite

概率编程语言与贝叶斯方法实践_语言 & 开发_张天雷_InfoQ精选文章