SlideShare a Scribd company logo
1 of 40
Download to read offline
Обход свежего контента
Людмила Остроумова
План
›  Кроулер
›  Обход или переобход
›  Приоритизация новых страниц
Часть 1: кроулер
Кроулер
›  Кроулер (робот) – система, которая скачивает (обходит) веб-страницы
›  Кроулер скачивает веб-страницы, извлекает из них урлы, затем скачивает
соответствующие этим урлам страницы и т.д.
Пакетный кроулер
›  Время от времени создается очередь из урлов для обхода
›  Каждый урл встречается в очереди один раз
›  На следующей итерации может использоваться информация с предыдущей
Инкрементальный кроулер
›  Процесс обхода – «бесконечный»
›  Страницы в очереди могут встречаться несколько раз
›  Ресурсы кроулера разделены между обходом новых страниц и переобходом
старых
›  Эффективнее, так как позволяет переобходить страницы с разной частотой
Метрики
Полнота: доля страниц, которые скачаны кроулером
Взвешенная (weighted coverage):
Где – время, прошедшее с начала обхода, – множество скачанных страниц,
– вес страницы
WC(t) =
X
p2C(t)
w(p)
t C(t)
w(p)
Метрики
Свежесть: насколько актуальны скачанные копии страниц по сравнению с текущим
состоянием
Взвешенная (weighted freshness):
где – свежесть страницы в момент времени , например
, если сохраненная копия страницы совпадает с актуальной
, в противном случае
WF(t) =
X
p2C(t)
w(p) · f(p, t) ,
f(p, t)
f(p, t) =
⇢
1
0
f(p, t)f(p, t)
Компромиссы
Выбор между полнотой и свежестью
Выбор между обходом и переобходом
›  Обход: может улучшить полноту, можно найти новые ссылки
›  Переобход: может улучшить свежесть, можно найти новые ссылки
Часть 2: обход или переобход
“Timely crawling of high-quality ephemeral new content”
Damien Lefortier, Liudmila Ostroumova, Egor Samosvat, Pavel Serdyukov.
ACM International Conference on Information and Knowledge Management, CIKM 2013.
Задача
›  Рассматриваем свежие запросы, по которым нужно показать недавно
созданные документы
›  Задача: быстро найти, скачать, проиндексировать недавно созданные
страницы и показать их пользователям в ответ на соответствующие запросы
Две гипотезы
1. Интерес пользователей к новым страницам быстро растет сразу после
их появления, но длится всего несколько дней (такие страницы будем
называть эфемерными)
2. Эфемерные страницы можно найти с помощью небольшого количества
источников контента (хабов)
Эфемерные страницы
50 тысяч случайных страниц (логи бара за 1 неделю):
Источники контента
Рассматриваем пользовательские переходы, которые ведут на эфемерные
страницы.
Идеи
›  Нужно часто переобходить источники контента, чтобы не пропустить ссылки
на новые страницы
›  Новые страницы тоже нужно обходить сразу, так как они быстро устаревают
›  Проблема: найти баланс между обходом и переобходом, максимизируя
некоторую метрику. Но какую?
Метрика
Стандартные метрики не подходят:
›  Полнота? Нет, эта метрика не учитывает устаревание страниц
›  Свежесть? Нет, она вообще не про новые страницы
Метрика
– это прибыль от скачивания страницы i с задержкой , то есть общее
количество заходов пользователей на эту страницу после ее скачивания
(или общее количество кликов на СЕРПе)
Качество кроулера:
Pi( t) t
QT (t) =
1
T
X
i:ti+ ti2[t T,t]
Pi( ti)
Прибыль
Pi( t) ⇡ Pi · e µi· t
Оптимизационная задача
›  Есть несколько источников контента
›  У каждого есть параметры: – частота появления ссылок, – средняя
популярность страниц, – скорость убывания популярности
›  Хотим найти алгоритм, который обходит каждый источник контента
каждые секунд, находит новые ссылки и обходит соответствующие
страницы
›  Цель – найти оптимальные значения
Si
Si i Pi
µi
Si
Ii
Ii
Оптимизационная задача
Ресурсы ограничены:
Хотим максимизировать качество:
X
i
1 + iIi
Ii
 N
