query expansion

Post on 29-Nov-2014

1.594 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Тезаурусные расширения в информационном поиске

Евгений Соловьёв,

О чём эта лекция?

• Что такое тезаурусные расширения и почему они так важны при поиске?

• Какие бывают виды тезаурусных расширений?

• Как устроен общий процесс автоматической сборки тезауруса?

• Как используется машинное обучение в этом процессе?

• Примеры

Поисковые системы: от сложного к простому

Специализированные поисковые системы:

• рассчитаны на подготовленного пользователя

• требуют максимально полной спецификации запроса

• выдают результаты, точно соответствующие запросу

Поисковые системы: от сложного к простому

Массовые поисковые системы:

• рассчитаны на рядового пользователя

• пытаются «понимать» запрос в произвольной формулировке

• нацелены на удовлетворение распознанных информационных потребностей пользователя

Расширение запросов – основная идея

• Тезаурусное расширение запросов –процесс дополнения, переформулировкизапросов с целью улучшения ответа на поисковый запрос

• Цель: по исходной формулировке запроса найти также информацию по другим запросам, имеющим тот же смысл

Расширение запросов – пример 1

• [Московский мэр] или [Мэр Москвы]?

Расширение запросов – пример 2

• [Форд СПб] или [Петербург Ford]?А может [Форд Санкт-Петербург]?..

Зачем нужны расширения запросов?

• Интернет полон информации самого различного характера

• Чтобы найти эту информацию, зачастую необходимо выбрать единственно правильную формулировку среди многих других

• Тезаурусные расширения помогают находить по одной формулировке запроса остальные, равные по смыслу, ответы

Синонимичность – что имеется ввиду?

• Мы подразумеваем синонимичность в широком смысле этого слова – насколько 2 различных по написанию терма взаимозаменяемы

• Степень синонимичности – доля контекстов использования, в которых оба терма имеют один и тот же смысл

Какие бывают виды тезаурусных расширений?

• Словообразовательные расширения(аббревиатура → аббревиация, петербург → петербургский)

• Транслитерация (Bosch → Бош, nokia → нокиа)• Аббревиатуры (короткие волны → кв,

СПбГУ → Санкт-Пербургский Государственный Университет)

• Просто синонимы (бегемот → гиппопотам,недорогой → дешёвый, оксид → окись)

• Склейка-разрезание (авто кредит → автокредит, киноафиша → кино афиша)

Что расширять: запрос или отдельные термы?

• Что же нам расширять? Запросы целиком либо отдельные термы?[московский мэр] → [мэр Москвы]

[московский мэр]: московский → Москва

• Решение проблемы: расширять отдельные термы в контексте запроса

Запросные термы

Терм – атомарная семантическая единица запроса:

• Стоп-слова не могут быть термами

• Термы могут быть одно-(«Петербург») или многословными («Майкл Джексон», «Большой андронный коллайдер») в случае, когда эти слова описывают один объект, и эти объекты составляют наш “легковесный” тезаурус

Запросный терм – нечёткое понятие

• “Что такое телевизор?” ответят 99% людей

• “Что такое транзистор?” ответят 55% людей

• “Что такое тезаурусные расширения?” лишь 0,0001% людей смогут дать ответ

• Определение терма может зависеть от:

– Языка

– Предметной области

– Географического региона

– …

Расширение запросов – общая архитектура

Запрос

Расширение запросов – общая архитектура

• Словарь тезаурусных расширений:

– Содержит сведения об известных нам термах и о том, как их нужно расширять

– Может содержать дополнительную метаинформацию (например, о контекстах)

• Логика срабатывания расширений:

– Определяет, когда и как должны срабатывать расширения запросов

Словарь тезаурусных расширений

Автоматическая процедура позволяет:

• Получение словарей невиданной полноты и актуальности

– сотни тысяч связей между словами

• Словари, отражающие интернет-лексику

– например, язык padonkaff

• Сбор вместе со словарями метаинформации для лучшего применения в поиске

Процесс сборки словаря расширений

Майнинигисходных гипотез

Лингвистическая модель

Статистика совместной

встречаемости

Разметка синонимичности

гипотез

Очистка словаря с помощью

машинного обучения

Разметка синонимичности гипотез и оценка качества словаря

