【发布时间】:2013-03-09 12:17:33
【问题描述】:
假设我有以下贝叶斯网络:
我想根据 H=true 或 H=false 对新实例进行分类,
新实例看起来例如像这样:Fl=true, A=false, S=true, and Ti=false。
如何根据 H 对实例进行分类?
我可以通过将表格中的概率相乘来计算概率:
0.4 * 0.7 * 0.5 * 0.2 = 0.028
这说明新实例是否为正实例 H?
编辑 我会根据 Bernhard Kausler 的建议尝试计算概率:
这就是贝叶斯规则:
P(H|S,Ti,Fi,A) = P(H,S,Ti,Fi,A) / P(S,Ti,Fi,A)
计算分母:
P(S,Ti,Fi,A) = P(H=T,S,Ti,Fi,A)+P(H=F,S,Ti,Fi,A) = (0.7 * 0.5 * 0.8 * 0.4 * 0.3) + (0.3 * 0.5 * 0.8 * 0.4 * 0.3) =0.048
P(H,S,Ti,Fi,A) = 0.336
所以P(H|S,Ti,Fi,A) = 0.0336 / 0.048 = 0.7
现在我计算 P(H=false|S,Ti,Fi,A) = P(H=false,S,Ti,Fi,A) / P(S,Ti,Fi,A)
我们已经有了P(S,Ti,Fi,A´. I's ´0.048 的值。
P(H=false,S,Ti,Fi,A) =0.0144
所以P(H=false|S,Ti,Fi,A) = 0.0144 / 0.048 = 0.3
P(H=true,S,Ti,Fi,A) 的概率最高。因此新实例将被分类为 H=True
这对吗?
加法:我们不需要计算P(H=false|S,Ti,Fi,A),因为它是1 - P(H=true|S,Ti,Fi,A)。
【问题讨论】:
标签: machine-learning classification bayesian-networks