260 likes | 669 Views
Навигационные запросы. от простого к сложному и обратно. Михаил Долинин. Что такое навигационный запрос. Навигационный запрос – запрос, целью которого является точно определенный сайт или часть сайта. форум велосипедистов – не навигация велофорум ру – навигация
E N D
Навигационные запросы от простого к сложному и обратно Михаил Долинин
Что такое навигационный запрос • Навигационный запрос –запрос, целью которого является точно определенный сайт или часть сайта. форум велосипедистов – не навигация велофорумру– навигация • Целью поиска следует считать сам объект в Интернете, а не его содержимое • собственный контент страницы малозначим
Почему навигация - это просто • Просто классифицировать запрос • навигационные запросы короткие • и потому менее разнообразные • имеют чёткие маркеры (сайт, блог, форум) • Просто оценить результат • либо да, либо нет • не бывает «слаборелевантных» результатов • Предсказуемое поведение пользователя • если искомое найдено
Почему навигация - это важно • Примерно 20-30% потока запросов – навигация • Почти весь топ запросов – навигация • исключения: «порно», «игры», «окна» • Крайне важна для пользователей • Многие используют поиск как адресную строку • Поиск как «вход в интернет» • Правильный результат единственен и незаменим
Ручной список, топ-120 вконтакте одноклассники яндекс google ютуб майл авито фейсбук зайцев нет гисметео рамблер авто ру натрибу omgwtf … vk.com odnoklassniki.ru yandex.ru google.com youtube.com mail.ru avito.ru facebook.com zaycev.net gismeteo.ru rambler.ru auto.ru natribu.org Gtfo … • Благодаря перекосу распределения навигов в сторону топа • вконтакте + одноклассники~20-25% всей навигации • полнота такого списка ~60%. • нормально для каталога, но мало для поиска
Как мы считаем полнотуи точность • Cлучайная выборка из лога • Размечаем вручную vs прогоняем через классификатор • Qmanual– количество ручных навигов // relevant entries • Qauto– количество автонавигов // retrieved entries • Qgotcha! – из них совпавших с ручными // relevant retrievedentries Qgotcha! Qgotcha! Recall = Precision = Qmanual Qauto
Цель – полнота без потери точности • Точность топ-120 – 100% • Как продолжать список автоматически? • опасность в «почти релевантных» результатах - как правило, дорвей или сателлит • Как отличить «вконтакте» от «порно»? • анализируя поведение пользователей
Анализ пользовательского поведения • Навигационные запросы характерны малым разбросом кликов • т.е. все пользователи склонны кликать в один и тот же результат • однако этим же свойством обладают высокорелевантные ненавигационные результаты • но они, как правило, ведут внутрь сайта • самый типичный пример: почти что-угодновикипедия
Метрика на основе поведения • Группируем все клики по каждому запросу • Считаем клики для каждого результата – Ci • Навигационность пары запрос – результат: • При N> Nmin считаем запрос навигационным • Nmin=0.9, или даже 0.99 log Ci N = log ΣC
Свойства метрики • Pros: • для запроса либо нет навигационного урла, либо он единственен • одно и то же значение порога Nmin для редких и для частотных запросов • Cons: • необходима запросная статистика • результат должен быть найден и показан • не работает с геозависимой навигацией • высокорелевантные ненавигационные результаты проходят порог
А если поведенческих данных нет, то используем то, что есть: • Индекс • Текст документа • Ссылки и заголовки • URL документов • Cтруктура, сравнение с запросом • Запрос • Регионпользователя • Маркеры • Организации (ооо, зао, министерство, университет…) • Веб (сайт, блог, форум, твиттер) • Антимаркеры • купить, скачать, смотреть
+ ML • Строим и балансируем обучающие выборки • Обучаемся • наивный Байес для анализа запроса • деревья решений для всего остального • Получаем значительный рост полноты • и новый ворох проблем
Пример полученных данных (hh.ru) • HH; HH МОСКВА; HH RU РАБОТА В МОСКВЕ; ХЕДХАНТЕР; HH RU РАБОТА; HH RU ВАКАНСИИ В МОСКВЕ; HEADHUNTER; HEADHUNTER РАБОТА; ХХ; ХАНТЕР; ХЭДХАНТЕР; HH RU В МОСКВЕ; HH РАБОТА; ХХ РУ; WWW HH; ХЕНД ХАНТЕР; HH RU КАЗАНЬ; ХЕДХАНТЕР РАБОТА; WWW HH RU ВАКАНСИИ МОСКВА; HH RU МОСКВА; ХЭД ХАНТЕР RU; HH RU ВАКАНСИИ В СПБ; HH KZ; HH RU ВАКАНСИИ; ХЭД ХАНТЕР; ХЭД ХАНТЕР ПОИСК РАБОТЫ; HEADHANTER; РАБОТА HH; ХЭНД ХАНТЕР; H H RU; H H; ХАНТЕР ПОИСК РАБОТЫ; HANTER ПОИСК РАБОТЫ; HAD HUNTER; ХЕДХАНТЕР;ПОИСК РАБОТЫ; ХЕД ХАНТЕР; ХИТ ХАНТЕР; ХЕДХАНТЕР МОСКВА; HANDHANTER; ХЕТХАНТЕР; WWW HH RU В МОСКВЕ; HEDHANTER; HEAD HUNTER; ХЭДХАНТЕР РУ; ПОИСК HH; ХЕТ ХАНТЕР РУ; H H RU РАБОТА; ХЕАДХАНТЕР; ХЕДХАНТЕР РУ; ХЭД; HEAD HANTER; ХЕД; WWW HH RU ПОИСК ВАКАНСИЙ; РАБОТА HH МОСКВА; ХХ RU; ХЕАД ХАНТЕР; ХЕНДХАНДЕР; РАБОТА НА HH RU; РАБОТА ХЕДХАНТЕР; HATHANTER; ХЕНД ХАНТЕР МОСКВА; HH RU НИЖНИЙ НОВГОРОД; РАБОТА В МОСКВЕ HH RU; РАБОТА HH RU; НЕД ХАНТЕР; WW HH RU; WWW HEADHUNTER; HH РУ; HH РУ МОСКВА; HH HEADHUNTER; NOREPLY HH RU; HH HUNTER; THEADHUNTER; TL FYNTH; ХЕДХАНТЕР RU; WWW HH RU В МОСКВЕ РЕЗЮМЕ ДОЛЖНОСТЬ ГЛЮЭНЕРГЕТИК; HH RU РАБОТА В МОСКВЕ ВОДИТЕЛЬ; РАБОТА НА HH; САЙТ ХЕДХАНТЕР; НЕНД ХАНТЕР; РАБОТА В МОСКВЕ HH; WWW HH RU МОСКВА; ХИД ХАНТЕР; РР КГ; ХИТХАНТЕР; INFO SITE HH RU; HH RU ВАКАНСИИ МОСКВА; ХЭДХАНТЕР МОСКВА; WWW HH RU ВАКАНСИИ В МОСКВЕ; ВАКАНСИИ HH; NO REPLY HH RU; ХЭНДХАНТЕР; HUNTER ПОИСК РАБОТЫ; МОЕ РЕЗЮМЕ НА HH RU; РР РУ; ХХ РУ ВАКАНСИИ; ПОИСК HEADHUNTER; ХХ РУ РАБОТА; ПОИСК РАБОТЫ В МОСКВЕ HH; HTTP HH RU APPLICANT RESUMES; HED HANTER; WWWW HH RU; САЙТ HH; HEAND HUNTER; HH RU РАБОТА МОСКВА; HH RU МОСКВА ВАКАНСИИ; HED HUNTER; HANT HUNTER; ХЭДХ; HEADHUNTER NOREPLY HH RU … Всё ок, но отсутствует РАБОТА ХЕДХАНТЕР «омоним» опечатка мусор
Новые проблемы при росте базы • Омонимичность • несколько сайтов для одного запроса • Фрагментарность • не ловим малопопулярные разделы сайтов • неуверенная региональность • Мусор • опечатки • запросы на грани навигации • случайные аккаунтысоцсетей, блоги/твиттеры • динамические страницы сайтов (поиски, темы на форумах)
Решение проблем: запрос «изнутри» авито купить собаку в самаре Шум Корень сайта Регион Характерное слово Внутрисайтовый путь http://www.avito.ru/samara/sobaki
авито купить собаку в самаре • Наблюдения: • Запросы имеют повторяющиеся общие фрагменты • Смысл запроса не зависит от порядка слов в нём • Некоторые слова («купить») не меняют смысла запроса • Некоторые слова («собаку») ведут внутрь указанного сайта • в Самаре этот запрос должен давать тот же результат без слов «в самаре»
Конкатенация и факторизация списков A B c A A e A B f B cdef A B • Конкатенация списков строк – список конкатенаций всевозможных наборов строк этих списков • Факторизация списка – его разложение, обратная процедура: • Сортируем строки по длине • Ищем каждую строку во всех последующих • «Вырезаем» её из них x = A B c A d B B B A c B e f A c d B e f A c f e c A B A c A c B d A e B f …
Ядро запроса главная видео ролики смотреть приколы онлайн клипы … • Ядро – минимальный фрагмент запроса, определяющий навигационную цель • «Хвосты» отбрасываем • там залежи опечаток и низкочастотного мусора ютуб видео на ютубе youtubeсмотреть ролики youtube ютуб видео онлайн … ютуб youtube = x
Путь внутрь сайта maps.yandex.ru • Путь – фрагмент запроса, смещающий навигационную цель внутрь сайта • Получаем его, вычитая ядро сайта из внутрисайтовых запросов Все запросы, ведущие на картыяндекс yandexmaps яндекспробки … карты пробки maps = x yandex.ru
Региональные страницы gismeteo.ru + Ижевск = gismeteo.ru/city/daily/4508/ + Воркута = gismeteo.ru/city/daily/12972/ + Омск = gismeteo.ru/city/daily/4578/ • Если путь – географический объект, то считаем, что запрос геозависим • При отсутствии геопути в запросе используем геоданные, полученные на основе IP пользователя
Для борьбы с фрагментарностью используем алгоритмы выделения навигационной обвязки • тексты внутренних ссылок используем как путь запроса
Выбираем оптимальную цель • Итого: находим все фрагменты, взвешиваем все цели и выбираем победителя • В случае неразрешимых противоречий – запрос не навигационен • или … тут зайцев нет tutu.ru zaycev.fm zaitsev.info zaycev.net
… или Динамическая навигация • Если фрагменты запроса противоречивы или незнакомы: • либо ищем по упомянутому сайту • либо возвращаем ссылку на его собственный поиск • либо отдаём всё ранжированию как есть Q либрусек + = http://lib.rus.ec/search?ask=Q =
Зачем всё это? • Дополнительный фактор для ранжирования • Визуализация • Расширенный сниппет • Сайтлинки • Показ нескольких результатов с сайта • Статистика и мониторинг • Метод «факторизации» списков применим и для других классов запросов • например, картиночных и музыкальных
Немного статистики Навигационные Весь поток запросов ok+vk 24% Прочие 38% Навигация 24% Гео 9% Внутрисайт 29% Динамические 7% Все остальные 69%
СПАСИБО! ВОПРОСЫ? Михаил Долинин dolinin@corp.mail.ru