Здравствуйте. Все наверное слышали, что в своё время в Гугле придумали PageRank и надеюсь многие знают как он считается. Даются объекты (страницы) и однонаправленные связи между ними (ссылки). И можно посчитать, какие страницы имеют наибольший ранк (вероятность, что кто-то зайдёт на эту страницу при случайном кликанье по ссылкам).
Но была проблема. Страницы про собачек сортировались бы лучше, если на них влияли бы только другие страницы про собачек. Гуглы в поиске решают эту проблему так: они создают сотню тематик (автомобили, рецепты, недвига и т.д.). Для каждой тематики считают свой PageRank, сливая не распределившийся ранк с висячих объектов на объекты этой тематики. При поиске считают близость поискового запроса к каждой тематике и при сортировке выдачи используют сумму произведений каждого тематического PageRank-a на коффициент близости. Чем ближе запрос к какой-то тематики, тем сильнее её PageRank повысит страницу в выдачи. Вопрос 1: как они создают тематики (чем вообще они описываются), как делят страницы на тематические группы и как определяют близость поискового запроса к каждой тематике? Вопрос 2: как ещё можно решить проблему? Более точным видится вариант, когда PageRank считается для каждого запроса среди найденных страниц. Но по ресурсоёмкости он совсем плох, хотя может Гугл так и делает для популярных запросов... -- С уважением, Михаил mailto:[email protected] -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
