как изменить значение по умолчанию number_words в LDA - PullRequest
0 голосов
/ 19 сентября 2018

Я могу извлечь темы из модели LDA, используя gensim.когда я печатаю темы, это показывает темы с 10 количеством слов по умолчанию.Я хочу показать 15 слов в одной теме. Я пытался изменить это, но все же я получаю 10 слов в теме. Как я могу изменить это поведение по умолчанию?

вот код:

for n, topic in model.show_topics(num_topics=-1, num_words=15,formatted=False):
                topic = [word for word, _ in topic]
                cm = CoherenceModel(topics=[topic], texts=documents, dictionary=dictionary, window_size=10)
                coherence_values[n] = cm.get_coherence()
            top_topics = sorted(coherence_values.items(), key=operator.itemgetter(1), reverse=True)
            result.append((model, top_topics))

и для печати тем:

pprint([lm.show_topic(topicid) for topicid, c_v in top_topics[:8]])

1 Ответ

0 голосов
/ 19 сентября 2018

Я думаю, что проблема в функции show_topic.Вы находите больше слов для темы, но не отображаете их, так как show_topic имеет необязательную переменную topn для извлечения наиболее значимых слов.По умолчанию установлено значение 10, поэтому измените код в операторе печати на

pprint([lm.show_topic(topicid, topn=15) for topicid, c_v in top_topics[:8]])

, и он должен отобразить их все.

...