650 likes | 1.04k Views
Статистические языковые модели в информационном поиске. Никита Спирин, PhD candidate University of Illinois at Urbana-Champaign , Department of Computer Science Московский Физико-Технический Институт, Факультет Управления и Прикладной Математики. nikita.spirin@phystech.edu.
E N D
Статистические языковые модели в информационном поиске Никита Спирин, PhD candidate University of Illinois at Urbana-Champaign, Department of Computer Science Московский Физико-Технический Институт, Факультет Управления и Прикладной Математики nikita.spirin@phystech.edu Skype: spirinus spirin2@illinois.edu
Что есть информационный поиск (IR)? • “information retrieval is a field concerned with the structure, analysis, organization,storage, searching, and retrievalof information”[Salton,68] • Information в большинстве случаев есть текст, но может быть и изображением, видео. • Retrieval в основном есть поиск по запросу, но может быть и классификация, фильтрация, резюмирование,..
Зачем поиск? • Twitter генерирует250 000 000 сообщений в день. • 6 000 000 000 фотографий в месяц загружается на Facebook. • Более 560 000 00 профессиональных фотографий загружается в год на Flickr. • Размер индекса Google (нижняя оценка на размер Интернета) в 2008 году достиг 1 000 000 000 000 страниц.
Ключевые компоненты поисковой системы? Интернет Краулер Поисковый Индекс Ранжирующая функция
План доклада • Базовые понятия • Обзор моделей ранжирования • Введение в статистические языковые модели • Базовая модель ранжирования на основе статистических языковых моделей • Продвинутые модели ранжирования на основе статистических языковых моделей • Модель ранжирования на основе вероятностного расстояния статистических языковых моделей • Заключение
План доклада • Базовые понятия • Обзор моделей ранжирования • Введение в статистические языковые модели • Базовая модель ранжирования на основе статистических языковых моделей • Продвинутые модели ранжирования на основе статистических языковых моделей • Модель ранжирования на основе вероятностного расстояния статистических языковых моделей • Заключение
Обзор моделей ранжирования • 1950 – 1960: зарождение данного научного направления • Гипотеза об автоматической индексируемости коллекций (Luhn) • Первые эксперименты и выработка принципов оценки работы поисковых систем (Cleverdon’s Cranfield 1и Cranfield 2) • Ранние эксперименты по разработке векторной модели ранжирования (Salton’s прототип-система SMART) • 1970 – 1980: бурное развитие информационного поиска • Становление векторной модели ранжирования • Модели ранжирования на основе вероятностного подхода (PRP) • 1990: дальнейшее развитие информационного поиска (новые приложения и теоретизирование подходов и моделей) • Статистические языковые модели • Разработка коллекций для объективного сравнения поисковых систем • 2000++: Веб поиск, масштабируемость поисковых систем, антиспам • Машинное обучение ранжированию • MapReduce, Hadoop, GFS, …
Постановка задачи ранжирования • Дано: • Словарь для данного языка ; • Множество запросов обучения , где каждое слово из запроса содержится в словаре; • Коллекция документов , где каждый документ есть упорядоченное множество слов из словаря; • Для обучающего множества пар запрос/документ задана оценка релевантности • Найти: • Для нового запроса множество релевантных документов (возможно упорядоченное) из коллекции .
Вычисление релевантности: упорядоченное множество или нет? • Стратегия 1 (фильтрация документов) • R(q)={dC|f(d,q)=1}, гдеf(d,q) {0,1} есть классификатор, индикаторная функция • Алгоритм должен предсказать абсолютную оценку о релевантности документа запросу. • Стратегия 2 (ранжирование документов) • R(q) = {dC|f(d,q)>}, гдеf(d,q) есть ранжирующая функция; порог фильтрации • Алгоритм должен предсказать относительную релевантность документов и подобрать оптимальный порог фильтрации.
- + - - - - + - + - + + + - R’(q) Вычисление релевантности: упорядоченное множество или нет? R’(q) 1 Реальная релевантность R(q) Классификация f(d,q)=? - - - 0 - + - + - - + + - + - - - - - - - - - 0.98 d1 + 0.95 d2 + 0.83 d3 - 0.80 d4 + 0.76 d5 - 0.56 d6 - 0.34 d7 - 0.21 d8 + 0.21 d9 - - Ранжирование f(d,q)=? -
Вычисление релевантности: упорядоченное множество или нет? • Стратегия 1 (фильтрация документов) • R(q)={dC|f(d,q)=1}, гдеf(d,q) {0,1} есть классификатор, индикаторная функция • Алгоритм должен предсказать абсолютную оценку о релевантности документа запросу. • Стратегия 2 (ранжирование документов) • R(q) = {dC|f(d,q)>}, гдеf(d,q) есть ранжирующая функция; порог фильтрации • Алгоритм должен предсказать относительную релевантность документов и подобрать оптимальный порог фильтрации.
Модели на основе текстовой близости (1) • Принцип: • Релевантность документа запросу коррелирует с текстовой близостью запроса и документа • Векторная модель ранжирования (VSM) • Документ и запрос представляются, как векторы в пространстве терминов (10 000++ компонент); • Каждому термину присвоен вес, характеризующий его информативность, уникальность; • Релевантность оценивается как некоторая мера близости векторов;
Модели на основе текстовой близости – формально (2) • Документ есть ; • Запрос есть ; • Вес термина определяется на основе TFIDF, которая учитывает • Частоту слова в документе TF; • Встречаемость слова в коллекции IDF; • Длину документа; • Близость определяется на основе нормированного скалярного произведения (косинусная мера).
Модели на основе текстовой близости (3) • Преимущества векторной модели ранжирования (VSM): • Дает наилучшие результаты по сравнению с другими классическими моделями; • Очень проста и понятна в реализации; • Существует множество кейсов применения, коллекций и benchmark’ов для сравнения и экспериментов; • Недостатки: • Основана на эвристиках, допускает независимость терминов в запросе и документе; • Сложно расширяема для добавления предметного знания; • Требует тщательной настройки параметров экспертом; • Не объясняет как представлять документы и запросы.
Вероятностный Принцип Ранжирования, PRP(1) • Дано и требуется восстановить отображение . • Выпишем функцию правдоподобия и функцию апостериорного распределения параметров модели
Вероятностный Принцип Ранжирования, PRP(2) • Выпишем функцию распределения финального ответа для нового прецедента • Определим функцию потерь при и при , а также байесовский риск , тогда
Модели на основе вероятностных соображений (1) • Принцип: • Какова вероятность того, что данный документ релевантен данному запросу? • Вероятностная модель ранжирования (PRM): • Рассматриваются три случайные величины (запрос, документ, релевантностьR {0,1}); • Цель: упорядочить документы коллекции по убыванию вероятности соответствия документов запросу, P(R=1|Q,D); • Возможны различные способы оценки вероятности в формуле P(R=1|Q,D).
Модели на основе вероятностных соображений (2) • Дискриминативный подход (оценить вероятность напрямую, построить отображение): • Определить признаки на парах Q x D, например, # совпавших слов, длина документа, величина IDF самого популярного слова на странице, предсказания базовых ранжирующих функций baseR(Q,D),… • Используя обучающее множество (запросы, документы, и известные оценки релевантности на парах), оценить параметры модели ранжирования • Для нового документа породить признаки и применитьобученную модель
Модели на основе вероятностных соображений (3) • Генеративный подход (факторизация вероятности в произведение случайных величин, оценка релевантности не напрямую) • Вычислить O(R=1|Q,D) по правилу Байеса • Определить порождающую модель P(Q,D|R) • Возможные случаи • Генерация документов: P(Q,D|R)=P(D|Q,R)P(Q|R) • Генерация запросов: P(Q,D|R)=P(Q|D,R)P(D|R) Не влияет на ранжирование
Модель релевантных документов для Q Модель нерелевантных документов для Q Модели на основе вероятностных соображений – генерация документа Допустим независимость величин A1…Ak Пусть D=d1…dk, гдеdk{0,1} есть значение величины Ak (тоже самое для Q=q1…qm )
Модели на основе вероятностных соображений – генерация документа (RSJ модель) Необходимо оценить по 2 параметра для каждого термина Ai: pi = P(Ai=1|Q,R=1): вероятность, что Ai ассоциирован с релевантным классом документов; qi = P(Ai=1|Q,R=0): вероятность, что Ai ассоциирован с нерелевантным классом документов. Как оценить данные параметры?
Модели на основе вероятностных соображений – генерация запроса Вероятность запроса p(q| d) Априорная релевантность документа При допущении о равномерной априорной вероятности получим Следовательно, вопрос заключается в том как оценить вероятность запроса по документу? • Процесс состоит из 2 ключевых стадий: • оценить лингвистическую модель для каждого документа D • вычислить релевантности документов запросу на основе этих моделей.
Другие модели ранжирования • Подход на основе графических моделей • Принцип: вывести по-байесовски, что запрос релевантен документу • Подход на основе генетических алгоритмов и символьной регрессии • Принцип: порождение моделей и отбор наиболее перспективных • Подход на основе оптимизации эмпирического риска • Эвристический подход на основе структурных свойств функции ранжирования
План доклада • Базовые понятия • Обзор моделей ранжирования • Введение в статистические языковые модели • Базовая модель ранжирования на основе статистических языковых моделей • Продвинутые модели ранжирования на основе статистических языковых моделей • Модель ранжирования на основе вероятностного расстояния статистических языковых моделей • Заключение
Статистические языковые модели - SLM (определение) • Вероятностное распределение на множестве словарных последовательностей: • p(“Мама мыла раму”) 0.001; • p(“Рама мыла маму”) 0.0000000000001; • p(“Матрица Грамма в унитарном пространстве эрмитова”) 0.00001. • Может быть использована для порождения текста, если рассматривать как случайный процесс семплирования слов из данного вероятностного распределения. Поэтому также можно встретить термин генеративная модель языка. • Зависит от коллекции, тематики, типа модели.
Статистические языковые модели (примеры применения) • Позволяет вероятностно описывать естественный язык в рамках теоретически обоснованной гибкой модели. • С помощью SLM можно отвечать на вопросы: • Для словосочетания “Мама мыла”, какова вероятность того, что следующим словом будет “раму”? А “машину”? А “танк”? (распознавание речи) • Если слово “Евро” встретилось 1 раз и “футбол” 4 раза в статье, какова вероятность, что данная статья про спорт по сравнению с финансами? (информационный поиск, категоризация текста) • Если пользователь любит футбол, какова вероятность того, что он употребит слово “гол” в запросе?(информационный поиск на основе SLM)
Простейшая статистическая языковая модель – Unigram Language Model (ULM) • Текст генерируется последовательно посредством выбора с возвращением так, что слова в последовательности независимы. • То есть p(w1 w2 ... wn)=p(w1)p(w2)…p(wn). • Параметры модели: {p(wi)} таковы, чтоp(w1)+…+p(wN)=1, где(N размер словаря V) • Формально, ULM есть мультиномиальное распределение на множестве слов.
Учебник по аналитической геометрии Новость по футболу Простейшая статистическая языковая модель – Unigram Language Model (ULM) Text Generation with Unigram LM ULM с вектором параметров p(w| ) Документ d Семплирование с возвращением … вектор 0.1 базис 0.05 матрица 0.1 след 0.02 … мяч 0.00001 … Тема 1: Математика … базис 0.0005 игра 0.25 мяч 0.1 тренировка 0.2 … Тема 2: Спорт
1/1000 50/1000 20/1000 10/1000 100/1000 Как оценить качество модели? Является ли данная модель хорошей? Модель восстановленная по данному документу присваивает наибольшую вероятность данному документу, но обобщающая способность такой модели низкая => сглаживание(рассмотрим далее) Простейшая статистическая языковая модель – Unigram Language Model (ULM) ULM с вектором параметров p(w| ) Документ d Подсчет встречаемости, обучение … базис 1 игра 50 мяч20 тренировка10 гонка 0 … футбол 100 … … базис 0.001 игра 0.05 мяч 0.02 тренировка 0.01 … футбол 0.1 Всего # слов = 1000
Оценка статистических языковых моделей Evaluation of SLMs • Прямая оценка качества: Как хорошо модель предсказывает данные, по которым она была обучена? • Примеры: правдоподобие, perplexity, кросс энтропия, KL-divergence (в общем и в целом все эквивалентны) • Косвенная оценка качества: Способствует ли данная модель повышению качества конечной задачи (перевод, поиск, ..)? • Конкретная метрика проблемно-зависимая • В случае IR мы смотрим на то, как данная модель повышает качество поиска, что в свою очередь оценивается эвристическими метриками типа (DCG, MRR, MAP, ..) • Предпосылка данного подхода: более качественная лингвистическая модель приводит к повышению качества решения конечной задачи, но не факт!
Более сложные статистические языковые модели • N-gram модель • Имеет вид, p(w1 w2 ... wn)=p(w1)p(w2|w1)…p(wn|w1 …wn-1); • n-gramозначает, что модель генерации зависит от предыдущих n-1 слов; • Например, модель на основе биграмм имеет вид p(w1 ... wn)=p(w1)p(w2|w1) p(w3|w2) …p(wn|wn-1). • Модели, учитывающие удаленные взаимодействия терминов (Maximum Entropy Language Model, etc.). • Структурные языковые модели (probabilistic context-free grammar,PCFG). • В случае информационного поиска используются в большинстве случаев только Unigram Language Model.
Почему используются только языковые модели нулевого порядка (ULM)? • Сложность перехода к более мощным языковым моделям: • Требуется настраивать больше параметров => требуется больше данных для качественной настройки (Модель, восстановленная по 100 документам, ужасна). • Приводят к значительным вычислительным проблемам по времени отклика при запросе и по затратам на хранение. • Учет структуры текста/предложений не нужен/малоэффективен для выявления тематической релевантности. Однако, используется активно в IE. • Но применение более сложных моделей может и должно привести в общем случае к повышению качества конечных приложений, в частности поиска!
План доклада • Базовые понятия • Обзор моделей ранжирования • Введение в статистические языковые модели • Базовая модель ранжирования на основе статистических языковых моделей • Продвинутые модели ранжирования на основе статистических языковых моделей • Модель ранжирования на основе вероятностного расстояния статистических языковых моделей • Заключение
Лингвистическая модель … text ? mining ? inference ? Bayes? … спорт ? … ? Какая модель наиболее вероятно породила данный запрос? … сегодня? матч? продуктивно ? гол? … Базовая модель ранжирования с использованием ULM, правдоподобие запроса (1) Документ Статья по Байесовским сетям Запрос Q = “машинное обучение” Статья-обзор о чемпионате Европы 2012
Правдоподобие запроса d1 p(q| d1) p(q| d2) d2 p(q| dN) dN Базовая модель ранжирования с использованием ULM, правдоподобие запроса (2) LMs документов q d1 d2 … dN • 2 ключевых вопроса: • Какую вероятностную модель следует использовать? • Как эффективно вычислить di?
Различные языковые модели генерации текста • Multi-Bernoulli:моделирует наличие/отсутствие слов • q= (x1, …, x|V|), xi =1если слово wi есть в документе;xi =0если нет; • Параметры: {p(wi=1|d), p(wi=0|d)}, так что p(wi=1|d)+ p(wi=0|d)=1. • Мультиномиальное (ULM):моделирует частоту слов • Q=q1,…qm , где qjесть слово из запроса • c(wi,q) есть частота слова wiв запросе Q • Parameters: {p(wi|d)} таковы, что p(w1|d)+… p(w|v||d) = 1. Большинство работ используют мультиномиальное распределение, что показывает наилучшие результаты согласно вычислительным экспериментам.
Ключевой принцип/задача в SLM-IR • Задача поиска => Задача оценки лингвистической модели документа p(wi|d) • В лингвистических моделях сглаживание играет ключевую роль, что в свою очередь является ключевым фактором в различии соответствующих ранжирующих функций.
Методы сглаживания • Все методы сглаживания основаны на идее: • Дисконтировать вероятность слов, существующих в документе; • Перераспределить “отобранную” вероятность среди слов, несуществующих в документе. • Лапласовское сглаживание (additive smoothing) предлагает прибавлять единицу к частоте каждого слова и нормализовывать. Частота w вd Лапласов фактор Размер словаря Длина документа d (общее число слов)
Сглаженная LM Иллюстрация идеи сглаживания LM P(w) Оценка по ММП Word w
Дисконтированная ММП оценка Языковая модель коллекции Развитие идеи: Сглаживание на основе коллекции документов (Jelinek-Mercer) • Правильно ли рассматривать все слова одинаково? – Нет. • Мы можем использовать языковую модель, построенную на основе коллекции для персонифицированной обработки слов.
Развитие идеи: Сглаживание на основе коллекции документов c априорным распределением (Dirichlet) • Формально распределение Дирихле есть • Примечательным свойством распределения Дирихле является его связь с мультиномиальным: • А следовательно, , где . согласно Байесовскому выводу, имеем:
Сравнение простых моделей ранжирования на основе статистических языковых моделей
Дисконтированная оценка ММП ULM коллекции Почему сглаживание особенно важно в случае информационного поиска? Общая формула сглаживания Принцип ранжирования со сглаживанием в общей форме
Нормализация длины документа (длинные документы дисконтируются меньше) TF вес Не важно для ранжирования Суммирование по словам из запроса и документа IDF-дисконтирование Сравнение с классическими эвристиками информационного поиска • Сглаживание коллекцией p(w|C) есть TFIDF + норм. длины, а следовательно сглаживание есть реализация классических эвристик информационного поиска. • SLM-IR с простым сглаживанием может быть также эффективновычислена, как и классические модели ранжирования.
Стадия 1 Сглаживание пропущенных слов по-байесовски Стадия 2 Моделирование шума в запросе Двустадийное сглаживание (Dirichlet + Jelinek-Mercer) LM коллекции Языковая модель пользователя (аппроксимация по коллекции p(w|C))
План доклада • Базовые понятия • Обзор моделей ранжирования • Введение в статистические языковые модели • Базовая модель ранжирования на основе статистических языковых моделей • Продвинутые модели ранжирования на основе статистических языковых моделей • Модель ранжирования на основе вероятностного расстояния статистических языковых моделей • Заключение
Перечень продвинутых моделей ранжирования на основе SLM • Языковые модели, учитывающие интеракции терминов и структуру запросов (n-gram, PCFG) • Кластерное сглаживание (cosine, LDA, PLSI) • Транслитерационная модель (семантическое сглаживание, кросс-языковое сглаживание) • Модель на основе полного Байесовского вывода • Модель, моделирующая шум в запросе на основе смеси распределений (определение информативных и неинформативных терминов в запросе)
Перечень продвинутых моделей ранжирования на основе SLM • Языковые модели, учитывающие интеракции терминов и структуру запросов (n-gram, PCFG) • Кластерное сглаживание (cosine, LDA, PLSI) • Транслитерационная модель (семантическое сглаживание, кросс-языковое сглаживание) • Модель на основе полного Байесовского вывода • Модель, моделирующая шум в запросе на основе смеси распределений (определение информативных и неинформативных терминов в запросе)
Языковые моделис “длинным” горизонтом • Учитывают последовательные интеракции терминов в запросе: • Учитывают структуру запроса и документа: • Данные модели не приводят к значительному повышению качества поиска, так как: • Требуется настройка колоссального числа параметров; • Эффект от моделирования последовательности слов в запросе не значителен и учитывается косвенно в ULM.
Кластерное сглаживание (1) • Идея: • Кластеризовать документы и сгладить языковую модель документа на основе языковой модели соответствующего кластера документов. • Согласно экспериментам данный подход не приводит к значимому увеличению качества. • Причина: жесткая кластеризация и неудачная настройка параметров приводят к тому, что модель дисконтирует ключевые слова из данного кластера.