Что такое "хорошее" значение для согласованности тем LSI?
Я использую библиотеку Gensim Python для работы с небольшими корпусами (около 1500 статей в прессе каждый раз). Допустим, я заинтересован в создании групп статей, связанных с теми же новостями.
Таким образом, для каждого набора статей, которые я разбил на токены, обнаружил коллокации, остановил и затем снабдил небольшим словарем (около 20 000 токенов), который я прошел через модель TFIDF.
Наконец, я использовал корпус TFIDF для построения модели корпуса LSI, и с помощью функций подобия документа gensim я смог получить очень хорошие результаты.
Но мне было любопытно, и я проверил согласованность LSI с:
lsi_topics = [[word for word, prob in topic] for topicid, topic in
lsi.show_topics(formatted=False)]
lsi_coherence = CoherenceModel(topics=lsi_topics[:10], texts=corpus, dictionary=dictionary, window_size=10).get_coherence()
logger.info("lsi coherence: %.3f" % lsi_coherence)
И я всегда получаю значения около 0,45, которые могут показаться довольно слабыми.
Поэтому мне было интересно, как интерпретировать это значение согласованности? И имеет ли это значение смысл, когда вам нужно только сходство документов в индексе с самим индексом (поэтому запросы представляют собой полный документ из корпуса)?
Редактировать: я пробовал разные вещи для предварительной обработки текста, такие как разбиение каждого документа в реальных предложениях перед подачей в класс фраз, генерация биграмм, триграмм или удаление акцентов или нет, и в некоторых случаях мне удавалось получить значение когерентности около 0,55, так что по крайней мере я думаю, это поможет найти наиболее эффективный способ обработки необработанных данных...