Skatov

28
Даниил Скатов Диктум, Н. Новгород Разрешение кореференции: обзорная экскурсия AINL, Май 2012, Санкт-Петербург

description

Выступление Диктум на AINL. Даниил Скатов

Transcript of Skatov

Page 1: Skatov

Даниил

СкатовДиктум, Н. Новгород

Разрешение кореференции:обзорная экскурсия

AINL, Май

2012, Санкт-Петербург

Page 2: Skatov

© Dictum Ltd. 2012 2 / 28

Анафора

и

кореференция: суть

задачи

— «перемещать

против

течения»; отсылка

назад

Анафора

(референция) местоимений:

Купил

[телефон], [он]

не

понравился. Отдал

[его]

назад.

Кореференция

именных

групп, сущностей:[Иван

Иванов] — родился

в

Москве. В детстве [Иван]

увлекался

спортом.

[Компания

IBM] опубликовала

отчёты. В этом году [гигант]

преуспел.Мы

получили

новый

[телефон]. [Устройство]

порадовало

дизайном.

Катафора, «one»-анафора, «it»-неанафора; псевдоанафораBecause [he] was tired, [John] didn’t got behind the wheel.

That’s true story!

He didn’t like a blue [cup], so he picked up a red [one]. It

is so cute.Ему

не

нравилась

голубая

чашка, поэтому

он

выбрал

красную

чашку

He

didn’t like [a blue cup]1

, so gave [it]2

back. Then I bought [the cup]3

.

Анафóр, референт

Антецедент 1,2,3

— Кореферентная

цепочка

Page 3: Skatov

© Dictum Ltd. 2012 3 / 28

Анафора

и

кореференция: суть

задачи

Модель

дискурса: референты

есть

ссылки

на

одну

сущность

Опосредованный

референт

(bridging

inference)

Купил

[этот

телефон], но

[его]

крышка

была

неудобная

Классовый

референт

(generic reference)Хочу

купить

[iPad], [они]

мне

очень

нравятся

Гипотеза

активации

(salience, activation): обычно

местоимения ссылаются

на

объекты, которые

рядом

— один-два

предложения

(но

иногда

и

17…); для

референции

именных групп

— расстояние

часто

больше

Нетривиальный

логический

вывод? Гипотеза

центрирования:Анна

поставила

кувшин

на

стол, но

он

(стол, кувшин) разбился

Вчера

Анна

купила

кувшин. Жёлтый

цвет

его

напоминал

о

тех

днях, когда она

была

совсем

маленькой. Солнце, море, и

всегда

свежие

цветы

в

таком

же

большом

кувшине

дома

у

тёти

Иры. Вчера

спокойствие

нарушил неприятный

случай. Анна

поставила

кувшин

на

стол, и

он

разбился.

Page 4: Skatov

© Dictum Ltd. 2012 4 / 28

Анафора

местоимений: признаки-ограничения

Согласование: род, числоIBM

представила

систему

Watson. Они

работали

над

ней

последние

6 лет

John bought [a car]. [It] is big and fast. / [John] bought a car. [He] is happy now.

Антецедент

— именная

группа

→ фильтруем

лишние

сущ-ые[Начальника

цеха

проката

металла]

звали

Иван. [Его]

успехи

велики

Начальника

цеха

проката

металла, который

был

закрыт

вчера, уволили

Синтаксические

ограниченияСын

купил

ему

новый

автомобиль

(ему

!= Сын)

Иван

рассказал

другу

о

нём

(всё, что

он

о

нём

думает?)

Семантические

ограниченияЯ

напечатал

документ

на

принтере, затем

порвал

его

Я

напечатал

документ

на

принтере, затем

выключил

его«порвал

принтер»: f = 4;

«порвал

документ»: f = 833

Доктор

помог

пациенту, и

позже

он

выздоровел

сам

Page 5: Skatov

© Dictum Ltd. 2012 5 / 28

