使用朴素贝叶斯模型获得良好结果所需的最小特征数量是多少?



我一直在读Naive Bayes比许多其他ML算法需要更少的特征。但是,使用朴素贝叶斯模型获得良好结果(90%的准确率(所需的最小特征数量是多少?我知道这个问题没有客观的答案——这取决于你的确切特征,尤其是你想学什么——但我正在寻找一个大致的数字答案。

我之所以这么问,是因为我有一个大约有280个特征的数据集,我想了解这是否太少了,无法与Naive Bayes一起使用。(我试着在我的数据集上运行Naive Bayes,虽然我得到了86%的准确率,但我不能相信这个数字,因为我的数据不平衡,我相信这可能是高准确率的原因。我目前正在努力解决这个问题。(

如果它是相关的:我正在研究的确切问题是为维基百科文章生成时间标签。很多时候,维基百科文章的信息框中都包含一个日期。然而,很多时候这个日期出现在文章的文本中,但信息框中没有。我想使用Naive Bayes来确定我们在文章文本中找到的所有日期中的哪个日期应该放在信息框中。每次我找到一个有日期的句子,我都会把它变成一个特征向量——列出我在哪个数字段中找到的,这个特定的日期在文章中出现了多少次,等等。我把自己限制在维基百科文章的一小部分——只是苹果的文章——结果,我只有280个左右的特征。知道这是否是足够的数据吗?

谢谢!

我知道这个问题没有客观的答案——这取决于你的确切功能以及你想要学习的东西——但我正在寻找一个数字上的大致答案。

嗯,你自己回答了这个问题,但你仍然希望有一个客观的答案;(

不可能有任何客观的答案(无论是否精确(,因为它取决于数据,即特征和类之间的关系。很容易找到简单问题的例子,其中只有几个特征就足以实现完美的性能,也很容易创建一个由数百万个随机特征组成的数据集,这些特征甚至不能达到平庸的性能。

良好结果(90%准确率(

关于性能的类似点:有些任务90%的准确率一般,有些任务60%的准确率很好,这取决于问题的难度(即在数据中找到有助于预测答案的模式有多容易(。

我之所以这么问,是因为我有一个大约有280个特征的数据集,我想了解这是否太少了,无法与Naive Bayes一起使用。

根据我之前的观察,绝对不会太少。但这也取决于有多少实例,特别是特征/实例的比例。如果实例太少,则模型将与NB严重过度拟合。

我的数据不平衡,我认为这可能是高精度的原因

良好的观察结果:准确性不是不平衡数据的适当评估指标。原因很简单:如果大多数类代表86%的实例,那么分类器可以用这个类标记所有实例,并获得86%的准确率,即使它没有任何用处。你应该使用精确性、回忆和F分数(基于少数类(。

最新更新