【问题标题】:Naive Bayes Confusion;朴素贝叶斯混淆;
【发布时间】:2017-02-09 11:26:13
【问题描述】:

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

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

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

P(physics|c) = P(physics) * P(carbon|physics) * p(atom|physics) * p(life|physics) * p(earth|physics) / [SOMETHING]

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

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

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

【问题讨论】:

    标签: machine-learning naivebayes


    【解决方案1】:

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

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

    在你的情况下,我假设你必须有几个类。你提到了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) 是所有类的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),您将在P(physics|X)P(chemistry|X)P(math|X) 中选择最大值.

    正如我所提到的,您确实不需要计算P(X),因为该术语存在于所有P(physics|X)P(chemistry|X)P(math|X) 的分母中。因此,您只需确定P(X|physics)*P(physics)P(X|chemistry)*P(chemistry)P(X|math)*P(math) 中的最大值。

    【讨论】:

      【解决方案2】:

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

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

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

      【讨论】:

        猜你喜欢
        • 2012-02-21
        • 2011-12-28
        • 2020-06-23
        • 2018-04-25
        • 2013-09-09
        • 2015-01-03
        • 2018-02-14
        • 2015-08-27
        • 2012-04-09
        相关资源
        最近更新 更多