目录
●第一部分基础篇
第1章引言
1.1为什么用贝叶斯
1.1.1传统数理统计的先天缺陷
1.1.2贝叶斯方法是基于贝叶斯定理发展起来的用于系统地阐述和解决统计问题的方法
1.2本书所强调的贝叶斯编程计算的意义
1.3本书的构成和内容安排
1.4习题
第2章基本概念
2.1概率的规则及贝叶斯定理
2.1.1概率的规则
2.1.2概率规则的合理性、贝叶斯定理、优势比、后验分布
2.1.3贝叶斯和经典统计基本概念的一些比较
2.2决策的基本概念
2.3贝叶斯统计的基本概念
2.3.1贝叶斯定理
2.3.2似然函数
2.3.3后验分布包含的信息
2.3.4几个简单例子
2.3.5先验分布的形式
2.4共轭先验分布族
2.4.1常用分布及其参数的共轭先验分布*
2.4.2指数先验分布族的一些理论结果*
2.5习题
第3章基本软件:R和Python
3.1R简介——为领悟而运行
3.1.1简介
3.1.2安装和运行小贴士
3.1.3动手
3.1.4实践
3.2Python简介——为领悟而运行
3.2.1引言
3.2.2安装
3.2.3基本模块的编程
3.2.4Numpy模块
3.2.5Pandas模块
3.2.6Matplotlib模块
3.3习题
第二部分几个常用初等贝叶斯模型71
第4章比例的推断:Bernoulli试验
4.1采用简单共轭先验分布
4.1.1例4.1的关于θ的后验分布及其优选密度区域
4.1.2例4.1的关于θ的优选密度区域的R代码计算
4.1.3例4.1的关于θ的优选密度区域的Python代码计算
4.2稍微复杂的共轭先验分布
4.2.1模型(4.2.1)~(4.2.3)拟合例
4.2数据直接按公式计算的R代码
4.2.2模型(4.2.1)~(4.2.3)拟合例
4.2数据直接按公式计算的Python代码
4.3习题
第5章发生率的推断:Poisson模型
5.1Poisson模型和例子
5.2对例5.1的分析和计算
5.2.1通过R代码利用公式分析例5.1
5.2.2例5.1优选密度区域的Python代码
5.3习题
第6章正态总体的情况
6.1正态分布模型
6.2均值未知而精度已知的情况
6.2.1利用公式(6.2.1)、(6.2.2)拟合例6.1的数据(R)
6.2.2利用公式(6.2.1)、(6.2.2)拟合例6.1数据的后验优选密度区域(Python)
6.3两个参数皆为未知的情况
6.3.1使用公式(6.3.1)、(6.3.2)对例6.1的分析(R)
6.3.2使用公式(6.3.1)、(6.3.2)对例6.1的分析(Python)
6.4习题
第三部分算法、概率编程及贝叶斯专门软件
第7章贝叶斯推断中的一些算法
7.1优选后验概率法
7.2拉普拉斯近似
7.3马尔可夫链蒙特卡罗方法
7.3.1蒙特卡罗积分
7.3.2马尔可夫链
7.3.3MCMC方法综述
7.3.4Metropolis算法
7.3.5Metropolis-Hastings算法
7.3.6Gibbs抽样
7.3.7Hamiltonian蒙特卡罗方法
7.4EM算法
7.5变分贝叶斯近似
第8章概率编程/贝叶斯编程
8.1引言
8.2概率编程概述
8.2.1概率编程要点
8.2.2先验分布的选择——从概率编程的角度
8.3贝叶斯计算专用软件
8.4R/Stan
8.4.1概述
8.4.2安装
8.4.3对例8.1的数据运行R/Stan
8.5Python/PyMC3
8.5.1概述
8.5.2安装
8.5.3对例8.1的数据运行Python/PyMC3
8.6通过一个有名例子进一步熟悉R/Stan和Python/PyMC3
8.6.1R/Stan关于例8.2的模型(8.6.1)~(8.6.4)的代码
8.6.2Python/PyMC3关于例8.2的模型(8.6.1)~(8.6.4)的代码
8.7R中基于Stan的两个程序包
8.7.1R中基于Stan的rstanarm程序包
8.7.2R中基于Stan的brms程序包
8.8Python中的BayesPy模块简介
8.9习题
第9章在常用模型中使用R/Stan和Python/PyMC3的例子
9.1热身:一些简单例子
9.1.1抛硬币:二项分布
9.1.2正态分布例子
9.1.3简单回归例子
9.1.4简单logistic回归例子
9.2第4章例子的贝叶斯编程计算Bernoulli/二项分布模型参数的后验分布
9.2.1通过R/Stan用模型(9.2.1)~(9.2.3)拟合例4.2的数据
9.2.2通过Python/PyMC3用模型(9.2.1)~(9.2.3)拟合例4.2的数据
9.3第5章例子的贝叶斯编程计算Poisson模型参数的后验分布
9.3.1使用R/Stan的代码用模型(5.1.1)、(5.1.2)拟合例5.1的数据
9.3.2使用Python/PyMC3的代码用模型(5.1.1)、(5.1.2)拟合例5.1的数据
9.4第6章例子的贝叶斯编程计算后验分布的正态分布例子
9.4.1通过R/Stan代码用模型(9.4.1)~(9.4.3)拟合例6.1的数据
9.4.2通过Python/PyMC3代码用模型(9.4.1)~(9.4.3)拟合例6.1的数据
9.5习题
第四部分更多的贝叶斯模型185
第10章贝叶斯广义线性模型
10.1可能性和优选似然原理
10.2指数分布族和广义线性模型
10.2.1指数分布族的典则形式
10.2.2广义线性模型和连接函数
10.3线性回归
10.3.1应用R/Stan代码于例10.3的模型(10.3.1)~(10.3.6)
10.3.2应用Python/PyMC3代码于例10.3的模型(10.3.1)~(10.3.6)
10.4二水平变量问题:logistic回归
10.4.1应用R/Stan代码于例10.4的模型(10.4.2)~(10.4.4)
10.4.2应用Python/PyMC3代码于例10.4的模型(10.4.2)~(10.4.4)
10.5分层线性回归:多水平模型
10.5.1应用R/Stan代码于例10.5的模型(10.5.3)~(10.5.6)
10.5.2应用Python/PyMC3代码于例10.5的模型(10.5.3)~(10.5.6)
10.6分层logistic回归
10.6.1应用R/Stan代码于例10.6的模型(10.6.2)~(10.6.5)
10.6.2应用Python/PyMC3代码于例10.6的模型(10.6.2)~(10.6.5)
10.7习题
第11章生存分析
11.1生存分析的基本概念
11.1.1本章的例子
11.1.2CoxPH模型
11.1.3参数PH模型
11.1.4加速失效时间模型
11.2数值计算例子
11.2.1CoxPH模型*
11.2.2AFT模型:Weibull分布
11.2.3AFT模型:log-logistic分布
11.2.4Weibull模型
11.3习题
第12章朴素贝叶斯
12.1基本概念
12.1.1类条件独立性假定
12.1.2朴素贝叶斯分类器类型
12.2朴素贝叶斯方法分类数值例子
12.3本章的Python代码
12.4习题
第13章贝叶斯网络
13.1概述
13.1.1基本概念
13.1.2贝叶斯网络的难点及优缺点
13.1.3贝叶斯网络的一个简单例子
13.2学习贝叶斯网络
13.2.1贝叶斯网络中的条件独立性概念
13.2.2网络学习算法的种类
13.2.3几种可能面对的问题
13.3贝叶斯网络的数值例子及计算
13.3.1全部变量是离散变量的情况
13.3.2全部变量是连续变量的情况
13.3.3连续变量和离散变量混合的情况
第14章隐马尔可夫模型*
14.1概述
14.2HMM的三个主要问题
14.2.1评估问题
14.2.2解码问题
14.2.3学习问题
14.3HMM的数值例子和计算
14.3.1数值例子
14.3.2使用HMM方法于例14.1(R)
14.3.3使用HMM方法于例14.1(Python)
参考文献
内容介绍
贝叶斯统计是和基于频率的传统统计(频率派统计)不同的一套关于统计推断或决策的理论、方法与实践。本书除了介绍贝叶斯统计的基本概念之外,还介绍了各种贝叶斯模型的数学背景、与贝叶斯模型对应的各种计算方法,并基于数据例子来介绍如何通过各种软件实现数据分析。本书使用的软件是以R为平台的Stan和以Python为平台的PyMC3,它们都是人们喜爱的基于MCMC和C++编译器的贝叶斯编程软件,相信读者能够通过实践掌握它们。本书将使对贝叶斯统计感兴趣的广大群体获得强有力的计算能力,以发挥他们无穷的想象力和创造力。