• «словарная» - безконтекстная оценка словаря

• «контекстная» - оценка расширений в контексте запроса

• «оценка поисковой выдачи» - оценка улучшения качества поиска от использования расширений

Оценка качества тезаурусных расширений – словарная

Оценка словаря:

• Контекст отсутствует, полагаемся на априорное мнение эксперта о синонимичности пары слов

• В сомнительных случаях приходится придумывать подтверждающие или опровергающие контексты

• Полезна только для грубой оценки качества словаря или предварительной фильтрации:

<ericsson, эриссон> - плохо

<ericsson, эриксон> - хорошо

Оценка качества тезаурусных расширений – контекстная

• Контекст позволяет делать более однозначные выводы о взаимозаменяемости словарной пар

• Пример:

[victor hugo] (hugo → гюго)

[hugo boss] (hugo → {хьюго, хуго})

Оценка качества тезаурусных расширений – качество поиска

• Измерение влияния всей подсистемы тезаурусных расширений на общее качество поиска

• Поскольку синонимы оказывают неявное влияние на поисковую выдачу, их качество бывает достаточно трудно измерить данным способом

• Данная метрика должна использоваться лишь совместно с предыдущей

Документные статистики синонимичности

• Насколько часто словарная пара появляется на одной Web-странице? Расстояние между словами не учитывается

• Поиск синонимов по шаблонам:

…участник комик-группы «Монти Пайтон» (Monthy Python)

…гиппопотам обладает немалой силой. В 1983 году один бегемот …

• При сборе статистик большое значение имеет учёт качества обрабатываемых Web-страниц

«Линковость» синонимов

• Насколько часто пара слов встречается в текстах ссылок на данную страницу?

• Значение имеют как остальной приссылочный текст, так и её значимость

Кто станет новым мэром Москвы? Московский мэр

должен продемонстрировать открытость при...Голосование по

кандидату в мэрыМосквы покажут на

сайте Мосгордумы

Синонимичность по переформулировкам

• Замена пользователем части запроса при поиске

• [ректор МГУ][ректор Московского Государственного Университета]

• [обзор автомобиля форд фокус]

[обзор автомобиля ford focus]

Транслитерация

Что это такое?

Транслитерация

• различные языки могут иметь разную письменность

• Русский язык не исключение• Транслитерация – системный способ

преобразования слов из одного алфавита в другой

• для получения качественного поиска необходимо уметь обрабатывать различные написания слов

photo фото φωτο

Каковы основные случаи транслитерации?

Транслитерация

• Имена собственные:Albert Einstein ↔ Альберт Эйнштейн

↔КГБ ↔ KGB

• Заимствованные слова:computer ↔ компьютер перестройка ↔ perestroyka

• URL, логины и прочие идентефикаторы

Когда происходит транслитерация?

Транслитерация

• Off-line (по словарю)– используя предварительно собранный словарь, что позволяет использовать любые статистики для его получения

• On-line (транслитерация “на лету”) –обычно имеет худшую точность, но позволяет преобразовывать любые, даже ранее неизвестные слова

Откуда берутся транслитные гипотезы?

Транслитерация

Откуда берутся транслитные гипотезы?

Транслитерация

• Данные обо всех когда-либо заданных в Яндекс запросах

• «Замороженная» копия интернета – все возможные ответы на них

Но что же делать с таким огромным набором неструктурированных данных?

Транслитерация

• Пусть нам известно 12 миллионов словоформ на кириллице и латинице

• Примерно 72x1012 возможных однословных пар слов

• Около 17x1012 возможных пар слов из разных алфавитов

Как происходит майнинг транслитных гипотез?

Транслитерация

Основная идея: итеративно сокращать количество гипотез, оставляя лишь те из них, что имеют хоть какие-либо шансы подтвердить свою полезность

Linguisticmodel

Co-occurence

Dictionaryrefinement

17x1012

возможных словарых пар

527,824транслитныхсинонимов

“Лингвистическая модель”

Транслитерация

• Мы хотим собирать только транслитерационные синонимы

• Лингвистическая модель транслитерации является её формальным описанием

• Использование модели позволяет значительно сократить количество гипотез

Модель транслитерации, основнная на правилах(M1)

Транслитерация

