Ulanov nlp-5

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

description

 

Transcript of Ulanov nlp-5

Page 1: Ulanov nlp-5

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

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

Page 2: Ulanov nlp-5

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

Page 3: Ulanov nlp-5

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

Page 4: Ulanov nlp-5

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

Тренды в научных публикациях ACM и IEEE

Основные выводы [Hoonlor et al. 2013]

• Значительно уменьшилось кол-во формальных математических статей (при том, что общее

кол-во статей сильно выросло)

• Наиболее встречаемая тема – алгоритмы, наряду с нейронными сетями, бд и Интернетом

• Облачные вычисления, социальные медиа и сети – тренды за последнии 5 лет

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

(наоборот в три раза меньше)

• Типичная научная группа 5-6 человек, группа меняется каждые 4 года, при этом неизменное

ядро группы 1-2 человека

• Области интересов исследователя меняется раз в 10 лет, при этом часто встречается сильное

изменение интересов (в связи с карьерой)

Hoonlor, Apirak, Boleslaw K. Szymanski, and Mohammed J. Zaki. "Trends in computer science research." Communications of the

ACM 56.10 (2013): 74-83.

Page 5: Ulanov nlp-5

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

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

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 6: Ulanov nlp-5

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

ПОИСК ДУБЛИКАТОВ Лекция 5

Page 7: Ulanov nlp-5

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

Оглавление

Введение

Меры близости строк

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

Обучение с учителем

Масштабируемость

Page 8: Ulanov nlp-5

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

Введение

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

Задача поиска и группировки или согласования различных реализаций одного и того

же объекта

• Различные способы упоминания одного и того же человека в тексте или БД

• Страницы с разными описаниями одних и тех же организаций

• Разные фотографии одних и тех же объектов

• …

• Будем заниматься текстовыми дубликатами

Page 9: Ulanov nlp-5

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

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

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

Задача имеет много различных названий Duplicate detection

Record linkage Coreference resolution

Reference reconciliation Matching Object consolidation

Deduplication Entity clustering Merge/purge

Hardening soft databases Doubles Entity resolution

Entity linking

Page 10: Ulanov nlp-5

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

Примеры. Социальная сеть

Эрик Картман

Стэн Марш

Кайл Брофлофски

Кенни МакКормик

Картман

Кенни

Кайл

Стэн

С. Марш К. Брофлофски

Эрик

К. Маккормик

До поиска дубликатов После поиска дубликатов

Сеть пригодна для анализа

Page 11: Ulanov nlp-5

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

Примеры. Топология сети Интернет

Router

Router

Router

Route

r

Router

До поиска дубликатов После поиска дубликатов

Router

Router

Router

Router

Router

Router

Уменьшена сложность графа

Page 12: Ulanov nlp-5

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

Примеры. Люди

Микоян

Вагнер

*все фото из Википедии

Page 13: Ulanov nlp-5

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

Причины появления дубликатов

Отчего появляются дубликаты?

Основные причины:

• Ошибки ввода

• Пропущенные данные

• Измененные атрибуты

• Формат данных

• Аббревиатуры и сокращения

Page 14: Ulanov nlp-5

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

Актуальность

Новые данные для поиска дубликатов

Основные проблемы

• Большие данные (Big Data)

• Гетерогенность

– Неструктурированные, «грязные», неполные данные

– Не просто сравнение фамилий и имен, а сравнение профайла в Фейсбуке со списками

твитов в Твиттере

• Согласование

– Не просто дубликаты, а отношения между реализациями

• Различные приложения

– БД, социальные сети…

Page 15: Ulanov nlp-5

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

Постановки задачи

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

Список задач

• Поиск дубликатов (duplicate detection, entity resolution)

– Группировка различных реализаций одного и того же объекта

• Согласование записей (record linkage, entity linking)

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

• Ссылки (reference resolution)

– Сопоставить данные с внешними источниками для их «чистки»

Условия

• Каждая реализация может быть ассоциирована только с одним объектом

• В задаче согласования записей в одном из источников нет дубликатов

