1

在我们创建了一个朴素贝叶斯分类器对象nb(例如,具有多元多项式 ( mvmn) 分布)之后,我们可以使用对象调用posterior测试数据的函数。nb该函数有 3 个输出参数:

[post,cpre,logp] = 后验(nb,test)

我了解如何post计算及其含义,也是cpre基于每个类的最大后验概率的预测类。

问题是关于logp。很清楚它是如何计算的(测试中每个模式的 PDF 的对数),但我不明白这个度量的含义以及如何在朴素贝叶斯程序的上下文中使用它。非常感谢您对此的任何了解。

谢谢。

4

1 回答 1

1

logp您指的是对数似然性,这是衡量模型拟合程度的一种方法。我们使用对数概率来防止计算机在非常小的浮点数上下溢,而且还因为加法比乘法快。

如果你用不同的起点多次学习分类器,你会得到不同的结果,因为似然函数不是对数凹的,这意味着你会陷入局部最大值。如果你计算原始后验的可能性数据你会得到模型的可能性。尽管可能性可以很好地衡量一组参数与另一组参数的拟合程度,但您需要注意不要过度拟合

在您的情况下,您正在计算一些未观察到的(测试)数据的可能性,这让您了解您学习的分类器对数据的拟合程度。如果您尝试基于测试集学习此模型,您将根据最高测试似然度选择参数;但是一般来说,当您这样做时,最好使用验证集。你在这里做的是计算预测可能性

计算对数似然不限于朴素贝叶斯分类器,实际上可以为任何贝叶斯模型(高斯混合、潜在狄利克雷分配等)计算。

于 2013-03-22T18:59:22.297 回答