• Использует известные правила и стандарты транслитерации

• Представляет собой таблицы возможных переходов, по одной на каждый распространённый язык

• Пытается найти послоговоесоответствие у пары слов, штрафуя за оставшие непреобразованными буквы

Модель транслитерации, основнная на правилах - пример

Транслитерация

a ↔ а

ai ↔ е

ai ↔ э

eau ↔ о

eu ↔ э

eu ↔ ё

es ↔ _

ville ↔ виль

Модель транслитерации, основнная на правилах – пример использования

Транслитерация

Являются ли слова“Johansson →Йохансон” транслитом? Заглянем в таблицу:

j ↔ дж

o ↔ о

h ↔ г

h ↔ х

a ↔ а

a ↔ э

n ↔ н

ss ↔ с

Модель транслитерации, основнная на правилах – пример использования

Транслитерация

J o h a n ss o n

Й о х а н с о н

+10 penalty

Вероятностная модель транслитерации (M2)

Транслитерация

• Обучается на большом параллельном корпусе правильных транслитераций

• Модель представляет собой вероятностное распределение слогов целевого слова при условии заданного слогового шаблона исходного

• Для каждой гипотезы модель вычисляет вероятность её «транслитности»

Вероятностная модель транслитерации - пример

Транслитерация

a.ch.aue → а (1.000)

a.ch.ay → а (0.833) ачае (0.167)

a.ch.aye → а (1.000)

a.ch.e → а (0.957) е (0.016) ей (0.014)

э (0.006) о (0.005) эй (0.003) я (0.003)

a.ch.ea → а (0.778) о (0.111) ей (0.111)

a.ch.ee → а (1.000)

a.ch.ei → а (1.000)

a.ch.ey → а (0.500) ей (0.250) э (0.250)

ТранслитерацияВероятностная модель транслитерации –пример применения

йохансон

(6.446)

йогансон

(5.745)

йоханссон

(4.919)

иохансон

(1.422)

джохансон

(1.311)

иогансон

(1.269)

иоханссон

(1.085)

джоханссон

(1.000)

ёхансон

(0.427)

юхансон

(0.387)

йохонсон

(0.342)

югансон

(0.341)

хансон

(0.333)

гансон

(0.298)

юханссон

(0.292)

ханссон

(0.255)

янсон

(0.192)

джохэнсон

(0.142)

йонсон

(0.103)

йонссон

(0.079)

хогенсон

(0.068)

джансон

(0.067)

жансон

(0.066)

хэнсон

(0.036)

йоханссен

(0.027)

Транслитерация

Лингвистическая модель - результаты

• Количество гипотез сокращено до 59миллионов транслитерационных пар

• Каждая из моделей даёт >90% полноты, но точность всё ещё остаётся на очень низком уровне

• Рейтинги “транслитности”каждой из моделей дают нам возможности для дальнейшего повышения точности

ТранслитерацияЛингвистическая модель – уточнение с помощью машинного обучения

• Идея: скомбинировать рейтинги, полученные от моделей, чтобы в полной мере раскрыть их потенциал

• Результат: 95,2% полноты при 91% точности словарной “транслитности”

• Количество гипотез сокращено до 1,8миллионов подтверждённых транслитов

• Рейтинг значимости показателей:

ТранслитерацияЛингвистическая модель – уточнение с помощью машинного обучения

0

5

10

15

20

25

30

35

40

45

M1 Penalty/word

length

M2 Probability Number of words

M2 Ranking M1 Language M1 Penalty

Значимость показателей

ТранслитерацияХорошие транслитерации

≠ хорошие синонимы• Возможное изменение значения слова:

magazine → магазин (meaning “shop”)

• Подмена подразумеваемого объекта (сложно для обнаружения):respublica → республика

• Просто бессмысленная транслитерация:

tekst pesni

ТранслитерацияВыделение синонимов при помощи статистики их совместного использования

Характеристики для определения взаимозаменяемости слов

Web link structure

User sessions

Web docu

ments

ТранслитерацияРазличные методы машинного обучения применительно к задаче определения синонимичности

Тип

модели

Ошибка

обуч.

Ошибка

тест. Примечание

gbm 0,22% 11,81% distribution="adaboost"

interaction.depth=4

