Top Banner
© Copyright 2013 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Обработка текстов на естественном языке Александр Уланов Лекция 6. Разбор текстов по частям речи. Поиск именных сущностей
24

Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

Dec 16, 2014

Download

Documents

CS Center

В лекции рассмотрены основные задачи классификации последовательностей в тексте. Это текста разметка частями речи и поиск именных сущностей, таких как организации, имена людей и пр. Данные задачи решаются при помощи различных вариаций марковских моделей. Рассмотрены обычные марковские модели, скрытые марковские модели и и марковские модели с максимальной энтропией (maximum entropy markov models - MEMM). Рассказывается, как построить данные модели для описанных задач, и какие признаки классификации используются для успешного решения этих задач. В конце лекции приводится сравнение различных парсеров именных сущностей.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

Лекция 6. Разбор текстов по частям речи. Поиск

именных сущностей

Page 2: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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

2. Статистики, языковые модели

3. Классификация текстов

4. Практика I

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

6. Разбор текстов по частям речи. Поиск именных сущностей

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

8. Практика II

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

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

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

12. Практика III

Литература

• 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 3: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

Оглавление

Введение

Языковые модели (напоминание из 2й лекции)

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

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

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

Page 4: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

Language models

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

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

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

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

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

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

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

• I see a bird vs. Icy a bird

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

• He studied strong acids vs. He studied powerful acids

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

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

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

Page 5: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

N-gram language modeling

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

𝑝 𝑤1, 𝑤2, … , 𝑤𝑛

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

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

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

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

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

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

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

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

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

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

Page 6: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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

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

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

𝑝 𝑤1, 𝑤2, … , 𝑤𝑛

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

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

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

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

𝑁

• Проблемы

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

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

• Решения

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

Page 7: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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 8: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

Марков старший, Байес и модели

Немного определений

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

некоторой системы во времени (или по другой координате)

• Марковское свойство – условная вероятность будущих состояний системы зависит только от

текущего состояния

• Марковский процесс

• Марковская цепь – время дискретно

– У нас еще и пространство состояний дискретно

• Графическая вероятностная модель – вероятностная модель, представленная в виде графа

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

– Направленный граф без циклов – Байесовская сеть (частный случай - Марковская цепь)

– Ненаправленный граф с циклами – Марковская сеть

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

зависит от

Page 9: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

Марковские цепи

Markov chains

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

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

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

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

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

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

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

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

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

зависит от

Page 10: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

Hidden Markov models

Последовательность случайных переменных 𝑌 =𝑦1, … , 𝑦𝑁 не наблюдаема, но при этом известна некая

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

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

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

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

Expectation Maximization)

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

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

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

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

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

• 𝑦𝑇: 𝑃 𝑥𝑇|𝑦𝑇 ,𝑀 = 𝑃 𝑥𝑖|𝑦𝑖 , 𝑦𝑖−1, 𝑀𝑇𝑖=1 максимально

𝑥𝑖−1 𝑥𝑖 𝑥𝑖+1

𝑦𝑖−1 𝑦𝑖 𝑦𝑖+1

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

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

𝑃 𝑥 = 𝑃 𝑥|𝑦 𝑃 𝑦

𝑖

Пар-ры модели

Page 11: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

Hidden Markov models

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

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

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

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

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

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

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

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

𝑤𝑖−1 𝑤𝑖 𝑤𝑖+1

𝑡𝑖−1 𝑡𝑖 𝑡𝑖+1

𝑡1,𝑛 = argmax𝑡1,𝑛

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

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

𝑛

𝑖=1

Пример из Chris Manning and Hinrich Schuetze. Foundations of Statistical Natural Language

Processing, MIT Press, 1999.

Page 12: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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

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

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

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

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

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

атрибутов классификации между собой

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

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

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

𝑦𝑇: 𝑃 𝑦𝑇|𝑥𝑇 , 𝑀 = 𝑃 𝑦𝑖|𝑥𝑖 , 𝑦𝑖−1,𝑀𝑇𝑖=1 максимально

• Представляем вероятности в виде

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

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

энтропии

𝑥𝑖−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 13: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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 14: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

Тип Шаблон

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

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

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

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

Для редких (неизв.) слов суффикс_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 15: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

POS taggers

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

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

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

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

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

– Brill tagger

• Автомат

– АОТ

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

– Mystem

Page 16: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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

Задача:

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

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

Подходы

• Словарь

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

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

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

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

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

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

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

Page 17: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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

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

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

• IO (INSIDE OUTSIDE)

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

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

• BILOU (BEGIN IN LAST OUT UNIT)

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

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

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

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

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

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

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

Page 18: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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

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

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

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

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

– 𝑃 =𝑡𝑝

𝑡𝑝+𝑓𝑝, 𝑅 =

𝑡𝑝

𝑡𝑝+𝑓𝑛, 𝐹1 =

2𝑃𝑅

𝑃+𝑅

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

где надо)

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

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

На самом деле

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

𝑓𝑛 𝑡𝑛

Page 19: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

Локальные

𝑤𝑖−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 20: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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 21: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

X = HPLR NER

Page 22: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

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

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

• SRILM, IRSTLM

HMM, MEMM, CRF

• Mallet, LingPipe

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

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

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

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

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

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

• Stanford, Illionois, Reuters OpenCalais

Page 23: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

Заключение

Введение

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

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

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

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

Page 24: Обработка текстов на естественном языке: Разбор текстов по частям речи. Поиск именных сущностей.

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

Спасибо!

[email protected]