Ulanov nlp-3

30
© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Обработка текстов на естественном языке Александр Уланов

description

 

Transcript of Ulanov nlp-3

Page 1: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Обработка текстов на естественном языке Александр Уланов

Page 2: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 2

Page 3: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 3

http://www.idolondemand.com/api-docs#about

Page 4: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 4

Оглавление курса

1. Основы лингвистики. Слова, фразы, предложения, наборы текстов

2. Коллокации слов и статистики

3. Марковские модели. Разбор текстов по частям речи. Распознавание именнованных сущностей

4. Извлечение отношений из текстов

5. Поиск дубликатов в тексте

6. Кластеризация и классификация текстов

7. Анализ мнений

8. Введение в статистический машинный перевод

Литература

• Chris Manning and Hinrich Schuetze. Foundations of Statistical Natural Language Processing, MIT Press, 1999

• Philipp Koehn. Statistical Machine Translation, Cambridge Univ. Press, 2010

• Научные статьи по теме, видеолекции Stanford и Coursera (Manning)

Page 5: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 5

ЯЗЫКОВЫЕ МОДЕЛИ.

МАРКОВСКИЕ МОДЕЛИ. ЧАСТИ

РЕЧИ. ИМЕННЫЕ СУЩНОСТИ

Лекция 3

Page 6: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 6

Оглавление

Введение

Языковые модели

Марковские модели

Разбор текста по частям речи

Разпознавание именных сущностей в тексте

Page 7: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 7

Языковые модели

Language models

Мы рассматривали пары слов

Часто для анализа этого мало, т.к. язык – это больше, чем пары слов

Рассмотрим последовательности слов

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

– Исторически связано с OCR

• Последовательность символов, затем слов

– Распознавание речи (последовательность похожих по звучанию слов)

• I see a bird vs. Icy a bird

– Машинный перевод (более правильный перевод)

• He studied strong acids vs. He studied powerful acids

– Исправление ошибок (корректное слово)

• Текучий ремонт vs. Текущий ремонт

– Лексикография (составление словарей)

Page 8: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 8

Языковые модели

N-gram language modeling

Вероятность последовательности слов (n-gram)

𝑝 𝑤1, 𝑤2, … , 𝑤𝑛

Здравый смысл подсказывает, что следующее слово как-то зависит от предыдущих

𝑝 𝑤1, 𝑤2, … , 𝑤𝑛 = 𝑝 𝑤1 ∙ 𝑝 𝑤2|𝑤1 ∙ ⋯ ∙ 𝑝 𝑤𝑛|𝑤1, … , 𝑤𝑛−1

Вероятность слова 𝑤𝑛 при условии предыдущих слов:

𝑝 𝑤𝑛|𝑤1, … , 𝑤𝑛−1

Если бы у нас был очень большой корпус текстов, то мы могли бы вычислить для

последовательности любой длины

• Очень сложно собрать статистику для длинных последовательностей. Давайте считать, что

текущее слово зависит только от m предыдущих слов (обычно берут 3 слова)

• Получается Марковская цепь порядка m

• 𝑝 𝑤𝑛|𝑤1, … , 𝑤𝑛−1 = 𝑝 𝑤𝑛|𝑤𝑛−𝑚, … , 𝑤𝑛−1

Page 9: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 9

Оценка по принципу максимального

правдоподобия Maximum likelihood estimator

Вероятность слова 𝑤𝑛 при условии предыдущих слов:

𝑝 𝑤𝑛|𝑤1, … , 𝑤𝑛−1 =𝑝 𝑤1, 𝑤2, … , 𝑤𝑛−1

𝑝 𝑤1, 𝑤2, … , 𝑤𝑛

Воспользуется принципом максимального правдоподобия (данным). Функция

максимального правдоподобия – функция от параметров распределения

𝑝𝑀𝐿𝐸 𝑤𝑛|𝑤1, … , 𝑤𝑛−1 =𝑐𝑜𝑢𝑛𝑡 𝑤1, 𝑤2, … , 𝑤𝑛−1

𝑐𝑜𝑢𝑛𝑡 𝑤1, 𝑤2, …𝑤𝑤=𝑐

