如果我有一个训练数据集并在其上训练一个朴素贝叶斯分类器,并且我有一个概率为零的属性值。如果我以后想预测新数据的分类,我该如何处理?问题是,如果计算中的值为零,则无论我得到多少其他值可能会找到另一个解决方案,整个乘积都会变为零。
例子:
整个产品变成 因为在训练数据中,属性 TimeZone US 在我们的小型训练数据集中始终为 Yes。我该如何处理?我应该使用更大的训练数据集还是有另一种可能性来克服这个问题?
如果我有一个训练数据集并在其上训练一个朴素贝叶斯分类器,并且我有一个概率为零的属性值。如果我以后想预测新数据的分类,我该如何处理?问题是,如果计算中的值为零,则无论我得到多少其他值可能会找到另一个解决方案,整个乘积都会变为零。
例子:
整个产品变成 因为在训练数据中,属性 TimeZone US 在我们的小型训练数据集中始终为 Yes。我该如何处理?我应该使用更大的训练数据集还是有另一种可能性来克服这个问题?
在贝叶斯设置中克服这种“零频率问题”的一种方法是,当属性值不与每个类值一起出现时,为每个属性值-类组合的计数加一。因此,例如,假设您的训练数据如下所示:
然后,当您使用它来计算概率时,应该为该表中的每个值添加一个: