LINUX.ORG.RU

Подсветка терминов из глоссария в тексте

 , , глоссарий, поиск терминов, стеммер


0

2

Есть глоссарий примерно на 500к терминов. Термины могут состоять из нескольких слов, при этом количество слов может быть любым. Есть текст, в котором нужно подсветить (найти) термины. Сейчас сделано в лоб, по тупому: текст разбивается на фрагменты по одному->несколько слов (1-2-3-N). Комбинаций получается очень много. Далее, эти комбинации потенциальных терминов скармливаются пакетно сфинксу. Нашлось что-то - значит термин, подсвечиваем.

Одна из проблем в том, что поиск терминов нужно осуществлять с учетом морфологии, да и fuzzy matching приветствуется. Поэтому на первое время я взял без заморочек сфинкс.

Сейчас есть желание пройтись по глоссарию стеммером и для каждого термина сделать индекс в БД. Дальше пройтись тем же стеммером по тексту и выбрать из базы только те термины, леммы из которых встречаются в тексте. Ну а дальше уже выполнить поиск найденных терминов по тексту, которых уже будет значительно меньше.

Вопрос вот в чем: изобретаю ли я велосипед? Будет ли от этого толк? Какие готовые решения есть?



Последнее исправление: division_hell (всего исправлений: 1)

была подобная задача. Долго думал как сделать, потом посмотрел исходники ispell )

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.