如何为scikit和NLTK使用不同的数据集?

时间:2015-03-16 21:02:56

标签: machine-learning nlp scikit-learn nltk

我正在尝试为我的原始数据实现Scikit和NLTK的内置朴素贝叶斯分类器。我拥有的数据是设置制表符分隔的行,每个行都有一些标签,段落和一些其他属性。 我有兴趣对段落进行分类。 我需要将此数据转换为适合Scikit / NLTK内置分类器的格式。 我想为所有段落实现Gaussian,Bernoulli和Multinomial Naive Bayes。

问题1: 对于scikit,example给定导入虹膜数据。我检查了虹膜数据,它有来自数据集的预先计算的值。如何将我的数据转换为这种格式并直接调用高斯函数?这样做有什么标准方法吗?
问题2: 对于NLTK, 应该为NaiveBayesClassifier.classify函数输入什么?它是用布尔值dict?如何制成多项式或高斯型?

1 个答案:

答案 0 :(得分:1)

@问题2:

nltk.NaiveBayesClassifier.classify期望一个所谓的'featureset'。特征集是一个字典,其特征名称为键,特征值为值,例如, {'word1':True, 'word2':True, 'word3':False}。 Nltks的朴素贝叶斯分类器不能用作多项式方法。但是,您可以安装scikit learn并使用nltk.classify.scikitlearn包装器模块来部署scikit的多项分类器。