MATLAB'的解释;s NaiveBayses';后';功能

MATLAB'的解释;s NaiveBayses';后';功能,matlab,probability,classification,Matlab,Probability,Classification,在我们创建了一个朴素的贝叶斯分类器对象nb(例如,具有多元多项式(mvmn)分布)之后,我们可以使用nb对象对测试数据调用后验函数。此函数有3个输出参数: [术后,cpre,logp]=后(nb,试验) 我了解如何计算post,其含义也是cpre是基于每个类别的最大后验概率的预测类别 问题是关于logp。很清楚它是如何计算的(测试中每个模式的PDF的对数),但我不理解这个度量的含义,以及它如何在Naive Bayes过程中使用。对此,我们非常感激 谢谢。您所指的logp是,这是衡量模型适合程度的

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

[术后,cpre,logp]=后(nb,试验)

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

问题是关于
logp
。很清楚它是如何计算的(测试中每个模式的PDF的对数),但我不理解这个度量的含义,以及它如何在Naive Bayes过程中使用。对此,我们非常感激


谢谢。

您所指的
logp
是,这是衡量模型适合程度的一种方法。我们使用日志概率来防止计算机在非常小的浮点数上下溢,这也是因为加法比乘法快

如果您使用不同的起点多次学习分类器,您将得到不同的结果,因为似然函数不是对数凹函数,这意味着您将陷入局部极大值。如果您根据原始数据计算后验概率,您将得到模型的概率。尽管可能性可以很好地衡量一组参数与另一组参数的匹配程度,但需要注意的是,您没有这样做

在您的例子中,您正在计算一些未观测(测试)数据的可能性,这让您了解所学习的分类器在数据上的拟合程度。如果您试图根据测试集学习此模型,您将根据最高测试可能性选择参数;然而,一般来说,当你这样做的时候,最好使用一个。你在这里做的是计算


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

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

如果您使用不同的起点多次学习分类器,您将得到不同的结果,因为似然函数不是对数凹函数,这意味着您将陷入局部极大值。如果您根据原始数据计算后验概率,您将得到模型的概率。尽管可能性可以很好地衡量一组参数与另一组参数的匹配程度,但需要注意的是,您没有这样做

在您的例子中,您正在计算一些未观测(测试)数据的可能性,这让您了解所学习的分类器在数据上的拟合程度。如果您试图根据测试集学习此模型,您将根据最高测试可能性选择参数;然而,一般来说,当你这样做的时候,最好使用一个。你在这里做的是计算


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

谢谢您的回答。由于每个测试点的PDF在[0,1]范围内,因此
logp
将在(-无穷大,0)范围内。据我所知,此度量值(logp)越高我们的拟合分类器更好地预测新模式。正确吗?根据所有后验概率的最大值选择预测类也是正确的吗?或者我们在这种情况下也使用日志?感谢
logp
如果你有这样的东西,它可以是正的。PDF只集成到1,它可以评估为更大的than 1.你在这里做的是计算。谢谢,链接非常有用。因此,简单地说,如果我们观察新的数据点
logp=x
,我们能从这个
x
值做出任何推断吗?或者我们只能说与其他点相比的一些相关信息吗?例如,如果x是大负值,接近零或大正值Ve你通常计算一整组数据的可能性,而不仅仅是一个点。对于一个点来说,这是毫无意义的,除非在混合模型中,你想计算哪种混合成分最有可能产生它。嗯……这实际上是最初的问题……Matlab文档解释:[POST,CPRE,LOGP]=后验(NB,TEST)返回LOGP,一个N×1%的向量,包含概率密度%函数(PDF)的对数估计值。LOGP(I)是点I的PDF的对数。点I的PDF%值是%%Prob(点I |类J)*Pr{class J}的和%%接管了所有课程。感谢您的回答。由于每个测试点的PDF在[0,1]范围内,因此
logp
将处于(-无穷大,0)。据我所知,此度量值(logp)越高我们的拟合分类器更好地预测新模式。正确吗?根据所有后验概率的最大值选择预测类也是正确的吗?或者我们在这种情况下也使用日志?感谢
logp
如果你有这样的东西,它可以是正的。PDF只集成到1,它可以评估为更大的than 1.你在这里做的是计算。谢谢,链接非常有用。因此,简单地说,如果我们观察新的数据点
logp=x
,我们能从这个
x
值做出任何推断吗?或者我们只能说与其他点相比的一些相关信息吗?例如,如果x是大负值,接近零或大正值你通常计算一个整体的可能性