编辑推荐

Python贝叶斯分析》介绍了贝叶斯统计中的主要概念,以及将其应用于数据分析的方法。《Python贝叶斯分析》采用编程计算的实用方法介绍了贝叶斯建模的基础,使用一些手工构造的数据和一部分简单的真实数据来解释和探索贝叶斯框架中的核心概念,然后在《Python贝叶斯分析》涉及的模型中,抽象出了线性模型用于解决回归和分类问题,此外还详细解释了混合模型和分层模型,并单独用一章讨论了如何做模型选择,还简单介绍了非参模型和高斯过程。

Python贝叶斯分析》所有的贝叶斯模型都用PyMC3实现。PyMC3是一个用于概率编程的Python库,其许多特性都在书中有介绍。在《Python贝叶斯分析》和PyMC3的帮助下,读者将学会实现、检查和扩展贝叶斯统计模型,从而解决一系列数据分析的问题。

从《Python贝叶斯分析》你将学到:
从实用的角度理解基本的贝叶斯概念;
学习如何用PyMC3构建概率模型;
掌握检查和修改模型的技能;
利用分层模型的优势给模型加入结构;
针对不同的数据分析问题,找到合适的模型;
学会在不确定的情况下做模型选择;
用回归分析预测连续变量,用逻辑回归或softmax做分类;
学习如何从概率的角度思考,释放贝叶斯框架的灵活性与力量。

内容简介

《Python贝叶斯分析》从务实和编程的角度讲解了贝叶斯统计中的主要概念,并介绍了如何使用流行的PyMC3来构建概率模型。阅读《Python贝叶斯分析》,读者将掌握实现、检查和扩展贝叶斯统计模型,从而提升解决一系列数据分析问题的能力。《Python贝叶斯分析》不要求读者有任何统计学方面的基础,但需要读者有使用Python编程方面的经验。

作者简介

OsvaldoMartin是阿根廷国家科学与技术理事会(CONICET)的一名研究员。该理事会是负责阿根廷科技进步的主要组织。OsvaldoMartin曾从事结构生物信息学和计算生物学方面的研究,此外,他在应用马尔科夫蒙特卡洛方法模拟分子方面有着丰富的经验,尤其喜欢用Python解决数据分析问题。他曾讲授结构生物信息学、Python编程等课程,还开设了贝叶斯数据分析的课程。Python和贝叶斯统计改变了他对科学的认知和对问题的思考方式。他写《Python贝叶斯分析》的动力是希望借助Python帮助大家理解概率模型,同时,他也是PyMOL社区(一个基于C/Python的分子可视化社区)的活跃成员,他也对PyMC3社区做了一些贡献。

译者简介
田俊,计算机专业硕士。2016年毕业于中国科学院自动化研究所,主要研究方向为自然语言处理中的短文本分类,毕业后曾在滴滴出行担任算法工程师,目前在微软从事自然语言处理方面的工作。

中文版审校者简介
劳俊鹏,心理学博士,PyMC团队成员。2014年毕业于英国格拉斯哥大学,主要研究认知神经心理学。2013年至今在瑞士弗里堡大学从事心理学研究,专攻数据建模分析和神经计算模型。

目录

第1章概率思维——贝叶斯推断指南1

1.1以建模为中心的统计学1
1.1.1探索式数据分析2
1.1.2统计推断3
1.2概率与不确定性4
1.2.1概率分布6
1.2.2贝叶斯定理与统计推断9
1.3单参数推断11
1.3.1抛硬币问题11
1.3.2报告贝叶斯分析结果20
1.3.3模型注释和可视化20
1.3.4总结后验21
1.4后验预测检查24
1.5安装必要的Python库24
1.6总结25
1.7练习25

第2章概率编程——PyMC3编程指南27

2.1概率编程27
2.1.1推断引擎28
2.2PyMC3介绍40
2.2.1用计算的方法解决抛硬币问题40
2.3总结后验47
2.3.1基于后验的决策48
2.4总结50
2.5深入阅读50
2.6练习51

第3章多参和分层模型53

3.1冗余参数和边缘概率分布53
3.2随处可见的高斯分布55
3.2.1高斯推断56
3.2.2鲁棒推断59
3.3组间比较64
3.3.1“小费”数据集65
3.3.2Cohen’sd68
3.3.3概率优势69
3.4分层模型69
3.4.1收缩72
3.5总结74
3.6深入阅读75
3.7练习75

第4章利用线性回归模型理解并预测数据77

4.1一元线性回归77
4.1.1与机器学习的联系78
4.1.2线性回归模型的核心78
4.1.3线性模型与高自相关性83
4.1.4对后验进行解释和可视化86
4.1.5皮尔逊相关系数89
4.2鲁棒线性回归95
4.3分层线性回归98
4.3.1相关性与因果性103
4.4多项式回归105
4.4.1解释多项式回归的系数107
4.4.2多项式回归——终极模型?108
4.5多元线性回归108
4.5.1混淆变量和多余变量112
4.5.2多重共线性或相关性太高115
4.5.3隐藏的有效变量117
4.5.4增加相互作用120
4.6glm模块120
4.7总结121
4.8深入阅读121
4.9练习122

第5章利用逻辑回归对结果进行分类123

5.1逻辑回归123
5.1.1逻辑回归模型125
5.1.2鸢尾花数据集125
5.1.3将逻辑回归模型应用到鸢尾花数据集128
5.2多元逻辑回归131
5.2.1决策边界132
5.2.2模型实现132
5.2.3处理相关变量134
5.2.4处理类别不平衡数据135
5.2.5如何解决类别不平衡的问题137
5.2.6解释逻辑回归的系数137
5.2.7广义线性模型138
5.2.8Softmax回归或多项逻辑回归139
5.3判别式和生成式模型142
5.4总结144
5.5深入阅读145
5.6练习145

第6章模型比较147

6.1奥卡姆剃刀——简约性与准确性147
6.1.1参数太多导致过拟合149
6.1.2参数太少导致欠拟合150
6.1.3简洁性与准确性之间的平衡151
6.2正则先验152
6.2.1正则先验和多层模型153
6.3衡量预测准确性153
6.3.1交叉验证154
6.3.2信息量准则155
6.3.3用PyMC3计算信息量准则158
6.3.4解释和使用信息校准162
6.3.5后验预测检查163
6.4贝叶斯因子164
6.4.1类比信息量准则166
6.4.2计算贝叶斯因子166
6.5贝叶斯因子与信息量准则169
6.6总结171
6.7深入阅读171
6.8练习171

第7章混合模型173

7.1混合模型173
7.1.1如何构建混合模型174
7.1.2边缘高斯混合模型180
7.1.3混合模型与计数类型变量181
7.1.4鲁棒逻辑回归187
7.2基于模型的聚类190
7.2.1固定成分聚类191
7.2.2非固定成分聚类191
7.3连续混合模型192
7.3.1beta-二项分布与负二项分布192
7.3.2t分布193
7.4总结193
7.5深入阅读194
7.6练习194

第8章高斯过程195

8.1非参统计195
8.2基于核函数的模型196
8.2.1高斯核函数196
8.2.2核线性回归197
8.2.3过拟合与先验202
8.3高斯过程202
8.3.1构建协方差矩阵203
8.3.2根据高斯过程做预测207
8.3.3用PyMC3实现高斯过程211
8.4总结215
8.5深入阅读216
8.6练习216

其他推荐