图模型
用图模型来重新解释一下朴素贝叶斯和隐马模型
我们先简单介绍一机器分类
联合概率
如果我们知道P(A,B,C)的联合分布我们就可以回答任何关于 A,B 和 C 的概率的问题。我们就可以得到P(A|B) P(B) P(C|AB)。
不过问题就是如果我们并不连接这些变量(A B C) 之前关系,我们联合变量的计算量会随着变量增加成指数级增加的。
这里假设我们有 A B C 三个变量他们取值分别可能是 1 或 0,那么我们就 7 排列组合
A | B | C |
---|---|---|
0 | 0 | 0 |
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
1 | 1 | 1 |
1 | 0 | 1 |
所以当我们不知道 A B 和 C 之间的关系我们需要 7 数来学出联合概率。那么这个 7 怎么来的 。那么如果我们有 30 变量我们就需要 数,这样计算量远远超出计算能力。现在我们还只是2维变量。这也就是维度问题,我们需要图模型来解决维度问题。
如果我们知道变量之间关系,这样就可以将指数复杂度压缩为多项式复杂度,其实有关图模型的本质也就是我们人为地为假设或建立一下变量间的关系从而降低模型复杂度。不过图模型根据建模者有很大关系,
有向无环图模型
事件 | 依赖事件 |
---|---|
E | C |
C | A,B |
D | A |
下面公式就是根据上面例子我们推导出来一个图模型中联合概率公式
现在图像模型主要应用就是医院的临床诊断。BI 中也会引用,还有制药根据DNA 中也会用到。
经典实例
这里有 4 个事件分别是
- Cloudy(多云)
- Sprinkler(喷水灌溉)
- Rain(雨天)
- WetGrass(草湿润)
我们来描述一下他们之间关系,Cloudy(多云)可能会影响到Sprinkler(喷水灌溉)和Rain(雨天) 随后我们就用事件的首字母来表示这样简便一些。W可能是因为喷水器和下雨。喷水器受到多云影响,如果是多云可能不喷水了,而下雨也是和多云有关系。现在大家可能已经清楚他们之间相互的关系。
我们通过观察获取数据然后进行统计来得到下面概率,不用记录 概率,因为我们已经知道这些变量之间关系,
- 某一天是多云概率
P(C=F) | P(C=T) |
---|---|
0.5 | 0.5 |
- 喷水概率P(S|C)
C | P(S=F) | P(S=T) |
---|---|---|
F | 0.5 | 0.5 |
T | 0.9 | 0.1 |
- 下雨概率P(R|C)
C | P(R=F) | P(R=T) |
---|---|---|
F | 0.8 | 0.2 |
T | 0.2 | 0.8 |
- 草湿概率P(W|R,S)
S | R | P(W=F) | P(W=T) |
---|---|---|---|
F | F | 1.0 | 0 |
T | F | 0.1 | 0.9 |
F | T | 0.1 | 0.9 |
T | T | 0.01 | 0.99 |
已经建立好�模型,也就是有了联合概率公式我们现在用这个模型干些什么呢?我们开始求P(S=T)也就是开启喷水器的概率是多少。我们可以通过积分将不需要变量积掉。
这里我们用数字 1 表示 T
通过写三层for循环这样我们问题就变得复杂度。这是我们就可以动态规划,
- 这里对 w 进行求积分我们可以从表格可以看出这个积分应该是 1 所以这一项可以被消掉