Анафора

местоимений: признаки-предпочтения

Частота

всех

возможных

антецедентов

ранее

в

части

текста

Близость

возможных

антецедентов

к

референту

Грамматическая

роль

в

предложении

(субъект

— объект)Иван

помог

Сергею. Он

[Иван] знал, что

делает.

Сергей

помог

Ивану. Он

[Сергей]

знал, что

делает.Сергей

помог

Ивану. Он

ответил

ему

благодарностью.

Синтаксический

параллелизм

(структура

деревьев)Иван

положил

[телефон]

на

стол, затем

положил

[его]

на

полку

Иван

положил

телефон

на

[стол], затем

положил

планшет

на

[него]

Семантический

параллелизм

(семантика

глагола)Иван

передал

[Сергею]

документы. А

Пётр

передал

[ему]

ключи.

[Иван]

передал

Сергею

документы. [Он]

также

дал

ключи

Петру.

Методы: фильтрация

одного

за

другим

/

выбор

из

многих

Page 6: Skatov

© Dictum Ltd. 2012 6 / 28

Алгоритм

Хоббса

(1978)

Поиск

справа

налево

в

текущем

предложении, начиная

с

первой слева

NP-составляющей, которая

непосредственно

не

подчиняет

мест-ие, находится

выше

или

на

том

же

уровне

(см. понятие

c- command, Reinhart, 1976). Ищем

ту, где

есть

NP между

ней

и

м-м

Ann’s sister is a lawyer. John knows her.

Det

N

NP

V Det

NP

N

VP

S

NP V NN

NP

'

NP

VP

S

Page 7: Skatov

© Dictum Ltd. 2012 7 / 28

Алгоритм

Хоббса

(1978)

Поиск

справа

налево

в

текущем

предложении, начиная

с

первой слева

NP-составляющей, которая

непосредственно

не

подчиняет

мест-ие, находится

выше

или

на

том

же

уровне

(см. понятие

c- command, Reinhart, 1976). Ищем

ту, где

есть

NP между

ней

и

м-м

Ann’s sister is a lawyer. John knows her.

Det

N

NP

V Det

NP

N

VP

S

NP V NN

NP

'

NP

VP

S

Page 8: Skatov

© Dictum Ltd. 2012 8 / 28

Алгоритм

Хоббса

(1978)

Не

находим

в

текущем

— идём

в

предыдущее

и

ищем

NP

слева направо, в

порядке

«сначала

в

ширину». Найденное

проверяем

по

роду

и

числу

на

согласование. Если

не

нашли

на

нужной

глубине — ищем

слева

направо

справа

от

мест-ия

(ищем

катафору).

Ann’s sister

is a lawyer. John knows her.

Det

N

NP

V Det

NP

N

VP

S

NP V NN

NP

'

NP

VP

S

Page 9: Skatov

© Dictum Ltd. 2012 9 / 28

Центрирование: алгоритм

BFP (Бреннан, 1987)

Un

, Un+1

— два

смежных

высказывания

Cb

(Un

) —

предшествующий

центр: сущность, на

которой центрирован

дискурс

при

прочтении

Un; Cb

(U1

)

не

определён;

Cf

(Un

) —

последующий

центр:

как-то

упорядоченный

список сущностей, упомянутых

в

Un

, которые

могли

бы

стать

Cb

(Un+1

); при

этом

Cb

(Un+1

) — это

наибольший

элемент

списка

Cf

(Un

), упомянутый

в

Un+1

; он

обозначается

Cp

Упорядочение: субъект

> объект

> предл. группа

> …

Переходы: приоритет

— 1

> 2 > 3 > 4 (выбр. наибольший)

Cb

(Un+1

) = Cb

(Un

) или

n = 1 (не

опр.) Cb

(Un+1

) ≠

Cb

(Un

)

Cb

(Un+1

) = Cp

(Un+1

) Продолжить1 Мягкий

сдвиг3

