Как получить названия функций и оценки TFIDF для огромных списков? - PullRequest
0 голосов
/ 17 апреля 2020

Я хочу извлечь n-граммы и оценки TFIDF для документов, но мое Ядро дает сбой из-за огромного размера списка во время процесса "X_gram.todense (). Tolist ()". Матрица моего массива имеет следующую форму: (7940, 9931). Итак, чтобы получить характеристики и весовые коэффициенты для каждого документа, я обрабатываю плотный список, в который каждый документ загружает полный пакет слов из 9931 объектов, так что он генерирует списки с миллионами записей и cra sh мое ядро.

Мой код:

vectorizer_bigram = TfidfVectorizer(input='content', encoding='utf-8', decode_error='strict', strip_accents='unicode',
                            lowercase=True, preprocessor=None, tokenizer=None, analyzer='word', stop_words=None,
                            ngram_range=(2, 2), max_df=1.0, min_df=1, max_features=None,
                            vocabulary=None, binary=False, norm='l2', use_idf=True, smooth_idf=True, sublinear_tf=False)

X_bigram = vectorizer_bigram.fit_transform(raw_data)

feature_names_gram = vectorizer_gram.get_feature_names()
dense_gram = X_gram.todense().tolist()

После загрузки объектов и плотного списка у меня есть функция, которая присоединяется к справочному документу x функция x вес.

My здесь происходит сбой ядра ( dens_gram = X_gram.todense (). tolist () ). Я понимаю причину, но я не знаю другого способа получить характеристики и веса из результата TfidfVectorizer.

Не могли бы вы помочь?

Спасибо,

Рубенс

...