Развитие поисковых систем породило различные подходы к обработке массива информации, необходимость находить в тексте искомые слова или словосочетания получила решение достаточно давно. Но есть существенный нюанс – лингвистические конструкции языка. Если данные поискового запроса неточны, не соблюден падеж, число или прочие параметры, нужно применять вариативную поисковую схему, допускающую изменения ключевых слов. Такой системой и является морфологический поиск.
Механика морфологического поиска
В самом примитивном варианте, такой поиск производится произвольным роботом, который сопряжен с базой данных словоформ (интеллектуальная система Яндекс является подходящим примером). Но просто выдать список вариаций недостаточно. Как следствие, современные поисковики оборудованы дополнительными возможностями, дополняющими базовые принципы морфологического анализа. Среди них:
- обработка данных и вычленение так называемых стоп-слов, компонентов запроса, не несущих смысловой нагрузки (предлоги и короткие слова);
- сортировка результатов с учетом их релевантности.
Выбор подхода зависит от мощностей и требований
Для достижения оптимального результата выведены два основных алгоритма морфологического поиска. Первый подразумевает применение словарей. Он возник первым и является наиболее точным. Однако у него есть существенный недостаток – высокая нагрузка на сервер, так как объемы словарей могут достигать десятков мегабайт.
Второй поход подкупает экономичностью в ущерб точности поиска. Использование лемматизаторов – своеобразных инструкций по словообразованию через суффиксы и окончания (леммы) – подойдет для небольших доменов, в которых поиск не является ключевой задачей. Отсутствие громоздких словарей позволит стабильно функционировать даже маломощной серверной группе.
Оптимизация ресурсов с помощью индексации
Для того, чтобы поиск прошел быстрее и эффективнее, используются методы индексации, позволяющие проскакивать теги и атрибуты массива. Робот, оснащенный морфологическим поиском с описанными дополнениями, имеет все свойства интеллектуальной поисковой системы (ИПС).