朴素贝叶斯分类器,解释模型拟合和预测算法

时间:2013-09-09 16:29:39

标签: algorithm machine-learning

我有以下两个方程式,它们与朴素贝叶斯分类器的模型拟合和预测算法有关。

  • 我试图了解算法3.2的第6行正在做什么。我认为它试图通过执行log-sum-exp技巧使数字“更好”,我仍然不完全理解。有人可以概述为什么需要这样做吗?具体而言,

    logsumexp(Li,:)
    的含义/是/读取的是什么?

  • 也有人能给我一个很好的概念,即算法3.1第8行的两个值是什么?它们基本上是算法3.2中Lic的初始偏移/偏差吗?

enter image description here enter image description here

从机器学习概率预期作者Kevin P. Murphy

1 个答案:

答案 0 :(得分:1)

请参阅下文。如果您想了解更多关于数学的详细信息,最好不要在cross-validated上发帖。

  

有人可以概述为什么需要完成log-sum-exp技巧吗?

这是为了数值稳定性。如果您搜索“logsumexp”,您将看到几个有用的解释。例如,https://hips.seas.harvard.edu/blog/2013/01/09/computing-log-sum-explog-sum-exp trick why not recursive。从本质上讲,该过程避免了数字太大/太小时可能出现的数字错误。

  

具体是什么参数L i,:读为

i表示取i th 行,:表示从该行取所有值。因此,总的来说,L i,:表示L的i th 行。Matlab中使用冒号:(及其开源下标矢量或矩阵时,导数Octave)表示“所有指数”。

  

有人能给我一个关于算法3.1第8行中两个值是什么的好概念吗?

enter image description here

这是C类在训练样例中出现的频率。

enter image description here

添加帽子表示此频率将用作C类人群整体出现概率的估计值。就朴素贝叶斯而言,我们可以将这些概率视为 priors

同样......

enter image description here

当您将注意力限制在C类时,出现j th 特征概率的估计。这些是条件概率:P(j | c)=在给定类时看到特征j的概率c - 和Naive Bayes中的 Naive 意味着我们假设它们是独立的。


注意:为了清晰/方便展示,您的问题中的引号已经过一些修改。


编辑以回复您的评论

  • L i,:是向量
  • N是训练样例
  • D是数据的维度,即要素的数字(每个要素都是矩阵x中的一列,其行是训练示例)。< / LI>
  • 什么是L i,:?每个L i,c 看起来像是以下日志:c类的先验乘以所有P(i | c)的乘积,即看到特征的条件概率的乘积,例如我给出的类C。请注意,向量L i,中只有两个条目,每个类一个(它的二进制分类,所以只有两个类)。

使用贝叶斯定理,L i,:的条目可以被解释为训练示例i的相对条件概率的日志在给定特征的情况下i(实际上它们不是相对概率,因为它们每个都需要被相同的常数除,但我们可以放心地忽略它。)

我不确定算法3.2的第6行。如果您需要做的就是找出您的训练示例所属的类,那么对我来说,省略第6行似乎就足够了,第7行使用argmax c L ic 。也许作者包括第6行,因为p ic 有特定的解释?