【发布时间】:2015-08-14 05:25:40
【问题描述】:
所以我想在一些文档上训练一个朴素贝叶斯算法,如果我有字符串形式的文档,下面的代码就可以正常运行。但问题是我的字符串经历了一系列预处理步骤,这些步骤比停用词删除、词形还原等更多,而是有一些自定义转换返回一个 ngram 列表,其中 n 可以 [1,2,3] 取决于关于文本的上下文。 所以现在因为我有 ngram 列表而不是代表文档的字符串,所以我很困惑如何表示与 CountVectorizer 的输入相同。 有什么建议吗?
可以将文档作为字符串类型的文档数组正常工作的代码。
count_vectorizer = CountVectorizer(binary='true')
data = count_vectorizer.fit_transform(docs)
tfidf_data = TfidfTransformer(use_idf=False).fit_transform(data)
classifier = BernoulliNB().fit(tfidf_data,op)
【问题讨论】:
标签: python machine-learning nlp scikit-learn