2013-03-27 2 views
5

У меня есть X как csr_matrix что я получил с помощью tfidf векторизатор scikit, и у которых является массивомКак инициализировать переменную gensim corpus с помощью csr_matrix?

Мой план заключается в создании функции с помощью LDA, однако, я не смог найти как инициализировать переменную мозолистое gensim с X как csr_matrix. Другими словами, я не хочу загружать корпус, как показано в документации gensim, и не конвертировать X в плотную матрицу, так как он будет потреблять много памяти и компьютер может зависать.

Короче говоря, мои вопросы заключаются в следующем,

  1. Как вы инициализировать gensim корпус, учитывая, что у меня есть csr_matrix (разреженный), представляющий весь корпус?
  2. Как вы используете LDA для извлечения функций?
+0

Можем ли мы также передать матрицу частот периода этому методу? – Shashank

ответ

7

Gensim имеет полу-хорошо скрытую функцию, которая может отчасти сделать это для вас:

http://radimrehurek.com/gensim/matutils.html#gensim.matutils.Sparse2Corpus

«класса gensim.matutils.Sparse2Corpus (разреженные, documents_columns = True) Преобразование матрица в формате scipy.sparse в потоковый gensim corpus. "

У меня был некоторый успех, используя корпус, извлеченный с помощью CountVectorizer, затем загруженный в gensim.

+0

Спасибо, миллион @Fred, работал как шарм! – Curious

Смежные вопросы