• Если две реализации идентичны, то они относятся к одному объекту

Page 16: Ulanov nlp-5

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

Постановки задачи

Обозначения

• R – набор записей (реализации)

• H – набор отношений (реализации)

• M – набор совпадений

• N – набор несовпадений

• E – набор объектов (в реальности)

• L – набор связей (в реальности)

Проверка правильности решения

• Реальные (Mtrue, Ntrue, Etrue, Ltrue) сравниваются с (Mpred, Npred, Epred, Lpred), найденными

алгоритмом

Mtrue Mpred

Page 17: Ulanov nlp-5

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

Метрики

Измерение точности поиска дубликатов

• Попарные (N(N-1)/2)

– Точность, полнота, F1-мера (precision, recall, F1-measure)

– Количество правильно найденных совпадающих пар

• Групповые (кластерные)

– Чистота (purity)

k

jkj

cN

Cpurity max1

,

fptp

tpP

fntp

tpR

RP

PRF

1

Тот же кластер Другой кластер

Тот же объект True positive (tp) False negative

(fn)

Другой объект False positive (fp) True negative (tn)

кластеры объекты Предполагается, что каждый кластер представляет

тот объект, реализаций которых в нем больше всего

Page 18: Ulanov nlp-5

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

Решение

Как задача классификации

Классифицировать все пары записей в «совпадение» и «не совпадение»

• Несбалансированные данные – «не совпадений» намного больше

• Пары записей не независимы:

– (A,B)==match, (B,C)==match (A,C)==match

Как задача кластеризации

Кластеризовать все записи так, чтобы кластеры соответствовали объектам

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

меньше R

• В задаче поиска дубликатов количество кластеров O(R), зачастую близко к R, так как много

синглетонов (кластеров с одним элементом)

Page 19: Ulanov nlp-5

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

Алгоритм решения

Обычно задача включает в себя следующие шаги

• Подготовка данных и выделение атрибутов

• Попарное сравнение

– Атрибутов

– Записей (реализаций)

• Применение ограничений

Page 20: Ulanov nlp-5

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

Подготовка данных

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

– Схема – «телефон» и «контактный телефон»

– Сложные атрибуты - адрес

– Вложенные атрибуты

– Наборы атрибутов

– Сегментация данных

• Нормализация данных

– Строчные буквы, пробелы

– Исправление заранее известных ошибок

– Расшифровка аббревиатур

– Часто используются словари

Page 21: Ulanov nlp-5

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

Сравнение атрибутов записей

• Для каждой пары реализаций составить вектор

близости их признаков

– S(A,B)=(sim(A.phone,A.phone),sim(A.name,B.n

ame),…)

– Элементами вектора могут быть как

булевские значения так и значения функций

близости

SecondString, http://secondstring.sourceforge.net/

Simmetrics: http://sourceforge.net/projects/simmetrics/

LingPipe, http://alias‐i.com/lingpipe/index.html

• Меры близости

− Булевская

− Дистанция редактирования

• Levenshtein, Jaro-Winkler, Monge-Elkan

− Фонетичекая

• Soundex

− На основе множеств

• Dice, Jaccard

− На основе векторов

• TF-IDF, softTF-IDF

− Перевод

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

Page 22: Ulanov nlp-5

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

Меры близости. Levenstein

Levenshtein

Стоимости

• Совпадение: если символ совпадает, взять стоимость из левой верхней диагонали

• Несовпадение (выбирается минимальная стоимость)

– Замена: если символ не совпадает, взять стоимость из левой верхней диагонали и добавить 1

– Вставка: взять стоимость слева и добавить 1

– Удаление: взять стоимость сверху и добавить 1

t h i s

0 1 2 3 4

h 1 1 1 2 3

a 2 2 2 2 3

s 3 3 3 3 2 Расстояние

Модификации Levenstein

• Needleman-Wunsch: разные стоимости

• Damerau-Levenstein: +транспозиция

• Smith-Waterman: учет начала и конца

• Affine gap: последовательная

вставка/удаление дешевле

