我正在尝试为我的原始数据实现Scikit和NLTK的内置朴素贝叶斯分类器。我拥有的数据是设置制表符分隔的行,每个行都有一些标签,段落和一些其他属性。
我有兴趣对段落进行分类。
我需要将此数据转换为适合Scikit / NLTK内置分类器的格式。
我想为所有段落实现Gaussian,Bernoulli和Multinomial Naive Bayes。
问题1:
对于scikit,example给定导入虹膜数据。我检查了虹膜数据,它有来自数据集的预先计算的值。如何将我的数据转换为这种格式并直接调用高斯函数?这样做有什么标准方法吗?
问题2:
对于NLTK,
应该为NaiveBayesClassifier.classify函数输入什么?它是用布尔值dict?如何制成多项式或高斯型?
答案 0 :(得分:1)
@问题2:
nltk.NaiveBayesClassifier.classify期望一个所谓的'featureset'。特征集是一个字典,其特征名称为键,特征值为值,例如, {'word1':True, 'word2':True, 'word3':False}
。 Nltks的朴素贝叶斯分类器不能用作多项式方法。但是,您可以安装scikit learn并使用nltk.classify.scikitlearn包装器模块来部署scikit的多项分类器。