Machine learning 朴素的贝叶斯混淆;

Machine learning 朴素的贝叶斯混淆;,machine-learning,naivebayes,Machine Learning,Naivebayes,我正在为我的机器学习课程做作业,在理解朴素贝叶斯的问题时遇到了困难。我的问题是下一页问题2的一个变体: 我的数字略有不同,所以我将用上面的例子替换我作业中的数字。我现在正试图找出第一篇文章是物理的可能性。为此,我有一些东西看起来有点像这样: 物理| c=物理*Pcarbon |物理*patom |物理*plife |物理*pearth |物理/[某物] 物理| c=.35*.005*.1*.001*.005/[某物] 我是基于我在笔记中看到的一个例子,但我似乎不知道我应该除以什么。我还将提供注释

我正在为我的机器学习课程做作业,在理解朴素贝叶斯的问题时遇到了困难。我的问题是下一页问题2的一个变体:

我的数字略有不同,所以我将用上面的例子替换我作业中的数字。我现在正试图找出第一篇文章是物理的可能性。为此,我有一些东西看起来有点像这样:

物理| c=物理*Pcarbon |物理*patom |物理*plife |物理*pearth |物理/[某物]

物理| c=.35*.005*.1*.001*.005/[某物]

我是基于我在笔记中看到的一个例子,但我似乎不知道我应该除以什么。我还将提供注释中的示例


也许我用了错误的方法,但我不确定我们除以的PX项是从哪里来的。这与文本是物理的概率有什么关系?我觉得解决这个问题会使赋值的其余部分变得简单。

关键是你并不需要Px的值,因为它在所有类中都是相同的。因此,您应该忽略它,只需在除法步骤之前比较数字。最高的数字是预测类

方程式中的原因源自Bayes规则:

P(C1|X) = P(X|C1) * P(C1) / P(X)
分母PX只是所有可能类别的PX | Y*PY之和

现在,需要注意的是,在朴素贝叶斯中,您不必计算这个PX。您只需计算每个类的PX | Y*PY,然后选择产生最高概率的类

在你的情况下,我假设你必须有几个类。你提到了物理,但肯定还有化学或数学之类的

因此,您可以计算:

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)
PX是所有类别的PX | Y*PY之和:

P(X) = P(X|physics)*P(physics) + P(X|chemistry)*P(chemistry) + P(X|math)*P(math)
顺便说一下,上面的语句与您提供的图像中的示例完全类似。这里的方程有点复杂,但是如果你重新排列它们,你会发现在那个例子中PX=PX |正*正+PX |负*负

要得到答案,即在物理、化学或数学中确定Y,您可以在Pphysics | X、Pphysics | X和Pmath | X中选择最大值

正如我所提到的,你不需要计算PX,因为这一项存在于所有Pphysics | X、Pchemistry | X和Pmath | X的分母中。因此,你只需要确定PX | physics*Pphysics、PX | chemistry*Pchemistry和PX | math*Pmath之间的最大值