NLTK 和 scikit-learn 中的伯努利朴素贝叶斯结果不同
Posted
技术标签:
【中文标题】NLTK 和 scikit-learn 中的伯努利朴素贝叶斯结果不同【英文标题】:Different results between the Bernoulli Naive Bayes in NLTK and in scikit-learn 【发布时间】:2013-03-21 21:32:10 【问题描述】:在使用 NLTK 中的伯努利朴素贝叶斯算法和 scikit-learn 模块中的算法对文本(仅分为两类)进行分类时,我得到了完全不同的结果。尽管两者之间的总体准确度相当(尽管远非相同),但 I 型和 II 型错误的差异是显着的。特别是,NLTK 朴素贝叶斯分类器给出的 I 类错误多于 II 类错误,而 scikit-learn 则相反。这种“异常”似乎在不同的特征和不同的训练样本中是一致的。是否有一个原因 ?两者哪个更值得信赖?
【问题讨论】:
【参考方案1】:NLTK 没有实现伯努利朴素贝叶斯。它实现多项朴素贝叶斯,但只允许二元特征。
【讨论】:
以上是关于NLTK 和 scikit-learn 中的伯努利朴素贝叶斯结果不同的主要内容,如果未能解决你的问题,请参考以下文章
Python机器学习之垃圾短信分类(用朴素贝叶斯算法的伯努利模型和多项式模型分类垃圾短信数据集SMSSpamCollection.txt)