Какой программой или сервисом сравнения слов и словосочетаний можно воспользоваться для сравнения большого объема данных?

Есть база данных в экселе с правильными названиями книг их 100 000 и вторая база данных с запросами пользователей которые ищут эти книги, но не всегда правильно их называя, в том числе с грамматическими ошибками. Какой программой или сервисом воспользоваться, для того чтобы сравнить эти две таблицы и найти наиболее близкие названия к правильным?
  • Вопрос задан
  • 2683 просмотра
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Написать алгоритм нечеткого поиска самому или использовать существующие.

Попробуйте составить хеши так:
Пример: Познавательное
Hash: онаепзвтль:14
[по-порядку максимально часто встречающийся символ][и т.д. из оставшихся]:[общее кол-во символов]

Ввод: познаватильное
hash: онапзвтилье:14
При несовпадении - отодвигаете влево на 1 символ на каждой итерации:
1. онаепзвтль:14 == онапзвтилье:14 - не найдено
2. онаепзвтль == онапзвтилье - не найдено
3. онаепзвтл == онапзвтиль- не найдено
....
N. она == она - НАЙДЕНО (кроме этого может быть еще что-то найдено).
Смотрим из результатов самые близкие по кол-ву символов. В примере: к 14-и.
Выводим первые N-совпадений... Например, первые 5 похожих...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
yttrium
@yttrium
Ответ написан
Комментировать
отказаться от таблиц и выводить подсказки по близким названиям / тематике и т.п.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы