Что такое объекты?

Download Report

Transcript Что такое объекты?

Извлечение объектов
из поисковых
запросов
Михаил Обухов,
Михаил Долинин
Что такое объекты?
•
•
•
•
•
•
Названия организаций
Имена людей
Названия должностей
Адреса
Названия программ
и т.д.
ISBN: 978-1405187848
Яхрома
ГОСТ 2.001-93
детский нафтизин инструкция
Справочники
Парсер запросов
Свойство
Значение
Класс
Лекарственное средство
Название
Навтизин
Международное название
Нафазолин
Дозировка
Детская
…
…
Для чего нужны объекты?
•
•
•
•
•
•
Классификация поисковых запросов
Вопросно-ответные задачи
Переформулировки
Индексация
Обогащение поисковых запросов
…
Задача
Лог
поисковых
запросов
*
NEX
Парсинг запросов
*NEX – Named Entity eXtraction
Объекты
Индексация
Какие решения существуют?
• Машинное обучение
– Классификаторы (Naïve Bayes, ME Models, …)
– Последовательные модели (HMM, CRF, …)
• Системы основанные на правилах
– Ручное составление
– Автоматическое
• Использование онтологий
– Wikipedia, DbPedia
– Imdb
Особенности поисковых запросов
•
•
•
•
Малая длина (в среднем 3 слова)
Слабая грамматическая структура
Не являются текстом на ЕЯ
Отражают потребности пользователей
Купить квартиру бесплатно
Е мобиль когда начнут продавать
Мать и сын
Кино где купить
История происхождения шотландских вислоухих
Основные предположения
• Объекты одного типа встречаются в
одинаковых контекстах
• Объект является самостоятельным поисковым
запросом
Общая структура метода
Лог запросов
Seed
Фаза
извлечения
шаблонов
Лог
запросов
Лог
Логзапросов
запросов
Шаблоны
Фаза
генерации
Фаза
генерации
Фаза
извлечения
объектов
объектов
объектов
Объекты
Фаза извлечения шаблонов
Лог запросов
Seed
Фаза
извлечения
шаблонов
Лог
запросов
Лог
Логзапросов
запросов
Шаблоны
Фаза
генерации
Фаза
генерации
Фаза
извлечения
объектов
объектов
объектов
Объекты
Фаза извлечения шаблонов
• Исходные данные:
– Лог поисковых запросов
– Начальный список шаблонов (1-2 шаблона)
• Результат: список шаблонов с весами
Шаг 1:извлечение начальных объектов
• Для каждого запроса из лога
– Пробуем извлечь объект
– Если получилось, сохраняем
• Очистка извлеченных объектов
– Не встречающихся как самостоятельный запрос
смотреть <название>
смотреть сериал <название> \d+ сезон \d+ серия онлайн
бесплатно в хорошем качестве
Начальные шаблоны должны быть точными!
Шаг 2: извлечение кандидатов
• Для каждого начального объекта
– Из каждого запроса, где он встречается
– Создаем шаблон
смотреть сериал счастливы вместе онлайн серия 2
смотреть сериал <название> онлайн серия \d+
Шаг 3: Взвешивание кандидатов
• Рассчитываем вес для каждого кандидата
• Удаляем кандидатов имеющих низкий вес
Полнота (кандидат) =
Точность (кандидат) =
кол-во извлеченных начальных объектов
общее кол-во начальных объектов
кол-во извлеченных доверенных*объектов
общее кол-во извлеченных объектов
*Доверенный – объект извлеченный N и более различными шаблонами
сериал (.+) \d+ сезон смотреть онлайн бесплатно:0.95
сериал (.+) \d+ сезон \d+ серия смотреть онлайн:0.93
(.+) \d+ сезон смотреть онлайн:0.90
…
(.+) смотреть:0.07
скачать (.+):0.03
…
Фаза извлечения объектов
Лог запросов
Seed
Фаза
извлечения
шаблонов
Лог
запросов
Лог
Логзапросов
запросов
Шаблоны
Фаза
генерации
Фаза
генерации
Фаза
извлечения
объектов
объектов
объектов
Объекты
Фаза извлечения объектов
• Исходные данные:
– Лог поисковых запросов
– Список шаблонов (полученный ранее)
• Результат: список объектов с весами
Шаг 1: извлечение кандидатов
• Для каждого шаблона из списка
– Сохраняем все объекты, которые он может
извлечь
• Очистка извлеченных объектов
– Не встречающихся как самостоятельный запрос
– Не частотные объекты
– Содержащие слова из списка шаблонов
Шаг 2: Взвешивание объектов
• Рассчитываем вес для каждого объекта в
списке
• Удаляем объекты имеющие низкий вес
Вес (объект) =
Log(сколько раз объект был извлечен)
Log(кол-во уникальных запросов содержащих объект)
Метод оценки результата
• Точность первых N объектов (10, 50, 100 …)
• Точность случайной выборки (100)
Результаты:
Класс
@10
@50
@100
Средняя
точность
фильмы
100%
94.2%
89.4%
81.6%
рецепты
100%
96.1%
90.7%
84.3%
книги
94.3%
80.9%
74.3%
68.7%
Достоинства и недостатки
• Достоинства
– Простая реализация
– Масштабируемость
– Хорошая точность
• Недостатки
– Требует ручного вмешательства (начальный
список шаблонов)
– Требует задания порогов
СПАСИБО! ВОПРОСЫ?
Михаил Обухов
[email protected]
Михаил Долинин
[email protected]