Я видел несколько сайтов, которые список связанных запросы при выполнении поиска, а именно они предлагают другие поисковые запросы, которые могут быть заинтересованы в.способов сделать «связанные поиски» функциональность
Я задаюсь лучшим способ моделировать это на сайте среднего размера (недостаточно трафика, чтобы полагаться на статистику посетителей, чтобы вывести отношения). Моя первоначальная мысль состоит в том, чтобы хранить 10 лучших результатов для каждого уникального запроса, а затем, когда выполняется новый поиск, чтобы найти все исторические поиски, которые соответствуют некоторым результатам из 10 лучших результатов, но в идеале не соответствуют всем им (сопоставление всех из них может предложить эквивалентный поиск и, следовательно, не тот полезный, как предложение).
Я предполагаю, что некоторые люди уже сделали эту функциональность и могут предоставить некоторые идеи о различных способах этого. Я не обязательно ищу одну выигрышную идею, так как решение, несомненно, будет существенно изменяться в зависимости от размера и характера сайта.
Это очень похоже на первые шаги пары LSI (http://en.wikipedia.org/wiki/Latent_semantic_indexing), похоже, что это, вероятно, сработает довольно хорошо. (см. следующий комментарий, из космоса) – rcreswick 2008-09-24 00:15:22