Cb

(Un+1

) ≠

Cp

(Un+1

) Оставить2 Жёсткий

сдвиг4

Page 10: Skatov

© Dictum Ltd. 2012 10 / 28

Центрирование: алгоритм

BFP (Бреннан, 1987)

John saw a Ferrari at the used car dealership. (U1

)He showed it to Bob (U2

). He bought it. (U3

)

Cf

(U1

) = {John, Ferrari, dealership} Cp

(U1

) = JohnCb

(U1

) = undef

Page 11: Skatov

© Dictum Ltd. 2012 11 / 28

Центрирование: алгоритм

BFP (Бреннан, 1987)

John saw a Ferrari at the used car dealership. (U1

)He showed it to Bob (U2

). He bought it. (U3

)

Cf

(U1

) = {John, Ferrari, dealership} Cp

(U1

) = JohnCb

(U1

) = undef

Cf

(U2

) = {John, Ferrari, Bob} Cp

(U2

) = JohnCb

(U2

) = JohnCp

(U2

) = Cb

(U2

) Continue

it = Ferrari

Cf

(U2

) = {John, dealership, Bob} Cp

(U2

) = JohnCb

(U2

) = JohnCp

(U2

) = Cb

(U2

) Continue

it = dealership

Page 12: Skatov

© Dictum Ltd. 2012 12 / 28

Центрирование: алгоритм

BFP (Бреннан, 1987)

John saw a Ferrari at the used car dealership. (U1

)John

showed Ferrari

to Bob (U2

). He bought it. (U3

)

Cf

(U2

) = {John, Ferrari, Bob} Cp

(U2

) = JohnCb

(U2

) = John

Cf

(U3

) = {John, Ferrari} Cp

(U2

) = JohnCb

(U2

) = JohnContinue

he = John

Cf

(U3

) = {Bob, Ferrari} Cp

(U3

) = BobCb

(U3

) = BobSmooth-Shift

He = Bob

Page 13: Skatov

© Dictum Ltd. 2012 13 / 28

Центрирование: алгоритм

BFP (Бреннан, 1987)

John saw a Ferrari at the used car dealership. (U1

)John

showed Ferrari

to Bob (U2

). John

bought it. (U3

)

Учитывает: грамматическую

роль, близость, повторы

Может

неверно

разрешить

на

менее

сфокусированный

объект

Аналогия

— скользящее

окно, захватывающее

текущий

фокус

Можно

усиливать

те

гипотезы, что

соответствуют

выбору

BFP

Синтаксис

↔Анафоры

↔ Смысл

↔ …

Cf

(U2

) = {John, Ferrari, Bob} Cp

(U2

) = JohnCb

(U2

) = John

Page 14: Skatov

© Dictum Ltd. 2012 14 / 28

Методы

на

основе

машинного

обучения

Разрешение

анафор

местоимений

3-го

лица

в

отзывах

(на

примере

мобильных

телефонов), написанных

в

свободном

стиле, с пропусками, ошибками, опечатками:

<LG KS660>купил

для

бизниса, очень

удобный

он

держит

две

симки.

Хороший, большой

десплей, на

нём

мертвых

зон

нет</LG KS660>

Длинные

кореферентные

цепочки

(до

8 элементов)

«Неявные»

антецеденты

Особенность

задачи: нужна

высокая

точность

Можно

пожертвовать

полнотой. Как?..

Page 15: Skatov

© Dictum Ltd. 2012 15 / 28

Методы

на

основе

машинного

обучения

Для

каждого

местоимения:

Собрать

гипотезы

и

отранжировать

их

Так, что

первая

будет

верной

наиболее

часто

Выбрать

первую

в

качестве

верного

антецедента

bought for bussines, very useful [it] {* = 0.652166, business = 0.2371, NULL = 0.168611}

supports

two SIM cards. Nice and big displey, no dead zones on [it]{display

= 0.466248, * = 0.284525,

NULL = 0.0777368, business = 0.0101848}

