Добавить стоп-слова в Gensim - PullRequest
0 голосов
/ 19 марта 2019

Спасибо, что заглянули!У меня был быстрый вопрос о добавлении стоп-слов.У меня есть несколько выбранных слов, которые отображаются в моем наборе данных, и я прыгал, я мог бы добавить их в список стоп-слов gensims.Я видел много примеров использования nltk, и я надеялся, что в gensim будет способ сделать то же самое.Я выложу свой код ниже:

def preprocess(text):
    result = []
    for token in gensim.utils.simple_preprocess(text):
        if token not in gensim.parsing.preprocessing.STOPWORDS and len(token) > 3:
            nltk.bigrams(token)
            result.append(lemmatize_stemming(token))
    return result

Ответы [ 2 ]

1 голос
/ 19 марта 2019

Хотя gensim.parsing.preprocessing.STOPWORDS предопределено для вашего удобства и может быть frozenset, поэтому его нельзя добавить напрямую, вы можете легко создать больший набор, который включает в себя как эти слова, так и ваши дополнения. Например:

from gensim.parsing.preprocessing import STOPWORDS
my_stop_words = STOPWORDS.union(set(['mystopword1', 'mystopword2']))

Затем используйте новый, больший my_stop_words в вашем последующем коде удаления стоп-слова. (Функция simple_preprocess() gensim не удаляет автоматически стоп-слова.)

0 голосов
/ 20 марта 2019

def preprocess(text):
    result = []
    for token in gensim.utils.simple_preprocess(text):
        newStopWords = ['stopword1','stopword2']
        if token not in gensim.parsing.preprocessing.STOPWORDS and token not in newStopWords and len(token) > 3:
            nltk.bigrams(token)
            result.append(lemmatize_stemming(token))
    return result
...