Можно ли использовать CountVectorizer для определения наличия набора слов в корпусе независимо от порядка?
Он может делать упорядоченные фразы: Как я могу использовать sklearn CountVectorizer с mutliple строки?
Тем не менее, в моем случае набор слов не попадает рядом с каждым, поэтому токенизация всей фразы, а затем попытка найти в каком-то текстовом документе приведет к нулевым находкам.
Я мечтаю, чтобы произошло следующее:
import numpy as np
from sklearn import feature_extraction
sentences = [ "The only cool Washington is DC",
"A cool city in Washington is Seattle",
"Moses Lake is the dirtiest water in Washington" ]
listOfStrings = ["Washington DC",
"Washington Seattle",
"Washington cool"]
vectorizer = CountVectorizer(vocabulary=listOfStrings)
bagowords = np.matrix(vectorizer.fit_transform(sentences).todense())
bagowords
matrix([[1, 0, 1],
[0, 1, 1],
[0, 0, 0],])
Фактическая проблема влечет за собой большее количество промежуточных слов, и поэтому удаление стоп-слов здесь не будет правильным решением. Любой совет будет потрясающим!