图书介绍
概率编程实战PDF|Epub|txt|kindle电子书版本网盘下载
![概率编程实战](https://www.shukui.net/cover/24/31904444.jpg)
- (美)AVIPFEFFER著;姚军译 著
- 出版社: 北京:人民邮电出版社
- ISBN:7115448743
- 出版时间:2017
- 标注页数:370页
- 文件大小:59MB
- 文件页数:389页
- 主题词:
PDF下载
下载说明
概率编程实战PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1部分 概率编程和Figaro简介3
第1章 概率编程简介3
1.1 什么是概率编程4
1.1.1 我们如何做出主观判断4
1.1.2 概率推理系统帮助决策5
1.1.3 概率推理系统有3种方式推理7
1.1.4 概率编程系统:用编程语言表达的概率推理系统11
1.2 为什么使用概率编程14
1.2.1 更好的概率推理14
1.2.2 更好的模拟语言15
1.3 Figaro简介:一种概率编程语言16
1.4 小结23
1.5 练习24
第2章 Figaro快速教程25
2.1 Figaro简介25
2.2 创建模型和运行推理:重回Hello World27
2.2.1 构建第一个模型28
2.2.2 运行推理和回答查询29
2.2.3 构建模型和生成观测值29
2.2.4 理解模型的构建方法31
2.2.5 理解重复的元素:何时相同,何时不同32
2.3 使用基本构件:原子元素33
2.3.1 离散原子元素34
2.3.2 连续原子元素35
2.4 使用复合元素组合原子元素37
2.4.1 If38
2.4.2 Dist39
2.4.3 原子元素的复合版本39
2.5 用Apply和Chain构建更复杂的模型40
2.5.1 Apply41
2.5.2 Chain43
2.6 使用条件和约束指定证据46
2.6.1 观测值46
2.6.2 条件47
2.6.3 约束48
2.7 小结50
2.8 练习51
第3章 创建一个概率编程应用程序53
3.1 把握全局53
3.2 运行代码56
3.3 探索垃圾邮件过滤应用的架构59
3.3.1 推理组件架构59
3.3.2 学习组件架构62
3.4 设计电子邮件模型64
3.4.1 选择元素64
3.4.2 定义依赖关系67
3.4.3 定义函数形式68
3.4.4 使用数值参数71
3.4.5 使用辅助知识73
3.5 构建推理组件74
3.6 创建学习组件78
3.7 小结81
3.8 练习82
第2部分 编写概率程序85
第4章 概率模型和概率程序85
4.1 概率模型定义86
4.1.1 将一般知识表达为可能世界上的某种概率分布86
4.1.2 进一步探索概率分布88
4.2 使用概率模型回答查询90
4.2.1 根据证据调节以产生后验概率分布90
4.2.2 回答查询92
4.2.3 使用概率推理94
4.3 概率模型的组成部分94
4.3.1 变量95
4.3.2 依赖性96
4.3.3 函数形式101
4.3.4 数值参数104
4.4 生成过程105
4.5 使用连续变量的模型110
4.5.1 使用β-二项式模型110
4.5.2 连续变量的表示111
4.6 小结114
4.7 练习114
第5章 用贝叶斯和马尔科夫网络建立依赖性模型116
5.1 建立依赖性模型117
5.1.1 有向依赖性117
5.1.2 无向依赖性122
5.1.3 直接和间接依赖性124
5.2 使用贝叶斯网络126
5.2.1 贝叶斯网络定义126
5.2.2 贝叶斯网络如何定义概率分布127
5.2.3 用贝叶斯网络进行推理128
5.3 探索贝叶斯网络的一个示例131
5.3.1 设计一个计算机系统诊断模型131
5.3.2 用计算机系统诊断模型进行推理135
5.4 使用概率编程扩展贝叶斯网络:预测产品的成功140
5.4.1 设计产品成功预测模型140
5.4.2 用产品成功预测模型进行推理145
5.5 使用马尔科夫网络147
5.5.1 马尔科夫网络定义147
5.5.2 表示马尔科夫网络并用其进行推理150
5.6 小结153
5.7 练习153
第6章 使用Scala和Figaro集合构建模型156
6.1 使用Scala集合157
6.1.1 为依赖于单一变量的多个变量建立模型157
6.1.2 创建层次化模型160
6.1.3 建立同时依赖两个变量的模型162
6.2 使用Figaro集合165
6.2.1 理解Figaro集合的用途165
6.2.2 用Figaro集合重新实现层次化模型166
6.2.3 结合使用Scala和Figaro集合168
6.3 建立对象数量未知情况的模型171
6.3.1 开放宇宙中对象数量未知的情况171
6.3.2 可变大小数组172
6.3.3 可变大小数组上的操作172
6.3.4 示例:预测数量未知的新产品销售额173
6.4 处理无限过程174
6.4.1 Process特征175
6.4.2 示例:一个健康时空过程176
6.4.3 使用过程178
6.5 小结179
6.6 练习180
第7章 面向对象概率建模182
7.1 使用面向对象概率模型183
7.1.1 理解面向对象建模的元素183
7.1.2 重温打印机模型185
7.1.3 关于多台打印机的推理189
7.2 用关系扩展OO概率模型192
7.2.1 描述通用类级模型192
7.2.2 描述某种情况195
7.2.3 用Figaro表现社会化媒体模型198
7.3 建立关系和类型不确定性的模型200
7.3.1 元素集合和引用200
7.3.2 具有关系不确定性的社会化媒体模型202
7.3.3 具有类型不确定性的打印机模型205
7.4 小结207
7.5 练习207
第8章 动态系统建模209
8.1 动态概率模型210
8.2 动态模型类型211
8.2.1 马尔科夫链211
8.2.2 隐含马尔科夫模型214
8.2.3 动态贝叶斯网络216
8.2.4 结构随时间改变的模型220
8.3 建立永续系统的模型224
8.3.1 理解Figaro的宇宙概念224
8.3.2 使用宇宙建立持续运行系统的模型225
8.3.3 运行一个监控应用227
8.4 小结229
8.5 练习230
第3部分 推理235
第9章 概率推理三原则235
9.1 链式法则:从条件概率分布构建联合分布237
9.2 全概率公式:从联合分布获得简单查询结果240
9.3 贝叶斯法则:从结果推断原因243
9.3.1 理解、原因、结果和推理243
9.3.2 实践中的贝叶斯法则245
9.4 贝叶斯建模247
9.4.1 估算硬币的偏差248
9.4.2 预测下一次掷币结果252
9.5 小结256
9.6 练习256
第10章 因子分解推理算法258
10.1 因子259
10.1.1 什么是因子259
10.1.2 用链式法则分解概率分布261
10.1.3 使用全概率公式,定义包含因子的查询263
10.2 变量消除算法267
10.2.1 VE的图形解释267
10.2.2 VE代数运算271
10.3 VE的使用273
10.3.1 Figaro特有的VE考虑因素273
10.3.2 设计模型支持高效的VE275
10.3.3 VE的应用278
10.4 置信传播281
10.4.1 BP基本原理282
10.4.2 Loopy BP的属性282
10.5 BP的使用284
10.5.1 Figaro特有的BP考虑因素284
10.5.2 设计模型以支持高效的BP285
10.5.3 BP的应用287
10.6 小结288
10.7 练习288
第11章 抽样算法291
11.1 抽样的原理292
11.1.1 前向抽样293
11.1.2 拒绝抽样297
11.2 重要性抽样299
11.2.1 重要性抽样的工作方式300
11.2.2 在Figaro中使用重要性抽样303
11.2.3 让重要性抽样为您工作304
11.2.4 重要性抽样的应用305
11.3 马尔科夫链蒙特卡洛抽样307
11.3.1 MCMC的工作方式308
11.3.2 Figaro的MCMC算法:Metropolis-Hastings算法311
11.4 让MH更好地工作314
11.4.1 自定义提议316
11.4.2 避免硬条件319
11.4.3 MH的应用320
11.5 小结321
11.6 练习322
第12章 处理其他推理任务324
12.1 计算联合分布325
12.2 计算最可能的解释326
12.2.1 在Figaro中计算和查询MPE329
12.2.2 MPE查询算法的使用331
12.2.3 探索MPE算法的应用336
12.3 计算证据的概率337
12.3.1 观察用于证据概率计算的证据338
12.3.2 运行证据概率算法339
12.4 小结341
12.5 练习341
第13章 动态推理和参数学习342
13.1 监控动态系统的状态342
13.1.1 监控机制344
13.1.2 粒子过滤算法345
13.1.3 过滤的应用348
13.2 学习模型参数349
13.2.1 贝叶斯学习349
13.2.2 最大似然和MAP学习353
13.3 进一步应用Figaro360
13.4 小结361
13.5 练习361
附录A 获取和安装Scala和Figaro364
A.1 使用sbt364
A.2 在没有sbt的情况下安装和运行Figaro365
A.3 从源代码编译366
附录B 概率编程系统简况367