В эфире новый выпуск видеолекций нашего образовательного проекта Техносфера. На этот раз курс посвящён информационному поиску.
Все пользователи интернета имеют опыт работы с поисковыми системами, регулярно вводят туда запросы и получают результаты. Поисковые системы стали настолько привычными, что уже сложно себе представить, что когда-то их не было, а качество современного поиска воспринимается как данность, хотя ещё пятнадцать лет назад всё было совершенно иначе. Однако современная поисковая система является сложнейшим программно-аппаратным комплексом, создателям которого пришлось решить огромное количество практических проблем, начиная от большого объёма обрабатываемых данных и кончая нюансами восприятия человеком поисковой выдачи.
В нашем курсе мы рассказываем об основных методах, применяемых при создании поисковых систем. Некоторые из них — хороший пример смекалки, некоторые показывают, где и как может применяться современный математический аппарат.
Список лекций:
- Введение
- Особенности web-поиска. Архитектура поискового робота
- Планировщик поискового робота
- Индексация и булев поиск
- Булев индекс и поиск
- Поиск дубликатов
- Поиск дубликатов (часть 2)
- Фильтрация порнографии
- Антиспам
- Сниппеты
- Построение сниппетов
- Исправление опечаток в запросах
- Подсказки, переформулировки, классификаторы
Курс ведут:
- Ян Кисель, руководитель инфраструктуры Поиска Mail.Ru;
- Юлия Сергукова, программист отдела инфраструктуры Поиска Mail.Ru;
- Дмитрий Соловьёв, ведущий разработчик группы ранжирования Поиска Mail.Ru;
- Андрей Мурашев, программист рекомендательных систем Поиска Mail.Ru;
- Михаил Плеханов, программист отдела инфраструктуры Поиска Mail.Ru;
- Евгений Чернов, руководитель отдела анализа запросов Поиска Mail.Ru.
Лекция 1. Введение
Обзорная лекция, посвящённая важности проблематики инфопоиска.
Лекция 2. Особенности web-поиска. Архитектура поискового робота
Первая часть лекции посвящена веб-поиску: даётся историческая справка, немного затрагивается тема рекламы в поиске, описываются схемы веб-поиска. Вторая часть посвящена поисковым роботам (спайдерам): постановка задачи на сбор данных, их выкачивание, обновление и хранение.
Лекция 3. Планировщик поискового робота
Ставится задача планирования работы поискового робота, рассматриваются алгоритмы Focused Crawler, разбирается алгоритм «Сад камней». Также разбираются вопросы квотирования.
Лекция 4. Индексация и булев поиск
Рассматривается состав и назначение поискового индекса, немного обсуждается аппаратное обеспечение поисковой системы. Рассказывается о быстром пересечении блоков, сжатии индекса и приёмах увеличения сжатия.
Лекция 5. Булев индекс и поиск
Продолжение предыдущей лекции. Снова поднимается тема сжатия: рассматривается алгоритм Simple9, бинарные данные в Python. Вторая часть лекции посвящена поисковому словарю: обсуждается представление стоп-слов, аспекты хранения словаря. В третьей части лекции рассказывается о дереве запросов: что это такое, как исполняется дерево, как парсить запросы.
И в завершение лекции вы узнаете, как строится общий рабочий процесс индексации.
Лекция 6. Поиск дубликатов
Поиск дубликатов — большая тема, разделённая на две лекции. Сначала вы узнаете об используемой терминологии, посмотрите примеры дубликатов, познакомитесь с шинглированием. Затем рассматриваются практические методы поиска дубликатов: внесение улучшений в алгоритмы, метод построения сигнатуры Minshingle, мера, Жаккара, алгоритм Бродера.
Лекция 7. Поиск дубликатов (часть 2)
Эта лекция посвящена поиску дубликатов в очень больших массивах документов. Рассматривается методика поиска нечётких дубликатов (Local Sensitive Hashing), обсуждаются алгоритмы с неделимой сигнатурой и в завершение проводится сравнение особенностей работы разных алгоритмов.
Лекция 8. Фильтрация порнографии
В начале лекции рассказывается, почему важно всегда фильтровать порнографические материалы, обсуждаются общие решения этого вопроса. Затем рассказывается о методиках фильтрации веб-страниц, запросов и изображений.
Лекция 9. Антиспам
Также очень актуальная тема. Сначала рассматриваются сами причины существования спама, обсуждается проблематика. Рассказывается о методах воздействия спама на поисковые системы, о способах противодействия этому воздействию. Вы узнаете, как обнаруживать спам с помощью анализа содержимого страниц, как выявлять спам-сайты. Также будут рассмотрены методики борьбы с мошенничеством и спамом в приложениях.
Лекция 10. Сниппеты
Из лекции вы узнаете, что такое поисковые сниппеты, какой рекомендуется делать дизайн поисковых выдач. Обсуждаются основные элементы SERP, рассказывается, что такое «семантический веб», рассматривается микроразметка на странице. В завершение лекции рассказывается о неорганических сниппетах и определении конца предложений.
Лекция 11. Построение сниппетов
Продолжение темы сниппетов. На этот раз вы узнаете, что такое text summarization, рассматриваются органические сниппеты, прямой индекс, обсуждается методика оценки качества сниппетов.
Лекция 12. Исправление опечаток в запросах
Лекция посвящена методикам поиска и исправления опечаток во введённых запросах.
Лекция 13. Подсказки, переформулировки, классификаторы
Последняя лекция курса посвящена проблематике генерирования подсказок во время ввода пользователем поискового запроса, рассматриваются методики переформулирования запросов для улучшения поиска. Наконец, обсуждаются всевозможные классификаторы запросов.
Плейлист всех лекций находится по ссылке. Напомним, что актуальные лекции и мастер-классы о программировании от наших IT-специалистов в проектах Технопарк, Техносфера и Технотрек по-прежнему публикуются на канале Технострим.
Автор: Mail.Ru Group