我正在为我的机器学习课程做作业,但我很难理解朴素贝叶斯的问题。我遇到的问题是下一页问题2的变体:
https://www.cs.utexas.edu/~mooney/cs343/hw3-old/hw3.html
我的数字略有不同,所以我会用上面的例子替换我的作业中的数字。我目前正试图弄清楚第一个文本是物理学的概率。为此,我有一些看起来像这样的东西:
P(物理学| c)= P(物理学)* P(碳物理学)* p(原子|物理学)* p(生命物理学)* p(物理学)/ [SOMETHING]
P(physics | c)=。35 * .005 * .1 * .001 * .005 / [SOMETHING]
我的基础是我在笔记中看到的一个例子,但我似乎无法弄清楚我应该分开的东西。我还将提供笔记中的例子。
也许我会以错误的方式解决这个问题,但我不确定我们划分的P(X)术语来自何处。这与文本是物理学的概率有何关系?我觉得解决这个问题会使任务的其余部分变得简单。
答案 0 :(得分:3)
分母P(X)
只是所有可能类别的P(X|Y)*P(Y)
的总和。
现在,重要的是要注意在Naive Bayes中,不必须计算此P(X)
。您只需为每个类计算P(X|Y)*P(Y)
,然后选择产生概率最高的类。
在你的情况下,我认为你必须有几个班级。您提到physics
,但必须有其他人,例如chemistry
或math
。
所以你可以计算:
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)
是所有课程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)
)。
要生成答案(即,在Y
,physics
或chemistry
中确定math
),您需要在{{1}中选择最大值},P(physics|X)
和P(chemistry|X)
。
正如我所提到的,您不需要计算P(math|X)
,因为此术语存在于P(X)
,P(physics|X)
和{{}的所有分母中1}}。因此,您只需确定P(chemistry|X)
,P(math|X)
和P(X|physics)*P(physics)
中的最大值。
答案 1 :(得分:1)
关键是你并不需要P(x)的值,因为它在所有类中都是相同的。所以你应该忽略它,只是比较除法步骤之前的数字。最高的数字是预测的等级。
它在等式中的原因源于贝叶斯规则:
P(C1|X) = P(X|C1) * P(C1) / P(X)