Сбор

гипотез: автоматический

учёт

опечаток

Также: на

этапе

синтаксического

анализа

Page 16: Skatov

© Dictum Ltd. 2012 16 / 28

Подход к оценке качества

1

3

5

2

4

1

3

5

2

4

LL LL

Два

возможных

состояния

для каждого

местоимения: корректно

(зелёный)

или

некорректно

(красный)

Page 17: Skatov

© Dictum Ltd. 2012 17 / 28

Подход к оценке качества

1

3

5

2

4

1

3

5

2

4

1R

1S

LL LL

NN

Два

возможных

состояния

для каждого

местоимения: корректно

(зелёный)

или

некорректно

(красный)

Page 18: Skatov

© Dictum Ltd. 2012 18 / 28

Подход к оценке качества

1

3

5

2

4

1

3

5

2

4

1R

1S

2S

2R

LL LL

NN

K

KN

Два

возможных

состояния

для каждого

местоимения: корректно

(зелёный)

или

некорректно

(красный)

Page 19: Skatov

© Dictum Ltd. 2012 19 / 28

Подход к оценке качества

1

3

5

2

4

1

3

5

2

4

1R

1S

2S

2R

LL LL

NN

K

KN

NK

KNKK

SSR

NK

RSR

NN

SSR

LN

LN

RSR

2

222

2

222

1

111

1

111

Prec

Rec

122Prec

22Rec

Два

возможных

состояния

для каждого

местоимения: корректно

(зелёный)

или

некорректно

(красный)

Page 20: Skatov

© Dictum Ltd. 2012 20 / 28

Подход к оценке качества

1

3

5

2

4

1

3

5

2

4

1R

1S

2S

2R

LL LL

NN

K

KN

Два

возможных

состояния

для каждого

местоимения: корректно

(зелёный)

или

некорректно

(красный)

NK

KNKK

SSR

NK

RSR

NN

SSR

LN

LN

RSR

2

222

2

222

1

111

1

111

Prec

Rec

122Prec

22Rec

NK,

LNPrecRec,→

Page 21: Skatov

© Dictum Ltd. 2012 21 / 28

Корпус

3 Mb Win-1251 текстовых

отзывов, 3

части

= Neutral, Positive, Negative.

Разметка: только

один

вариант

для

каждого

местоимения, в

том

числе

неявные

(# —

телефон, * —

производитель, # —

салон

сотовой

связи)

Явно

означается

расположение

антецедента

в

тексте

NULL для

семантической

неоднозначности: У

мобильника

сенсорный экран. Он

очень

неудобен. (экран

или

телефон?). Сложно

разрешить

и

человеку, так

что

оставляем

как

есть

8.3k отзывов, 37k уникальных

словоформ.

Отзывы

в

словах:

15–35 наиболее

часты,

54 в среднем, диапазон:

2–340.

В

предложениях:

1–16 наиболее

часты, 4 в среднем, диапазон: 1–40.

6.2k всего

местоимений

3-го

лица, 4.5k муж., 0.8k жен., 0.7k мн.ч.

50% мнений

содержали

хотя

бы

одно

местоимение

3-го

лица. 35%

содержали

одно, 10% два, 5% три

и

более. Не

более

9 таких местоимений

на

отзыв.

Page 22: Skatov

© Dictum Ltd. 2012 22 / 28

Пространство

признаков

IsVoc

— принадлежность

A

словарю

предметной

области;

Freq

— число

упоминаний

гипотезы

A

любой

форме) слева

от

P;

Dist

— расстояние

между

A

и

P

в

тексте

в

словах;

HasVerb

— прямой

потомок-глагол

у

гипотезы

A

в

дереве

синтаксического

разбора, к

которому

оно

относится

(правильных предложений

нет);

NumNodes

— Число

узлов

в

кусте

дерева, корень

которого

есть

A.

IsVoc

