1

我有一个与实施朴素贝叶斯分类器相关的概率/统计问题,特别是关于实施拉普拉斯平滑以避免零计数问题和过度拟合。

从我读过的内容来看,使用 MLE 的基本 NBC 公式如下所示:

p(C│F_1 ...F_n )=(p(C)p(F_1 |C)...p(F_n |C))/(p(F_1)...p(F_n))

但是,如果其中一个 p(F_i |C) 为零,则整个概率变为 0。一种解决方案是 Lapace 平滑

p(F_i│C)~(x_i+k)/(N+kd)

其中 x_i 是 F_i 在 C 类中出现的次数,N 是 C 类出现的次数,d 是已知 F_i 具有的不同值的数量。

我的问题是这样的:

如果需要对分子中的 p(C) 和分母中的 p(F_i) 做任何事情怎么办?

4

1 回答 1

2

令 f = (f_1 ... f_n)。拉普拉斯平滑影响类似然项 p(f|C)。它不影响类先验 p(C)。它确实对 f 的边际概率有影响,从某种意义上说:

p(f) = \sum_c p(C) * p(f|C)

因此,如果你是拉普拉斯平滑,那么术语 p(f|C) 是不同的。但是由于所有 C 的分母都是恒定的,所以无论如何你都不应该费心去评估它。

PS这不是一个真正的编程问题!

于 2012-12-04T16:43:21.173 回答