AloneCoder
@AloneCoder
[object Object]

Помогите с алгоритмом по сравнению предложений

Коллеги, обращаюсь к вам за помощью. Имеем несколько тысяч предложений, среди них необходимо сгруппировать схожие по семантике. Как я вижу это сейчас: я разбиваю все предложения на слова, убираю служебные части речи, стемматизирую их и нахожу для каждого ключ soundex. Далее по этим кодам как-то нужно найти наиболее схожие предложения. Именно с последним этапом у меня сложности. Голова кипит. Буду рад подсказке куда копать дальше или другим идеям для реализации этого
  • Вопрос задан
  • 3519 просмотров
Пригласить эксперта
Ответы на вопрос 4
DemiurgeOrion
@DemiurgeOrion
Хм, я не специалист, но возможно вам поможет поиск нечетких дубликатов текстов?
habrahabr.ru/post/65944/
Ответ написан
AterCattus
@AterCattus
Люблю быстрый backend
Не подскажу с советом, но отвечающим наверняка было бы полезно знать на каком языке исходные предложения. И что насчет возможных синонимов.
Ответ написан
Комментировать
@Urevic
То, что вы хотите называется кластеризацией. Есть много разных статей про методы кластеризации — погуглите. Я как-то делал нечто похожее на основе байесовской теоремы, но для этого надо вручную выделить категории документов и обучить фильтр на какой-то выборке — работало неплохо.

В использовании soundex что-то я особого смысла не вижу, вы же не слова похожие ищите, а тексты. Можно считать crc32 от слов — точность не сильно снижает, а расчеты ускоряются очень хорошо.
Ответ написан
sergeypid
@sergeypid
Попробуйте просто k-means кластеризацию по вашим ключам. Только надо задать априори количество классов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 19:40
5000 руб./за проект
24 апр. 2024, в 19:18
50000 руб./за проект
24 апр. 2024, в 19:05
15000 руб./за проект