𝑁

• Проблемы

– Плохие оценки для длинных последовательностей

– Для ненаблюдаемых событий – 0

• Решения

– Сглаживание, перераспределение вероятностей (Лапласовское, Good-Turing, Kneser-Ney)

Page 10: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 10

Интерполяция

Interpolation

Сглаживание не позволяет сравнить равновероятные n-grams

Очевидный вариант интерполяции – линейная комбинация вероятностей

• 𝑝𝐼 𝑤3|𝑤1, 𝑤2 = 𝜆1𝑝1 𝑤3 ∙ 𝜆2𝑝2 𝑤3|𝑤2 ∙ 𝜆3𝑝3 𝑤3|𝑤1, 𝑤2

• Парамерты можно определить на тренировочном наборе

• Обычно группируют по частоте

• Back-off модель

𝑝𝑛𝐵𝑂 𝑤𝑖|𝑤𝑖−𝑛+1, … , 𝑤𝑖−1

= 𝑑𝑛 𝑤𝑖−𝑛+1, … , 𝑤𝑖−1 ∙

𝑐𝑜𝑢𝑛𝑡 𝑤𝑖−𝑛+1, … , 𝑤𝑖

𝑐𝑜𝑢𝑛𝑡 𝑤𝑖−𝑛+1, … , 𝑤𝑖 , 𝑤𝑤, если 𝑐𝑜𝑢𝑛𝑡 𝑤𝑖−𝑛+1, … , 𝑤𝑖 > 0

𝛼𝑛 𝑤𝑖−𝑛+1, … , 𝑤𝑖−1 ∙ 𝑝𝑛−1𝐵𝑂 𝑤𝑖|𝑤𝑖−𝑛+2, … , 𝑤𝑖−1

Katz, Slava. "Estimation of probabilities from sparse data for the language model component of a

speech recognizer." Acoustics, Speech and Signal Processing, IEEE Transactions on 35.3

(1987): 400-401.

Page 11: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 11

Марковские модели

Markov models

Последовательность случайных переменных 𝑋 = 𝑥1, … , 𝑥𝑁 , которые принимают

значения из конечного набора состояний 𝑆 = 𝑠1, … , 𝑠𝐾 .

• Следующее состояние зависит только от текущего (цепь первого порядка)

– 𝑝 𝑥𝑛+1 = 𝑠𝑘|𝑥1, … , 𝑥𝑛 = 𝑝 𝑥𝑛+1 = 𝑠𝑘|𝑥𝑛

– 𝑛 – номер шага

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

• Вместо использования цепи бОльшего порядка, историю можно записывать в

пространство состояний

𝑥𝑖−1 𝑥𝑖 𝑥𝑖+1 следует после

зависит от

Page 12: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 12

Скрытые марковские модели

Hidden Markov models

Последовательность случайных переменных

𝑌 = 𝑦1, … , 𝑦𝑁 не наблюдаема, но при этом известна

некая вероятностная функция от них 𝑋 = 𝑥1, … , 𝑥𝑁

• Тренировка модели

– При данных наблюдениях найти параметры

модели («вперед-назад», Baum-Welch - частный

случай Expectation Maximization)

• Предсказание

– Насколько вероятно определенное наблюдение

– При данных наблюдениях, выбрать

последовательность переходов, которая их

наилучшим образом описывает (Витерби)

𝑥𝑖−1 𝑥𝑖 𝑥𝑖+1

𝑦𝑖−1 𝑦𝑖 𝑦𝑖+1

Rabiner, Lawrence, and B. Juang. "An introduction to hidden Markov

models."ASSP Magazine, IEEE 3.1 (1986): 4-16.

Page 13: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 13

Скрытая марковская модель для частей речи

Hidden Markov models

Последовательность случайных переменных

частей речи 𝑇 = 𝑡1, … , 𝑡𝑁 не наблюдаема, но при

этом наблюдаемы слова 𝑊 = 𝑤1, … , 𝑤𝑁 , которые

имеют эти теги

• Бутстрапинг по словарю

• Неизвестные слова