Q =
X
i
1
Ii
X
j:pj 2Si^ tj 2[0,Ii]
Pj(M tj) ! max
Решение задачи оптимизации
Заменим на приближение и положимPj( tj) Pie µi tj pi =
Pi
1 e
µi
i
:
(P
i
pi
Ii
1 e µiIi
! max
P
i
1+ iIi
Ii
= N
Решение задачи оптимизации
Воспользуемся методом множителей Лагранжа:
(
pi 1 (1 + µiIi)e µiIi
= !, i = 1, . . . , n ,
P
i
1
Ii
= N
P
i i
Решение задачи оптимизации
g(x) := 1 (1 + x)e x
(
pi g(µiIi) = !, i = 1, . . . , n ,
P
i
1
Ii
= N
P
i i
Параметры
Для применения алгоритма нужно знать:
›  Средний профит и скорость убывания популярности
›  Частоту появления новых ссылок
Параметры оцениваем динамически, используя исторические данные
Pi µi
i
Расписание
Проблема: нельзя гарантировать, что после каждого переобхода будет
обнаружено ровно новых ссылок
Два варианта:
›  ECHO-newpages: всегда скачиваем все найденные новые страницы
›  ECHO-schedule: обходим источники контента с интервалами , свободные
ресурсы тратим на обход новых страниц
ECHO = Ephemeral Content Holistic Ordering
Si
iIi
Ii
Данные
›  Топ-100 популярных новостных сайтов и топ-50 популярных блогов в России
›  3К источников контента, обходили каждые 10 минут в течение 3 недель
›  Таким образом получили динамические ссылки с источников контента
(всего 2.4М ссылок)
›  Пользовательские клики на все обнаруженные страницы в течение 4 недель
Другие алгоритмы
BFS – обходим источники контента по очереди в фиксированном случайном
порядке. Сразу же обходим все найденные страницы.
Fixed-quota – то же, что и ECHO-schedule, но ровно половину ресурсов тратим
на переобход источников контента и половину на обход новых страниц.
Frequency – то же, что и ECHO-schedule, но не используем историческую
информацию о кликах.
ECHO-greedy – обходим источник контента с наибольшим значением ,
где – время, прошедшее с последнего обхода источника . И обходим все
найденные новые страницы.
iPiI0
i
I0
i Si
Частота появления ссылок
Среднее качество за неделю
Часть 3: приоритизация
новых страниц
“Crawling Policies Based on Web Page Popularity Prediction”
L. Ostroumova, I. Bogatyy, A. Chelnokov, A. Tikhonov, G. Gusev
36th European Conference on Information Retrieval, ECIR 2014
Задача
›  Есть динамический список недавно обнаруженных урлов
›  Обход одной страницы занимает фиксированное время 𝜏
›  Каждые 𝜏 секунд кроулер выбирает одну страницу из списка и скачивает её
›  Как и раньше, хотим «получить» как можно больше заходов/кликов
Пример
Стратегия
Как уже обсуждалось,
– общая популярность ,
– скорость убывания популярности.
Предсказываем и .
Каждые 𝜏 секунд кроулер выбирает страницу с максимальной ожидаемой
прибылью
Pu( t) ⇡ p(u) · e (u)· t
,
p(u) = Pu(0)
r(u) = p(u)e (u) t
(u)
(u)
Pu( t) ⇡ p(u) · e (u)· t
,
p(u) = Pu(0)
Факторы
Предсказываем популярность и скорость убывания популярности только по урлу.
Факторы – из статьи M. Liu, R. Cai, M. Zhang, L. Zhang, User browsing behavior-driven
web crawling, CIKM’11.
Сравнение алгоритмов обхода
Доля полученных заходов:
Алгоритм 𝜏 = 100
5% урлов)
𝜏 = 50
(10% урлов)
𝜏 = 25
(20% урлов)
𝜏 = 10
(50% урлов)
Бейзлайн 0.24 0.34 0.43 0.53
Предсказываем p(𝑢) 0.32 0.42 0.51 0.60
Предсказываем p(𝑢) и 𝜆(𝑢) 0.31 0.40 0.49 0.58
Предсказываем p(𝑢)
настоящее 𝜆(𝑢)
0.36 0.44 0.54 0.64
Спасибо за внимание!
Контакты
ostroumova-la@yandex-team.ru
+79646547903
Людмила Остроумова
Исследователь

More Related Content

Viewers also liked

Cекретный доклад. Иванов Роман
Cекретный доклад. Иванов РоманCекретный доклад. Иванов Роман
Cекретный доклад. Иванов РоманYandex
 
Как мы делали TLS в Яндексе. Эльдар Заитов
 Как мы делали TLS в Яндексе. Эльдар Заитов Как мы делали TLS в Яндексе. Эльдар Заитов
Как мы делали TLS в Яндексе. Эльдар ЗаитовYandex
 
Компьютерная лингвистика в Яндексе
Компьютерная лингвистика в ЯндексеКомпьютерная лингвистика в Яндексе
Компьютерная лингвистика в ЯндексеYandex
 
Онлайн-классификация пользователей в быстрой Крипте. Родион Желудков
 Онлайн-классификация пользователей в быстрой Крипте. Родион Желудков Онлайн-классификация пользователей в быстрой Крипте. Родион Желудков
Онлайн-классификация пользователей в быстрой Крипте. Родион ЖелудковYandex
 
Практика контент-маркетинга: как развернуть эту услугу в интернет-агентстве
Практика контент-маркетинга: как развернуть эту услугу в интернет-агентствеПрактика контент-маркетинга: как развернуть эту услугу в интернет-агентстве
Практика контент-маркетинга: как развернуть эту услугу в интернет-агентствеДмитрий Шахов
 
Екатерина Зудина - Неестественные тексты в интернете
Екатерина Зудина - Неестественные тексты в интернетеЕкатерина Зудина - Неестественные тексты в интернете
Екатерина Зудина - Неестественные тексты в интернетеYandex
 
Морфологический анализатор Mystem 3.0. Алексей ЗобнинЯндекс
Морфологический анализатор Mystem 3.0. Алексей ЗобнинЯндексМорфологический анализатор Mystem 3.0. Алексей ЗобнинЯндекс
Морфологический анализатор Mystem 3.0. Алексей ЗобнинЯндексYandex
 
Дмитрий Шахов. Как конкуренты могут обрушить ваше SEO
Дмитрий Шахов. Как конкуренты могут обрушить ваше SEOДмитрий Шахов. Как конкуренты могут обрушить ваше SEO
Дмитрий Шахов. Как конкуренты могут обрушить ваше SEOДмитрий Шахов
 
Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...
Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...
Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...Yandex
 
Поиск списков в неструктурированных данных
Поиск списков в неструктурированных данныхПоиск списков в неструктурированных данных
Поиск списков в неструктурированных данныхYandex
 
Информационная безопасность — мир «белых и чёрных шляп»
Информационная безопасность — мир «белых и чёрных шляп»Информационная безопасность — мир «белых и чёрных шляп»
Информационная безопасность — мир «белых и чёрных шляп»Yandex
 
Рутинные операции в SEO, о которых забывают и спрашивают снова и снова
Рутинные операции в SEO, о которых забывают и спрашивают снова и сноваРутинные операции в SEO, о которых забывают и спрашивают снова и снова
Рутинные операции в SEO, о которых забывают и спрашивают снова и сноваДмитрий Шахов
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Yandex
 
Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksYandex
 

Viewers also liked (14)

Cекретный доклад. Иванов Роман
Cекретный доклад. Иванов РоманCекретный доклад. Иванов Роман
Cекретный доклад. Иванов Роман
 
Как мы делали TLS в Яндексе. Эльдар Заитов
 Как мы делали TLS в Яндексе. Эльдар Заитов Как мы делали TLS в Яндексе. Эльдар Заитов
Как мы делали TLS в Яндексе. Эльдар Заитов
 
Компьютерная лингвистика в Яндексе
Компьютерная лингвистика в ЯндексеКомпьютерная лингвистика в Яндексе
Компьютерная лингвистика в Яндексе
 
Онлайн-классификация пользователей в быстрой Крипте. Родион Желудков
 Онлайн-классификация пользователей в быстрой Крипте. Родион Желудков Онлайн-классификация пользователей в быстрой Крипте. Родион Желудков
Онлайн-классификация пользователей в быстрой Крипте. Родион Желудков
 
Практика контент-маркетинга: как развернуть эту услугу в интернет-агентстве
Практика контент-маркетинга: как развернуть эту услугу в интернет-агентствеПрактика контент-маркетинга: как развернуть эту услугу в интернет-агентстве
Практика контент-маркетинга: как развернуть эту услугу в интернет-агентстве
 
Екатерина Зудина - Неестественные тексты в интернете
Екатерина Зудина - Неестественные тексты в интернетеЕкатерина Зудина - Неестественные тексты в интернете
Екатерина Зудина - Неестественные тексты в интернете
 
Морфологический анализатор Mystem 3.0. Алексей ЗобнинЯндекс
Морфологический анализатор Mystem 3.0. Алексей ЗобнинЯндексМорфологический анализатор Mystem 3.0. Алексей ЗобнинЯндекс
Морфологический анализатор Mystem 3.0. Алексей ЗобнинЯндекс
 
Дмитрий Шахов. Как конкуренты могут обрушить ваше SEO
Дмитрий Шахов. Как конкуренты могут обрушить ваше SEOДмитрий Шахов. Как конкуренты могут обрушить ваше SEO
Дмитрий Шахов. Как конкуренты могут обрушить ваше SEO
 
Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...
Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...
Как сделать стриминг для сервиса, который хранит миллионы видеофайлов — Лев Т...
 
Поиск списков в неструктурированных данных
Поиск списков в неструктурированных данныхПоиск списков в неструктурированных данных
Поиск списков в неструктурированных данных
 
Информационная безопасность — мир «белых и чёрных шляп»
Информационная безопасность — мир «белых и чёрных шляп»Информационная безопасность — мир «белых и чёрных шляп»
Информационная безопасность — мир «белых и чёрных шляп»
 
Рутинные операции в SEO, о которых забывают и спрашивают снова и снова
Рутинные операции в SEO, о которых забывают и спрашивают снова и сноваРутинные операции в SEO, о которых забывают и спрашивают снова и снова
Рутинные операции в SEO, о которых забывают и спрашивают снова и снова
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
 
Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
 

Similar to Обход свежего контента. Людмила Остроумова

Поисковое продвижение - Михаил Федоринин
Поисковое продвижение - Михаил ФедорининПоисковое продвижение - Михаил Федоринин
Поисковое продвижение - Михаил ФедорининMyAcademy
 
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страницFrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страницFrontDays
 
Первое знакомство с MODx revolution
Первое знакомство с MODx revolutionПервое знакомство с MODx revolution
Первое знакомство с MODx revolutionGetDev.NET
 
Cергей Aверин, Badoo
Cергей Aверин, BadooCергей Aверин, Badoo
Cергей Aверин, BadooOntico
 
Архитектура А/Б тестирования: сделай сам
Архитектура А/Б тестирования: сделай самАрхитектура А/Б тестирования: сделай сам
Архитектура А/Б тестирования: сделай самSergey Xek
 
Применение статистических методов и инструментов для анализа производительнос...
Применение статистических методов и инструментов для анализа производительнос...Применение статистических методов и инструментов для анализа производительнос...
Применение статистических методов и инструментов для анализа производительнос...Ontico
 
SEO-Friendly Websites
SEO-Friendly WebsitesSEO-Friendly Websites
SEO-Friendly WebsitesElkaakle
 
Cybermarketing 2016 - Виктор Карпенко (SeoProfy)
Cybermarketing 2016 - Виктор Карпенко (SeoProfy)Cybermarketing 2016 - Виктор Карпенко (SeoProfy)
Cybermarketing 2016 - Виктор Карпенко (SeoProfy)SeoProfy Presentations
 
Санкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев Дмитрий
Санкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев ДмитрийСанкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев Дмитрий
Санкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев ДмитрийДмитрий Севальнев
 
автоматическая классификация поисковых запросов
автоматическая классификация поисковых запросовавтоматическая классификация поисковых запросов
автоматическая классификация поисковых запросовvladtt
 
Татьяна Исаева, Лев Гершензон "Новости: как и зачем"
Татьяна Исаева, Лев Гершензон "Новости: как и зачем"Татьяна Исаева, Лев Гершензон "Новости: как и зачем"
Татьяна Исаева, Лев Гершензон "Новости: как и зачем"Yandex
 

Similar to Обход свежего контента. Людмила Остроумова (13)

Поисковое продвижение - Михаил Федоринин
Поисковое продвижение - Михаил ФедорининПоисковое продвижение - Михаил Федоринин
Поисковое продвижение - Михаил Федоринин
 
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страницFrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
 
Первое знакомство с MODx revolution
Первое знакомство с MODx revolutionПервое знакомство с MODx revolution
Первое знакомство с MODx revolution
 
Cергей Aверин, Badoo
Cергей Aверин, BadooCергей Aверин, Badoo
Cергей Aверин, Badoo
 
Архитектура А/Б тестирования: сделай сам
Архитектура А/Б тестирования: сделай самАрхитектура А/Б тестирования: сделай сам
Архитектура А/Б тестирования: сделай сам
 
Применение статистических методов и инструментов для анализа производительнос...
Применение статистических методов и инструментов для анализа производительнос...Применение статистических методов и инструментов для анализа производительнос...
Применение статистических методов и инструментов для анализа производительнос...
 
конвергентная редакция коло (полтава)
конвергентная редакция коло (полтава)конвергентная редакция коло (полтава)
конвергентная редакция коло (полтава)
 
SEO-Friendly Websites
SEO-Friendly WebsitesSEO-Friendly Websites
SEO-Friendly Websites
 
YaC 2013 Notes
YaC 2013 NotesYaC 2013 Notes
YaC 2013 Notes
 
Cybermarketing 2016 - Виктор Карпенко (SeoProfy)
Cybermarketing 2016 - Виктор Карпенко (SeoProfy)Cybermarketing 2016 - Виктор Карпенко (SeoProfy)
Cybermarketing 2016 - Виктор Карпенко (SeoProfy)
 
Санкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев Дмитрий
Санкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев ДмитрийСанкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев Дмитрий
Санкции поисковых систем — новый виток борьбы. IBC Russia, Севальнев Дмитрий
 
автоматическая классификация поисковых запросов
автоматическая классификация поисковых запросовавтоматическая классификация поисковых запросов
автоматическая классификация поисковых запросов
 
Татьяна Исаева, Лев Гершензон "Новости: как и зачем"
Татьяна Исаева, Лев Гершензон "Новости: как и зачем"Татьяна Исаева, Лев Гершензон "Новости: как и зачем"
Татьяна Исаева, Лев Гершензон "Новости: как и зачем"
 

More from Yandex

Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаYandex
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаYandex
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Yandex
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Yandex
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Yandex
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Yandex
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Yandex
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Yandex
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Yandex
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Yandex
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровYandex
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Yandex
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Yandex
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Yandex
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Yandex
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Yandex
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Yandex
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Yandex
 
Эталонное описание фильма на основе десятков дубликатов
Эталонное описание фильма на основе десятков дубликатовЭталонное описание фильма на основе десятков дубликатов
Эталонное описание фильма на основе десятков дубликатовYandex
 
Производительность параметрического поиска на основе опенсорс-платформы
Производительность параметрического поиска на основе опенсорс-платформыПроизводительность параметрического поиска на основе опенсорс-платформы
Производительность параметрического поиска на основе опенсорс-платформыYandex
 

More from Yandex (20)

Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
 
Эталонное описание фильма на основе десятков дубликатов
Эталонное описание фильма на основе десятков дубликатовЭталонное описание фильма на основе десятков дубликатов
Эталонное описание фильма на основе десятков дубликатов
 
Производительность параметрического поиска на основе опенсорс-платформы
Производительность параметрического поиска на основе опенсорс-платформыПроизводительность параметрического поиска на основе опенсорс-платформы
Производительность параметрического поиска на основе опенсорс-платформы
 

Обход свежего контента. Людмила Остроумова

  • 1.
  • 3. План ›  Кроулер ›  Обход или переобход ›  Приоритизация новых страниц
  • 5. Кроулер ›  Кроулер (робот) – система, которая скачивает (обходит) веб-страницы ›  Кроулер скачивает веб-страницы, извлекает из них урлы, затем скачивает соответствующие этим урлам страницы и т.д.
  • 6. Пакетный кроулер ›  Время от времени создается очередь из урлов для обхода ›  Каждый урл встречается в очереди один раз ›  На следующей итерации может использоваться информация с предыдущей
  • 7. Инкрементальный кроулер ›  Процесс обхода – «бесконечный» ›  Страницы в очереди могут встречаться несколько раз ›  Ресурсы кроулера разделены между обходом новых страниц и переобходом старых ›  Эффективнее, так как позволяет переобходить страницы с разной частотой
  • 8. Метрики Полнота: доля страниц, которые скачаны кроулером Взвешенная (weighted coverage): Где – время, прошедшее с начала обхода, – множество скачанных страниц, – вес страницы WC(t) = X p2C(t) w(p) t C(t) w(p)
  • 9. Метрики Свежесть: насколько актуальны скачанные копии страниц по сравнению с текущим состоянием Взвешенная (weighted freshness): где – свежесть страницы в момент времени , например , если сохраненная копия страницы совпадает с актуальной , в противном случае WF(t) = X p2C(t) w(p) · f(p, t) , f(p, t) f(p, t) = ⇢ 1 0 f(p, t)f(p, t)
  • 10. Компромиссы Выбор между полнотой и свежестью Выбор между обходом и переобходом ›  Обход: может улучшить полноту, можно найти новые ссылки ›  Переобход: может улучшить свежесть, можно найти новые ссылки
  • 11. Часть 2: обход или переобход
  • 12. “Timely crawling of high-quality ephemeral new content” Damien Lefortier, Liudmila Ostroumova, Egor Samosvat, Pavel Serdyukov. ACM International Conference on Information and Knowledge Management, CIKM 2013.
  • 13. Задача ›  Рассматриваем свежие запросы, по которым нужно показать недавно созданные документы ›  Задача: быстро найти, скачать, проиндексировать недавно созданные страницы и показать их пользователям в ответ на соответствующие запросы
  • 14. Две гипотезы 1. Интерес пользователей к новым страницам быстро растет сразу после их появления, но длится всего несколько дней (такие страницы будем называть эфемерными) 2. Эфемерные страницы можно найти с помощью небольшого количества источников контента (хабов)
  • 15. Эфемерные страницы 50 тысяч случайных страниц (логи бара за 1 неделю):
  • 16. Источники контента Рассматриваем пользовательские переходы, которые ведут на эфемерные страницы.
  • 17. Идеи ›  Нужно часто переобходить источники контента, чтобы не пропустить ссылки на новые страницы ›  Новые страницы тоже нужно обходить сразу, так как они быстро устаревают ›  Проблема: найти баланс между обходом и переобходом, максимизируя некоторую метрику. Но какую?
  • 18. Метрика Стандартные метрики не подходят: ›  Полнота? Нет, эта метрика не учитывает устаревание страниц ›  Свежесть? Нет, она вообще не про новые страницы
  • 19. Метрика – это прибыль от скачивания страницы i с задержкой , то есть общее количество заходов пользователей на эту страницу после ее скачивания (или общее количество кликов на СЕРПе) Качество кроулера: Pi( t) t QT (t) = 1 T X i:ti+ ti2[t T,t] Pi( ti)
  • 20. Прибыль Pi( t) ⇡ Pi · e µi· t
  • 21. Оптимизационная задача ›  Есть несколько источников контента ›  У каждого есть параметры: – частота появления ссылок, – средняя популярность страниц, – скорость убывания популярности ›  Хотим найти алгоритм, который обходит каждый источник контента каждые секунд, находит новые ссылки и обходит соответствующие страницы ›  Цель – найти оптимальные значения Si Si i Pi µi Si Ii Ii
  • 22. Оптимизационная задача Ресурсы ограничены: Хотим максимизировать качество: X i 1 + iIi Ii  N Q = X i 1 Ii X j:pj 2Si^ tj 2[0,Ii] Pj(M tj) ! max
  • 23. Решение задачи оптимизации Заменим на приближение и положимPj( tj) Pie µi tj pi = Pi 1 e µi i : (P i pi Ii 1 e µiIi ! max P i 1+ iIi Ii = N
  • 24. Решение задачи оптимизации Воспользуемся методом множителей Лагранжа: ( pi 1 (1 + µiIi)e µiIi = !, i = 1, . . . , n , P i 1 Ii = N P i i
  • 25. Решение задачи оптимизации g(x) := 1 (1 + x)e x ( pi g(µiIi) = !, i = 1, . . . , n , P i 1 Ii = N P i i
  • 26. Параметры Для применения алгоритма нужно знать: ›  Средний профит и скорость убывания популярности ›  Частоту появления новых ссылок Параметры оцениваем динамически, используя исторические данные Pi µi i
  • 27. Расписание Проблема: нельзя гарантировать, что после каждого переобхода будет обнаружено ровно новых ссылок Два варианта: ›  ECHO-newpages: всегда скачиваем все найденные новые страницы ›  ECHO-schedule: обходим источники контента с интервалами , свободные ресурсы тратим на обход новых страниц ECHO = Ephemeral Content Holistic Ordering Si iIi Ii
  • 28. Данные ›  Топ-100 популярных новостных сайтов и топ-50 популярных блогов в России ›  3К источников контента, обходили каждые 10 минут в течение 3 недель ›  Таким образом получили динамические ссылки с источников контента (всего 2.4М ссылок) ›  Пользовательские клики на все обнаруженные страницы в течение 4 недель
  • 29. Другие алгоритмы BFS – обходим источники контента по очереди в фиксированном случайном порядке. Сразу же обходим все найденные страницы. Fixed-quota – то же, что и ECHO-schedule, но ровно половину ресурсов тратим на переобход источников контента и половину на обход новых страниц. Frequency – то же, что и ECHO-schedule, но не используем историческую информацию о кликах. ECHO-greedy – обходим источник контента с наибольшим значением , где – время, прошедшее с последнего обхода источника . И обходим все найденные новые страницы. iPiI0 i I0 i Si
  • 33. “Crawling Policies Based on Web Page Popularity Prediction” L. Ostroumova, I. Bogatyy, A. Chelnokov, A. Tikhonov, G. Gusev 36th European Conference on Information Retrieval, ECIR 2014
  • 34. Задача ›  Есть динамический список недавно обнаруженных урлов ›  Обход одной страницы занимает фиксированное время 𝜏 ›  Каждые 𝜏 секунд кроулер выбирает одну страницу из списка и скачивает её ›  Как и раньше, хотим «получить» как можно больше заходов/кликов
  • 36. Стратегия Как уже обсуждалось, – общая популярность , – скорость убывания популярности. Предсказываем и . Каждые 𝜏 секунд кроулер выбирает страницу с максимальной ожидаемой прибылью Pu( t) ⇡ p(u) · e (u)· t , p(u) = Pu(0) r(u) = p(u)e (u) t (u) (u) Pu( t) ⇡ p(u) · e (u)· t , p(u) = Pu(0)
  • 37. Факторы Предсказываем популярность и скорость убывания популярности только по урлу. Факторы – из статьи M. Liu, R. Cai, M. Zhang, L. Zhang, User browsing behavior-driven web crawling, CIKM’11.
  • 38. Сравнение алгоритмов обхода Доля полученных заходов: Алгоритм 𝜏 = 100 5% урлов) 𝜏 = 50 (10% урлов) 𝜏 = 25 (20% урлов) 𝜏 = 10 (50% урлов) Бейзлайн 0.24 0.34 0.43 0.53 Предсказываем p(𝑢) 0.32 0.42 0.51 0.60 Предсказываем p(𝑢) и 𝜆(𝑢) 0.31 0.40 0.49 0.58 Предсказываем p(𝑢) настоящее 𝜆(𝑢) 0.36 0.44 0.54 0.64