randomForest 0,00% 13,38%ntree=100

Logistic

regression25,42% 23,62%

SVM 3,71% 13,38%nu = 0.5,gamma = 1

radial nu-classification

Decision

trees17,21% 30,70%

ТранслитерацияВажность характеристик для определения синонимичности

0

2

4

6

8

10

12

14

gbm

randomForest

ТранслитерацияВажность характеристик для определения синонимичности – Web

0

2

4

6

8

10

12

14

gbm

randomForest

ТранслитерацияВажность характеристик для определения синонимичности - запросные

0

2

4

6

8

10

12

14

gbm

randomForest

ТранслитерацияВажность характеристик для определения синонимичности - линковые

0

2

4

6

8

10

12

14

gbm

randomForest

Словообразовательные расширения

Что это такое?

Словообразовательные расширения

• Различные слова, образованные друг от друга либо от третьего слова

• Схожие по смыслу формы одной части речи:

авантюрность ↔ авантюризм• Разные части речи, производные

одна от другой:митино ↔ митинский

Не всё так гладко…

Словообразовательные расширения

• Однокоренные слова, далёкие по смыслу:цена ↔ ценностьбанковый ↔ банк

• Омонимичность одного из слов:карточный ↔ карта

• Не связанные между собой слова:тёма ↔ тёмный

Лингвистическая модель

Словообразовательные расширения

• Находим однокоренные слова• Выделяем из них самые

популярные суффиксные модели:абхазец ↔ абхазский : <-ец, -ский>абонентный ↔ абонирование: <-ентный, -ирование>этапный ↔ этапность: <-ый, -ость>

• Применяем вычисленные частоты для оценки новых слов

Этапы фильтрации

Словообразовательные расширения

100% Все словообразовательные

92,1% Исходные гипотезы 44 млн.

90,7% Фильтр по общему префиксу 5,6 млн.

84,4% Фильтрация по суфф. модели 500 тыс.

83,9% Фильтрация по встречаемости слов

273 тыс.

82,3% Фильтр взаимозаменяемости 88 тыс.

Аббревиатуры

Что это такое?

Аббревиатуры

• Используются для сокращения часто употребимых фраз и терминов

• Лингвистическая модель кажется крайне простой – берём первые буквы/слоги из каждого слова и…

• Но всё не всегда так просто…

Аббревиатуры формируются довольно просто…

Аббревиатуры

Московский Государственный Университет

МГУ

RuSSIR

Russian Summer School in Information Retrieval

…но иногда сложнее

Аббревиатуры

НАТО

NATO

North Atlantic Treaty Organization

Организация Североатланического Договора

transliteration

translation

abbreviation

Не из каждой фразы выходит аббревиатура

Аббревиатуры

• Лишь малая часть устоявшихся фраз образует аббревиатуру

• Например, посмотрим на фразы, образующие аббревиатуру “RuSSIR”:

Что могло бы означать слово “RuSSIR”?Аббревиатуры

Russian Summer School in Information Retrieval

ruption of the serotonin system in immature rats

ru siteuri scrise in romanarupa se sparge i radurue statement showing in respect

ruj si sklepy irestauracje

ru sodo sklypas irvint rajone

rung setzt sich im rahmen

rujce stan systemu iraportujce

run the shell scripts in the rc

Омонимичность аббревиатур

Аббревиатуры

• Простой случай –однозначные (практически) аббревиатуры:

IEEE (I triple E) – Institute of Electrical and Electronics Engineers

МГУ – Московский Государственный Университет

Омонимичность аббревиатурАббревиатуры

• Сложный случай – неоднозначная аббревиатура:

- с другими словами :

мэг -> Мэг Райан или моноэтиленгликоль- с другими аббревиатурами:

CSS^(cascading style sheets) styles илиCSS^(content scrambling system) license

…и даже МГУ в Мордовии может означать“Мордовский Государственный Университет”!

Как разрешить неоднозначность?

Аббревиатуры

• Предварительно собираем статистику о контекстах расширений:– частоты слов в контексте запроса –

биграммы или «мешки слов»

– учёт семантики запроса и расширения

– любая другая информация о контексте, имеющая значимую корелляцию с расширением (например, регион пользователя и т.п.)

Вопросы?

top related