– Вероятность данного тега «сгенерировать»

неизвестное слово + остроумные признаки

𝑤𝑖−1 𝑤𝑖 𝑤𝑖+1

𝑡𝑖−1 𝑡𝑖 𝑡𝑖+1

𝑡1,𝑛 = argmax𝑡1,𝑛

𝑝 𝑡1,𝑛|𝑤1,𝑛 = argmax𝑡1,𝑛

𝑝 𝑤𝑖|𝑡𝑖 𝑝 𝑡𝑖|𝑡𝑖−1

𝑛

𝑖=1

Church, Kenneth Ward. "A stochastic parts program and noun phrase parser for unrestricted text." Proceedings of the second conference on Applied natural

language processing. Association for Computational Linguistics, 1988.

Page 14: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 14

Скрытые марковские модели с

максимальной энтропией Maximum Entropy Markov models

Будем моделировать зависимость скрытой

переменной от наблюдения (а не наоборот)

• Это более логично, чем моделировать совместную

вероятность наблюдения и скрытой переменной

• Не делает предположения о независимости

признаков между собой

• Позволяет использовать предыдущие состояния

скрытой переменной в качестве признака

классификации (!)

• Решается при помощи принципа максимальной

энтропии

𝑜𝑖−1 𝑜𝑖 𝑜𝑖+1

𝑦𝑖−1 𝑦𝑖 𝑦𝑖+1

McCallum, Andrew, Dayne Freitag, and Fernando CN Pereira. "Maximum

Entropy Markov Models for Information Extraction and

Segmentation." ICML. 2000.

𝑃 𝑦𝑖|𝑦𝑖−1, 𝑜𝑖 =1

𝑍 𝑜𝑖 , 𝑦𝑖−1𝑒𝑥𝑝 𝜆𝑎𝑓𝑎 𝑜𝑖 , 𝑦𝑖

𝑎

𝑍 – для нормализации, 𝜆 - параметр

𝑓𝑏,𝑟 𝑜𝑖 , 𝑦𝑖 = 1 если 𝑏(𝑜𝑖) истинно и 𝑦𝑖 = 𝑟

0, иначе

Page 15: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 15

Современные аннотаторы частей речи

POS taggers

Основаны на MEMM (Maximum Entropy Markov Models)

• Являются биграмными (проблема недостаточных данных)

– Пример разметки для обучения:

• An_DT avocet_NN is_VBZ a_DT small_JJ ,_, cute_JJ bird_NN ._.

• Могут использовать доп. Признаки (след. слайд)

– Суффиксы слов (для неизвестных слов)

– Последовательность тегов (например, 3)

• Stanford NLP

• OpenNLP

• Эффективность для английского (F1-мера)

– На известных словах 97%

– На неизвестных – 89%

Page 16: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 16

Признаки для аннотаторов частей речи

Тип Шаблон

Стандартный 𝒘𝒊&𝒕𝒊

Стандартный 𝒕𝒊−𝟏&𝒕𝒊

Стандартный 𝒕𝒊−𝟏&𝒕𝒊−𝟐&𝒕𝒊

Стандартный 𝒘𝒊+𝟏&𝒕𝒊

Для редких (неизв.) слов суффикс_5(𝒘𝒊)&𝒕𝒊

Для редких (неизв.) слов префикс_5(𝒘𝒊)&𝒕𝒊

Для редких (неизв.) слов содержит_число(𝒘𝒊)&𝒕𝒊

Для редких (неизв.) слов содержит_заглавную_букву(𝒘𝒊)&𝒕𝒊

Для редких (неизв.) слов содержит_дефис(𝒘𝒊)&𝒕𝒊

Для редких (неизв.) слов индикатор_компании(𝒘𝒊+𝟏…𝒘𝒊+𝟑)&𝒕𝒊 Kristina Toutanova, Dan Klein, Christopher Manning, and Yoram Singer. 2003. Feature-Rich Part-of-Speech Tagging with a Cyclic Dependency Network.

In Proceedings of HLT-NAACL 2003, pp. 252-259.

Page 17: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 17

Современные аннотаторы частей речи

POS taggers

