Визуализация PyLDAvis не соответствует сгенерированным темам

Я использую PyLDAvis для визуализации результатов LDA от Mallet.

Прежде чем я смогу это сделать, мне нужна оболочка библиотеки gensim:

model = gensim.models.wrappers.ldamallet.malletmodel2ldamodel(model_list[8])

Когда я печатаю найденные темы, они упорядочены от 0 до 10.

Однако, когда я использую pyLDAvis для визуализации тем, порядок тем (0-10) не совпадает с печатными темами.

Пример:

(5,
  '0.042*"euro" + 0.030*"smartpho" + 0.022*"camera" + 0.020*"display" + '
  '0.018*"model" + 0.016*"picture" + 0.012*"price" + 0.010*"android"')

Как видите, эта тема посвящена смартфонам.

Однако, когда я визуализирую модель с помощью pyLDAvis, тема 5 касается не смартфонов, а другой темы (например, автомобилей). Тема смартфона уже не 5, а тема 1.

Пример1:

введите здесь описание изображения

Пример 2: введите здесь описание изображения

Это известная ошибка или это норма? Кто-нибудь может помочь?


person gython    schedule 13.12.2019    source источник


Ответы (1)


По умолчанию pyLDAvis сортирует темы по соотношению тем. Чтобы сохранить исходный порядок сортировки, передайте sort_topics=False в pyLDAvis.prepare(). Обратите внимание, что темы pyLDAvis по-прежнему будут отличаться на единицу (т. е. тема 1 в pyLDAvis будет темой 0 из gensim).

Здесь есть аналогичный вопрос: graph">Есть ли способ сопоставить выходные данные Gensim LDA с темами в графике pyLDAvis?

И связанная с этим проблема в репозитории pyLDAvis: https://github.com/bmabey/pyLDAvis/issues. /127

person ZechyW    schedule 06.06.2020