— трудоёмкая

часть

подхода, но

действенная

Какие

признаки

ещё

можно

было

бы

использовать:

Расстояние

Хоббса: сколько

именных

групп

пропустил

алгоритм

Хоббса

в

поиске

антецедента;

Добавить

признак

«Выбор

по

BFP»

Непосредственное

применение

этих

методов

— сомнительно

Грамматические

роли; сочетаемость

слов

Page 23: Skatov

© Dictum Ltd. 2012 23 / 28

Лексикографический

метод

Формируем

вектор

признаков

по

A

для

заданного

P,

Сортируем

эти

векторы

лексикографически

для

P,

Ранг

— это

позиция

вектора

в

отсортированном

списке.

Оценка

качества

метода:

С

IsVoc Без

IsVoc

(Rec, Prec) (93.7%, 51.9%) (93.7%, 42.4%)

Значимые

признаки

подавляют

набор

остальных

признаков

Изучим

пространство

признаков

дискриминантным

анализом

Page 24: Skatov

© Dictum Ltd. 2012 24 / 28

Линейный

дискриминантный

анализ

Признак Коэффициент

в

LD То

же

для центроида

IsVoc 9.3 – 1.1Freq – 21.5 – 1.6Dist – 10.6 0.1

HasVerb – 7 35.8NumNodes – 0.5 18.9

Page 25: Skatov

© Dictum Ltd. 2012 25 / 28

Метод

на

основе

SVM

C-SVM с

полиномиальным

ядром

Probabilistic Outputs for Support Vector Machines

Комбинирование

с

LD 3 метода

с

разным

качеством

q-fold валидация

для

4k мнений, q=1..300

Метод Полнота Точность

A 97.3% 74.2%

B 75.4% 80.7%

C 45.6% 90.3%

Page 26: Skatov

© Dictum Ltd. 2012 26 / 28

Метод

на

основе

SVM

Recall Precision

A

B

C

Page 27: Skatov

© Dictum Ltd. 2012 27 / 28

Кореференция

именованных

сущностей

В целом — похоже

на

анафору

местоимений

Дополнительные

признаки

на

основе

свойств

сущностей

Приведение

объектов

к

канонической

форме

Расстояние

редактирования

на

сущностях

Как

решаем

в

Диктуме: (1) используется

собственный

модуль выделения

именованных

сущностей

с

получением

канонической

формы;

на

канонических

формах

вводится метрика, значения

о

0 до

∞; (2) для

n

сущностей

строится

граф

с

весами

связей

(с ∞ — не

попадают, граф

разрежен), (3) выделяем

в

графе

обычные

компоненты

связности

(Hopcroft,

Tarjan, 1973

— O(n))

Т.о.: получаем

цепочки

кореференций

без

модели

дискурса

Кореференция

синонимичных

написаний

~ сущностям, нужна

база

знаний

Page 28: Skatov

© Dictum Ltd. 2012 28 / 28

Литература

для

интересующихся

Ruslan

Mitkov, Anaphora

Resolution: The

State

of

the

Art, 1999; Paper

based

on

the

COLING'98/ACL'98 tutorial

on

anaphora

resolution; University

of

Wolverhampton.

Juravsky

D., Martin J. Speech and Language Processing: An

introduction to natural language processing, computational linguistics, and speech recognition. 2007.

Толпегин

П.В. «Автоматическое

разрешение

кореференции местоимений

третьего

лица

русскоязычных

текстов» —

автореферат

диссертации, 2006.

Ермаков

А.Е. «Автоматическое

извлечение

фактов

из

текстов

досье: опыт

установления

анафорических

связей» — Материалы

конференции

Диалог

2007.

Скатов

Д.С., Ливерко

С.В. «Разрешение

анафор

личных местоимений

третьего

лица

в

текстах

узких

предметных

областей

с

грамматическими

ошибками

и

опечатками» — Материалы

конференции

Диалог

2011.