• Monge-Elkan: Smith-Waterman+affine

Page 23: Ulanov nlp-5

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

Меры близости. Jaro-Winkler

s

s

t

t

s

stsJaro

3

1),(

1

2

,max

tsd

ts , – последовательности общих символов

Два символа считаются общими, если они не дальше чем

– половина кол-ва перестановок в последовательности общих символов

Алексей

Алескей 12d 95.07

17

7

7

7

7

3

1

Jaro

),(11.0),(),( tsJaroitsJarotsrJaroWinkle

i – общий префикс (но не больше 4)

Page 24: Ulanov nlp-5

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

Меры близости. Множества, вектора

Jaccard

TF-IDF

Вычисление косинуса векторов с весами слов

Soft TF-IDF

BA

BABAJaccard

),(

Сравниваемые строки разбиваются на слова

Отношение пересечения и объединения слов

TSw

TFIDF TwVSwVTSSim ,,),(

wSwV

SwVSwV

2,

,),( wSw IDFTFSwV log1log, ,

TSCLOSEw

TFIDF TwNTwVSwVTSSimSoft,,

,,,),(

vwsimCLOSE ,CLOSETw simTwN max),(

w

wd

DIDF

Page 25: Ulanov nlp-5

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

Сравнение эффективности мер близости

Средние значения по 11 наборам данных

M. Bilenko, R. Mooney, W. Cohen, P. Ravikumar and S. Fienberg. Adaptive Name Matching in Information

Integration. IEEE Intelligent Systems, Vol. 18 Is 5, 2003

Page 26: Ulanov nlp-5

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

Меры близости. Обучение с учителем

Обучение параметров мер близости

• Веса операций меры Левенштейна + Affine gap при помощи HMM [Bilenko & Mooney, KDD03], CRF

[McCallum et al. 2012]

– Позволяет «выучивать» особенности типа высокой стоимости редактирования чисел в адресе,

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

• Косинусная при помощи SVM [Bilenko & Mooney, KDD03]

• Веса для каждого измерения

• Проблемы

– Необходим набор данных для обучения

– При наличии тестового набора данных можно подобрать наиболее подходящую обычную меру

Page 27: Ulanov nlp-5

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

Сравнение эффективности мер близости

McCallum, Andrew, Kedar Bellare, and Fernando Pereira. "A conditional random field for discriminatively-trained finite-state string edit distance." arXiv preprint arXiv:1207.1406 (2012).

Максимальная F-мера по одному текстовому полю записи

Максимальная F-мера по всей записи

Page 28: Ulanov nlp-5

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

Эффективность мер близости

Bilenko, Mikhail, and Raymond J. Mooney. "Adaptive duplicate detection using learnable string similarity measures." Proceedings of the ninth ACM SIGKDD international

conference on Knowledge discovery and data mining. ACM, 2003.

Page 29: Ulanov nlp-5

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

Сравнение записей

Задача: вычислить дистанцию между записями, представленными в

виде векторов значений дистанций

• Взвешенная сумма (или среднее) дистанций атрибутов

– Необходимо определять порог

• Правила

– Необходимо писать правила

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

– Необходим набор данных для обучения

Page 30: Ulanov nlp-5

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

Обучение с учителем

Вероятностная модель [Fellegi & Sunter 1969]

• Байесовское правило принятия решения

• 𝛼, 𝛽 𝜖 𝑀 если 𝑝 𝑀|𝑥 ≥ 𝑝 𝑈|𝑥

𝑈

• 𝛼, 𝛽 𝜖 𝑀 если

𝑝 𝑥|𝑀

𝑝 𝑥|𝑈=

𝑝 𝑥𝑖|𝑀𝑖=1..𝑛

𝑝 𝑥𝑖|𝑈𝑖=1..𝑛≥

𝑝 𝑈

𝑝 𝑀

𝑈

– 𝛼, 𝛽 – записи, 𝑥 = 𝑠𝑖𝑚 𝑎1, 𝑏1 …𝑠𝑖𝑚 𝑎𝑛, 𝑏𝑛 (обычно 0 и 1)

– 𝑝 𝑥𝑖|𝑀 и 𝑝 𝑥𝑖|𝑈 определяются на тренировочном наборе данных

– Необходимо определять порог

– Решения, близкие к порогу, отдавать человеку на проверку

Page 31: Ulanov nlp-5

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

Обучение с учителем

Попарная классификация

• SVM

– [Bilenko & Mooney, KDD03]

• Ансамбль классификаторов

– [Chen et al., SIGMOD09]

– Кроме решений других классификаторов происходит добавление контекстуальных признаков –

размер кластера и кол-во соседей

• Conditional Random Fields (CRF)

– [Gupta & Sarawagi, VLDB09]

• Проблемы

– Необходим набор данных для обучения

– Дисбаланс классов

– Большая стоимость ошибки

Page 32: Ulanov nlp-5

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

Обучение с учителем [Bilenko et al. 2003]

Page 33: Ulanov nlp-5

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

Сравнение программных пакетов [Koepcke et al. 2010]

• COSY – commercial system

• PPJoin+

– Cosine, Jaccard, ручной порог

• FEBRL - Freely Extensible Biomedical Record Linkage

– Winkler, Tokenset, Trigram ручной порог, а также SVM

• MARLIN - Multiply Adaptive Record Linkage with INduction)

