朴素贝叶斯混淆;

Naive Bayes Confusion;

我正在为我的机器学习课程做家庭作业,但我无法理解关于朴素贝叶斯的问题。我遇到的问题是下一页问题 2 的变体:

https://www.cs.utexas.edu/~mooney/cs343/hw3-old/hw3.html

我的数字略有不同,所以我将用上面的示例替换作业中的数字。我目前正在尝试计算第一篇文章是物理学的概率。为此,我有一些看起来有点像这样的东西:

P(物理|c) = P(物理) * P(碳|物​​理) * p(原子|物理) * p(生命|物理) * p(地球|物理) / [SOMETHING]

P(物理|c) = .35 * .005 * .1 * .001 * .005 / [某事]

我的依据是我在笔记中看到的一个例子,但我似乎无法弄清楚我应该除以什么。我也会提供注释中的示例。

也许我以错误的方式解决这个问题,但我不确定我们除以的 P(X) 项来自哪里。这与文本是物理学的概率有什么关系?我觉得解决这个问题会让剩下的作业变得简单。

重点是您实际上不需要 P(x) 的值,因为它在所有 classes 中都是相同的。所以你应该忽略它,只比较除法步骤之前的数字。最高的数字是预测的 class.

它出现在等式中的原因源于贝叶斯法则:

P(C1|X) = P(X|C1) * P(C1) / P(X)

分母 P(X) 只是所有可能 class 的 P(X|Y)*P(Y) 的总和。

现在,重要的是要注意,在朴素贝叶斯中,您 而不是 必须计算此 P(X)。您只需为每个 class 计算 P(X|Y)*P(Y),然后 select 产生最高概率的 class。

在你的情况下,我假设你必须有几个 classes。你提到了 physics,但肯定还有其他像 chemistrymath.

所以你可以计算:

P(physics|X)   = P(X|physics) * P(physics) / P(X)

P(chemistry|X) = P(X|chemistry) * P(chemistry) / P(X)

P(math|X)      = P(X|math) * P(math) / P(X)

P(X) 是所有 classes 的 P(X|Y)*P(Y) 的总和:

P(X) = P(X|physics)*P(physics) + P(X|chemistry)*P(chemistry) + P(X|math)*P(math)

(顺便说一句,上面的语句与你提供的图片中的例子完全相似。那里的方程式有点复杂,但如果你重新排列它们,你会发现 P(X) = P(X|positive)*P(positive) + P(X|negative)*P(negative) 在那个例子)。

要得出答案(即在 physicschemistrymath 中确定 Y),您需要 select 最大值P(physics|X)P(chemistry|X)P(math|X).

之间的值

正如我提到的,您不需要计算P(X),因为该项存在于所有P(physics|X)、[=27=的分母中],以及 P(math|X)。因此,您只需确定 P(X|physics)*P(physics)P(X|chemistry)*P(chemistry)P(X|math)*P(math).

中的最大值