书籍详情
贝叶斯数据分析:基于R与Python的实现
作者:吴喜之 著
出版社:中国人民大学出版社
出版时间:2020-07-01
ISBN:9787300283258
定价:¥46.00
购买这本书可以去
内容简介
贝叶斯统计是和基于频率的传统统计 (频率派统计) 不同的一套关于统计推断或决策 的理论、方法与实践. 本书除了介绍贝叶斯统计的基本概念之外, 还介绍了不同贝叶斯模型的数学背景、与贝叶斯模型对应的各种计算方法, 并基于数据例子来介绍如何通过各种软件实现数据分析.本书使用的软件是以 R 为平台的 Stan 和以 Python 为平台的 PyMC3, 它们都是人们喜爱的**的基于 MCMC 和C++ 编译器的贝叶斯编程软件. 相信读者能够通过实践掌握它们。本书希望使对贝叶斯统计感兴趣的广大群体获得强有力的计算能力, 以发挥他们无穷的想象力和创造力.
作者简介
吴喜之,北京大学数学力学系本科,美国北卡罗来纳大学统计博士。中国人民大学统计学院教授,博士生导师。曾在美国加利福尼亚大学、北卡罗来纳大学以及南开大学、北京大学等多所著名学府执教。
目录
第一部分 基础篇
第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.1 R 简介――为领悟而运行
3.1.1 简介
3.1.2 安装和运行小贴士
3.1.3 动手
3.1.4 实践
3.2 Python 简介――为领悟而运行
3.2.1 引言
3.2.2 安装
3.2.3 基本模块的编程
3.2.4 Numpy 模块
3.2.5 Pandas 模块
3.2.6 Matplotlib 模块
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.1 Poisson 模型和例子
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.3 MCMC 方法综述
7.3.4 Metropolis 算法
7.3.5 Metropolis-Hastings 算法
7.3.6 Gibbs 抽样
7.3.7 Hamiltonian 蒙特卡罗方法
7.4 EM 算法
7.5 变分贝叶斯近似
第8章 概率编程/贝叶斯编程
8.1 引言
8.2 概率编程概述
8.2.1 概率编程要点
8.2.2 先验分布的选择――从概率编程的角度
8.3 贝叶斯计算专用软件
8.4 R/Stan
8.4.1 概述
8.4.2 安装
8.4.3 对例8.1 的数据运行R/Stan
8.5 Python/PyMC3
8.5.1 概述
8.5.2 安装
8.5.3 对例8.1 的数据运行Python/PyMC3
8.6 通过一个著名例子进一步熟悉R/Stan 和Python/PyMC3
8.6.1 R/Stan 关于例8.2 的模型(8.6.1) ~ (8.6.4) 的代码
8.6.2 Python/PyMC3 关于例8.2的模型(8.6.1) ~ (8.6.4) 的代码
8.7 R 中基于Stan 的两个程序包
8.7.1 R 中基于Stan 的rstanarm 程序包
8.7.2 R 中基于Stan 的brms 程序包
8.8 Python 中的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.2 Cox PH 模型
11.1.3 参数PH 模型
11.1.4 加速失效时间模型
11.2 数值计算例子
11.2.1 Cox PH 模型*
11.2.2 AFT 模型: Weibull 分布
11.2.3 AFT 模型: log-logistic 分布
11.2.4 Weibull 模型
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.2 HMM 的三个主要问题
14.2.1 评估问题
14.2.2 解码问题
14.2.3 学习问题
14.3 HMM 的数值例子和计算
14.3.1 数值例子
14.3.2 使用HMM 方法于例14.1(R)
14.3.3 使用HMM 方法于例14.1(Python)
参考文献
第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.1 R 简介――为领悟而运行
3.1.1 简介
3.1.2 安装和运行小贴士
3.1.3 动手
3.1.4 实践
3.2 Python 简介――为领悟而运行
3.2.1 引言
3.2.2 安装
3.2.3 基本模块的编程
3.2.4 Numpy 模块
3.2.5 Pandas 模块
3.2.6 Matplotlib 模块
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.1 Poisson 模型和例子
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.3 MCMC 方法综述
7.3.4 Metropolis 算法
7.3.5 Metropolis-Hastings 算法
7.3.6 Gibbs 抽样
7.3.7 Hamiltonian 蒙特卡罗方法
7.4 EM 算法
7.5 变分贝叶斯近似
第8章 概率编程/贝叶斯编程
8.1 引言
8.2 概率编程概述
8.2.1 概率编程要点
8.2.2 先验分布的选择――从概率编程的角度
8.3 贝叶斯计算专用软件
8.4 R/Stan
8.4.1 概述
8.4.2 安装
8.4.3 对例8.1 的数据运行R/Stan
8.5 Python/PyMC3
8.5.1 概述
8.5.2 安装
8.5.3 对例8.1 的数据运行Python/PyMC3
8.6 通过一个著名例子进一步熟悉R/Stan 和Python/PyMC3
8.6.1 R/Stan 关于例8.2 的模型(8.6.1) ~ (8.6.4) 的代码
8.6.2 Python/PyMC3 关于例8.2的模型(8.6.1) ~ (8.6.4) 的代码
8.7 R 中基于Stan 的两个程序包
8.7.1 R 中基于Stan 的rstanarm 程序包
8.7.2 R 中基于Stan 的brms 程序包
8.8 Python 中的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.2 Cox PH 模型
11.1.3 参数PH 模型
11.1.4 加速失效时间模型
11.2 数值计算例子
11.2.1 Cox PH 模型*
11.2.2 AFT 模型: Weibull 分布
11.2.3 AFT 模型: log-logistic 分布
11.2.4 Weibull 模型
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.2 HMM 的三个主要问题
14.2.1 评估问题
14.2.2 解码问题
14.2.3 学习问题
14.3 HMM 的数值例子和计算
14.3.1 数值例子
14.3.2 使用HMM 方法于例14.1(R)
14.3.3 使用HMM 方法于例14.1(Python)
参考文献
猜您喜欢