Другие подходы

• Transformation-based (основанные на преобразовании)

– Правила вида «заменить тег1 на тег2 по триггеру Х»

– Результат обучения может быть преобразован в автомат, обучение может

производиться без разметки (говорят, лучше, чем HMM)

– Brill tagger

• Автомат

– АОТ

• Правила (для языков с богатой морфологией)

– Mystem

Page 18: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 18

Распознавание и классификация именных

сущностей Named Entities Recognition

Задача:

• Распознавание (найти границы сущности в тексте)

• Классификация (определить принадлежность к классу)

Подходы

• Словарь

– Поиск по формам, простые правила

• Машинное обучение

– Классификатор

• Скользящее окно

– Классификатор последовательностей

• Скрытые марковские модели

• Условные случайные поля (Conditional random fields)

Page 19: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 19

Распознавание именных сущностей

Разметка границ

Челябинский тракторный завод вошел в список поставщиков Сочи-2014, сообщил

генеральный директор ЧТЗ Виктор Воропаев.

• IO (INSIDE OUTSIDE)

– Проблема с именными сущностями, стоящими подряд (Мэннинг не считает

серьезной проблемой)

• BILOU (BEGIN IN LAST OUT UNIT)

– Используется в современной литературе

– Позволяет исправлять ошибки (если возникли)

• Промежуточные варианты

• К разметке границ добавляется тип именной сущности (I-ORG, B-PERS…)

– Общее кол-во тегов – это их произведение (без тега O)

– БОльшее кол-во тегов не сильно влияет на эффективность классификатора

последовательностей (на практике)

Page 20: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 20

Распознавание именных сущностей

Разметка границ

Челябинский тракторный завод вошел в список поставщиков Сочи-2014, сообщил

генеральный директор ЧТЗ Виктор Воропаев.

• Как считается эффективность системы

– Точность, полнота, Ф1-мера

– 𝑃 =𝑡𝑝

𝑡𝑝+𝑓𝑝, 𝑅 =

𝑡𝑝

𝑡𝑝+𝑓𝑛, 𝐹1 =

2𝑃𝑅

𝑃+𝑅

– Ошибка может быть одновременно и 𝑓𝑝, и 𝑓𝑛 (распознал не то не совсем там,

где надо)

• «тракторный завод» - неверный результат, при этом пропущено «Челябинский

тракторный завод»

На самом деле

Предсказание 𝑡𝑝 𝑓𝑝

𝑓𝑛 𝑡𝑛

Page 21: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 21

Локальные

𝑤𝑖−1, 𝑤𝑖 , 𝑤𝑖+1

контур 𝑤𝑖 (Xx-xx)

суффикс_5(𝒘𝒊)

префикс_5(𝒘𝒊)

ЧР 𝑤𝑖−1 , ЧР 𝑤𝑖 ,

ЧР 𝑤𝑖+1

Признаки для распознавания именных

сущностей Кластерные

𝐵𝑟𝑜𝑤𝑛*

𝐶𝑙𝑎𝑟𝑘**

𝐿𝐷𝐴

𝑃ℎ𝑟𝑎𝑠𝑒***

Энциклопедические

𝐷𝐵𝑃𝑒𝑑𝑖𝑎

𝑊𝑖𝑘𝑖𝑝𝑒𝑑𝑖𝑎

Словари

*Brown P. et al., Class-based n-gram models of natural language. 1992

**Clark A., Inducing syntactic categories by context distribution clustering. 2000

***Lin, Dekang, and Xiaoyun Wu. "Phrase clustering for discriminative learning."Proceedings of the Joint Conference of the 47th Annual Meeting of the ACL and the 4th

International Joint Conference on Natural Language Processing of the AFNLP: Volume 2-Volume 2. Association for Computational Linguistics, 2009.

• Brown – иерархическая кластеризация слов на основе взаимной информации

биграм (можно использовать любое кол-во кластеров) (можно скачать)

• Clark – кластеризация по распределению контекстов слов на основе меры

Кульбака-Лейблера (100 кластеров) (есть код)

• Phrase – k-means кластеризация фраз (запросы) на косинусной меры близости

