Алгоритм определения релевантности результатов поиска

Рейтинг: 0Ответов: 1Опубликовано: 01.04.2011

Довольно интересно, существует ли определенный мат. аппарат или теория для определения релевантности. Если нет, то какая существует аналитическая почва у алгоритма определения релевантности. Конечно, можно написать и свой примитивный алгоритм, но хочу разобраться с этой темой, так как известно, что нет смысла изобретать велосипед.

Ответы

▲ 2Принят

Существует. И достаточно много алгоритмов. Если делать простенький поиск, то можно (и, наверное, даже лучше, чтобы разобраться, как всё работает и т.д) вывести свою формулу, например: Сумма( 1/частота_появления_слова_в_тексте + 1/порядок_слова_в_запросе + 1/длина_слова ) для каждого слова в запросе. Также можно учитывать слова которые идут рядом.

Перед тем как применять формулы ревалентности, можно применить фильтр Стемминга для текстов перед индексацией и для запроса. Если нужно находить схожие статьи, можно применить Латентно-семантический анализ, применить сингулярное разложение и т.д. Всё зависит от того, что именно вам нужно.

А если это нужно для какого-то проекта, к которому нужен серьёзный подход - рекомендую применить уже готовые решения, например Sphinx или другие ...