– Edit distance, Cosine. SVM, деревья решений

Для 2х атрибутов – лучше обучение с учителем

Page 34: Ulanov nlp-5

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

Применение ограничений

Виды ограничений

• Транзитивность (для поиска дубликатов)

– Если M1 и M2, а также M2 и M3 совпадают, то M1 и M3 тоже совпадают

– Следствие: если M1 и M2, а также M2 и M3 не совпадают, то M1 и M3 не могут совпадать

• Эксклюзивность (для согласования данных)

– Если M1 и M2 совпадают, то M2 и M3 не могут совпадать

– Следствие: M3 может совпадать с M4

• Функциональная зависимость (для очистки данных)

– Если M1 и M2 совпадают, то M3 и M4 тоже совпадают

– Следствие: как в транзитивности

• В зависимости от данных

Page 35: Ulanov nlp-5

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

Применение ограничений при кластеризации

Дубликаты

Дано: попарные расстояния между записями. Найти: группы записей,

представляющих один и тот же объект

• Попарное сравнение может дать неполноценный результат (не выполняется транзитивность)

• Иногда транзитивность может быть вредной

• Кластеризация

– Иерархическая [Bilenko et al, ICDM 05]

– К-ближайщих соседей [Chaudhuri et al, ICDE 05]

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

• Сложность определения шага остановки кластеризации

Page 36: Ulanov nlp-5

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

Масштабируемость

Попарных сравнений может быть очень

много

Пример

• Население СПб 5*106 человек, сравнений будет

~25*1012. Если одно сравнение занимает 1 мкс, то

весь процесс займет 8 лет

Традиционное решение

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

которыми сравнение не будет произведено

– Minwise Independent Permutations (minHash),

SimHash (Google) (Jaccard)

– Canopies [McCallum et al., SIGKDD 2000]

– Зависящая от типа данных

Page 37: Ulanov nlp-5

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

Заключение и ссылки

Проблемы поиска дубликатов

На базовом уровне согласования двух БД проблему можно считать решенной

• Большие данные (Big Data)

• Гетерогенность данных

• Масштабируемость

Ссылки

• L. Getoor, A. Machanavajjhala. VLDB 2012 Tutorial on Entity Resolution

• Elmagarmid et al., Duplicate Record Detection: A Survey. IEEE Transactions on Knowledge and Data

Engineering, Vol. 19, No. 1. (January 2007) (все, что надо знать о поиске дубликатов на 16

страницах текста)

Page 38: Ulanov nlp-5

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

Содержание

Введение

Меры близости строк

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

Обучение с учителем

Масштабируемость

Page 39: Ulanov nlp-5

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

Спасибо!

[email protected]