(окно) (можно скачать)

Page 22: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 22

Оценки эффективности

CoNLL 2003

• Новостной подкорпус Reuters

• 4 класса: ORG, PERS, LOC, MISC

• F1= 91.02%*

NLPBA 2004

• Биомедецинские

• 5 классов: protein, DNA, RNA, cell line, cell type

• F1= 77.6% (74.27%*)

Русский

• Новостной корпус

• 2 класса: ORG, PERS

• F1= 75.05%**

**Gareev, Rinat, et al. "Introducing baselines for russian named entity

recognition."Computational Linguistics and Intelligent Text Processing.

Springer Berlin Heidelberg, 2013. 329-342.

*Tkachenko M., Simanovsky A., Named entity recognition: Exploring

features //Proceedings of KONVENS. – 2012. – С. 118-127.

Page 23: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 23

Неоднозначность распознавания

X = HPLR NER

Page 24: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 24

Список программ и наборов данных

Языковые модели

• SRILM, IRSTLM

HMM, MEMM, CRF

• Mallet, LingPipe

Разбор по частям речи

• Наборы данных: Penn Treebank (анг), OpenCorpora (рус)

• Английский: StanfordNLP, OpenNLP (и др. языки)

• Русский: TreeTagger (и др. языки), Mystem, АОТ

Распознавание именных сущностей

• Наборы данных: CoNLL, NLPBA, OntoNotes, Ромип 2005 (рус), HPLR (рус)

• Stanford, Illionois, Reuters OpenCalais

Page 25: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 25

Заключение

Введение

Языковые модели

Марковские модели

Разбор текста по частям речи

Разпознавание именных сущностей в тексте

Page 26: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 26

Спасибо!

[email protected]

Page 27: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 27

Лапласовское сглаживание

Laplacian smoothing

Дать вероятности ненаблюдаемым событиям:

𝑝 =𝑐 + 1

𝑛 + 𝑣

𝑣 – размер словаря (всевозможные n-grams)

• Слишком много вероятности для ненаблюдаемых событий

– Допустим, словарь из 100000 слов (Penn), возможных биграм – 1000002 т.е. около 10 млрд,

при том что корпус только 100 млн слов (то есть реально биграм еще меньше)

Модификация

𝑝 =𝑐 +∝

𝑛 +∝∙ 𝑣

Параметр можно опредлять экспериментально

• Слишком много вероятности для одиночных слов

Page 28: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 28

Оценка на основе двух наборов данных

Deleted (held-out) estimation

Делим корпус на две части: тренировочную и проверочную.

• На первой смотрим, сколько n-grams встречались r раз: 𝑁𝑟

• на второй смотрим, сколько раз они встретились 𝑇𝑟

• Ожидаемое кол-во встреч: 𝑇𝑟

𝑁𝑟

Можно проделать то же в обратную сторону:

𝑟𝑑𝑒𝑙 =𝑇𝑟𝑎 + 𝑇𝑟

𝑏

𝑁𝑟𝑎 + 𝑁𝑟

𝑏

𝑟 = 𝑐𝑜𝑢𝑛𝑡 𝑤1, … , 𝑤𝑛

• Жертвуем данными

Page 29: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 29

Оценка Гуда-Тьюринга

Good-Turing estimation

На основе некоторых мат выкладок, ожидаемое число n-gram:

𝑟∗ = 𝑟 + 1𝑁𝑟+1𝑁𝑟

𝑁𝑟 - число n-gram, которые встречаются в корпусе r раз

• Ненадежно для больших r

Page 30: Ulanov nlp-3

© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 30

Сглаживание на основе историй слов

Kneyser-Ney

Учесть различие историй у слова: слова могут встречаться одинаково часто, но

разнообразие слов рядом с ними может быть различно

• История 𝑁1+ ∎𝑤 = 𝑤𝑖: 𝑐 𝑤𝑖 , 𝑤 > 0

• Считаем вероятность на основе частот историй

𝑝𝐾𝑁 𝑤 =𝑁1+ ∎𝑤

𝑁1+ 𝑤𝑖𝑤𝑤𝑖