извлечение объектов и фактов из текстов

49

description

 

Transcript of извлечение объектов и фактов из текстов

Татьяна Ландо Менеджер лингвистических проектов

Извлечение из текстов объектов и фактов (Text mining)

3

Natural Language Processing

•  Автоматическая обработка естественного языка

•  Искусственный интеллект

•  Тест Тьюринга

4

5

Natural Language Processing

•  Поиск (текстовый) / Information Retrieval (IR) •  Извлечение фактов / Information Extraction (IE) •  Диалоговые системы и Question Answering •  Синтез и распознавание речи •  Оценка тональности отзывов •  Кластеризация и классификация текстов •  …

6

Text Mining • Извлечение структурированной информации из неструктурированного текста

• Основная часть посвящена объектам, их отношениям и свойствам в текстах

• Состоит из: –  Named Entity Recognition (NER) извлечение именованных сущностей / объектов

–  Co-reference resolution Разрешение кореференции

–  Information Extraction (IE) Извлечение фактов

7

Named Entity Recognition (NER)

• Извлечение именованных сущностей Ранее "Коммерсантъ" и "Интерфакс" удалили со своих сайтов высказывание Пескова, где он объясняет, что Путин публично не произносит имени Алексея Навального, так как боится отдать ему часть своей популярности, сообщает justmedia.ru.

8

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

• Разрешение анафоры: поиск разных выражений указывающих на одну сущность

Ранее "Коммерсантъ" и "Интерфакс" удалили со своих сайтов высказывание Пескова, где ОН объясняет, что Путин публично не произносит имени Алексея Навального, так как боится отдать ЕМУ часть СВОЕЙ популярности, сообщает justmedia.ru.

9

Кореференция: “синонимы”

Разнообразные способы называния одного и того же • Транслитерация: Yandex – Яндекс • Аббревиация: ВТБ – Внешторгбанк – Банк Внешней Торговли

• Синонимы: больница – госпиталь • Словообразование: Москва – московский • Графические: авто кредит - автокредит

10

Information Extraction

•  Извлечение информации об отношениях между объектами или о значениях параметров.

Популярный блогер и основатель антикоррупционного проекта "РосПил" Алексей Навальный фигурирует в уголовном деле как советник губернатора Кировской области Никиты Белых.

person position org

Алексей Навальный основатель РосПил

Никита Белых губернатор Кировская область

11

Что извлекают?

Объекты: •  даты •  адреса •  телефоны •  ФИО •  название товара •  компании •  … Факты:

-  События -  Мнения и отзывы -  Контактные данные -  Объявления -  …

12

Теперь поговорим о технологиях

13

Первичная обработка текста На входе: текст на естественном языке Текст анализируется на всех лингвистических уровнях: •  лексическом •  морфологическом •  синтаксическом •  Семантическом

Различные уровни участвуют в разных процедурах анализа текста, которые входят в системы извлечения фактов.

14

Первичная обработка текста

Определение словарной формы слов и нормализация других объектов (числа, даты) Разбиение текста на абзацы, предложения, слова. Выявление связей между словами, объединение слов в неразрывные группы

текст

токенизация / графематика

лемматизация/ нормализация

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

разбор Снятие ом

онимии

15

Графематика

Разбиение текста на слова и предложения Яндекс.Маркет — сервис сравнения характеристик товаров и их цен Скоро начнется осенняя серия игр "Что? Где? Когда?".

16

Морфология

• Бывает словарная и автоматическая • Еще бывает:

– Part-of-Speech Tagging – Стемминг

стекло: Стекло – существительное в ед.ч, им.п./вин.п Стекать – глагол в прош. вр., ед.ч, сред. род

17

Синтаксис

• Бывает полный или частичный

• Они оба ошибаются, полный чаще

18

Снятие омонимии

• Снятие разнообразных неоднозначностей:

• Морфологическая: Молоко стекло со стола

• Синтаксическая: Он видел их семью своими глазами

• «Объектная»: Михаил Задорнов: «20% российских семей могут себе позволить ипотеку»

19

Information Extraction Выделение объектов и определение типов (NER): •  Иван Петров –> ФИО

•  3 апреля 1975 года –> дата

•  директор по маркетингу –> должность

•  ООО «Рога и копыта» -> компания

Установление связей между объектами (Factes) Директор по маркетингу компании «Рога и копыта» Иван Петров родился ровно 35 лет назад.

20

Пример

Вице-губернатор Новосибирской области Владимир Анисимов объявил, что в 2009 году в области планируется ввести в строй 979 тыс. кв. м

жилья. В ответ на вопрос председателя строительного комитета облсовета Александра Савельева, занимающего пост генерального

директора компании «КПД-Газстрой», руководитель профильного департамента обладминистрации сообщил, что за

государственный счет будет построено около 10 % заявленных площадей.

FIO  

FIO  

post  

post  

post  comp  

comp  

date  

number  

number  

geo  

21

Как извлекают?

• по онтологиям • опираясь на правила (Rule-based) • опираясь на машинное обучение (ML )

Наверное, сначала нужно поговорить про онтологии…

23

Онтологии

• «концептуальные словари»

•  структуры в которых описываются некоторые понятия и/или объекты, отношения между ними, их характеристики

• вообще-то это философский термин

24

Онтологии

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

• онтологии объектов (база данных) • онтологии концептов (понятий)

25

Онтологии

Примеры:

• Wikipedia, Dbpedia •  Imdb, Кинопоиск • CrunchBase • SUMO • DOLCE

26

IE с помощью онтологий

• Используют онтологии объектов • Используют открытые источники, сливают их в одну онтологию объектов с типами и свойствами. Например, «препарируют» википедию

• по тексту готовят гипотезы, опираясь на контексты и имеющиеся списки объектов (т.е. свою онтологию)

• разрешают неоднозначность опираясь на связи между объектами сразу по всему тексту

27

Разметим предложение Википедией

Президент РФ Владимир Путин считает, что высказывания в ЕС по поводу решения Киева приостановить процесс интеграции с Евросоюзом оказывают давление на Украину

http://ru.wikipedia.org/wiki/Президент …/wiki/Президент_Российской_Федерации …/wiki/Россия …/wiki/Владимир …/wiki/Владимир_Путин .../wiki/Высказывание …/wiki/В …/wiki/Европейский_союз …/wiki/По …wiki/Решение …wiki/Киев …/wiki/Процесс …/wiki/Интеграция …/wiki/С …/wiki/Европейский_союз …/wiki/Давление …/wiki/На …/wiki/Украина

28

IE с помощью онтологий

• получается высокая точность NER, нет случайных NE

•  снятие омонимии тоже происходит с высокой точностью

• низкая полнота: извлекается только то, что есть в онтологии

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

29

IE с помощью онтологий

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

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

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

• может использовать или не использовать лингвистическую информацию, т.е. подходить для любого «стиля» текста

30

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

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

• Дается обучающая выборка – набор данных, где объектам приписаны свойства. Характеристики, классы и т.п.

• Нужно определить зависимость, т.е. написать алгоритм, который для каждого нового объекта выдаст максимально точный ответ

31

Машинное обучение: пример

Девочки: • Мария Иванова • Дарья Петрова • Екатерина Сидорова

Мальчики: • Иван Пупкин • Алексей Уткин • Егор Иванов

Надо определить мальчик или девочка: • Олег Бойко • Ангелина Алексеева

32

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

•  извлекается как можно больше лингвистической информации о словах

•  размечается обучающее множество, на нем обучается система

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

33

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

•  не требует большого количества ручного труда по написанию правил

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

•  не требует детального описания каждого контекста (т.е. правил не только меньше, но они имеют более общий вид)

•  процедуры можно делать итеративными: простые правила -> факты –> более сложные правила т.е. правила можно извлекать автоматически

34

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

•  Недостаточно развиты инструменты для автоматической обработки, трудно получить лингвистические фичи (хорошо применимо для английского)

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

•  Сложно отследить в каком именно месте возникла ошибка и ее исправить «точечно»

35

Rule-based подход

• использует полный или частичный синтаксический анализ

• онтология категорий, т.е. указывается какие сущности могут обладать какими параметрами, например: компания – стоимость

• NER основанный на контекстах и внутренних структурах, контексты (шаблоны) составляются руками лингвистов

36

Rule-based NER

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

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

• для компаний: стоят в специфических контекстах, иногда упоминаются в кавычках, имеют специфические части (ООО, ЗАО,… )

37

Rule-based IE

• шаблоны поверх NER • в шаблонах записываются отношения, в которых могут находиться разные объекты, лингвистическая информация, которая может указывать на связь, конкретные слова, которые обозначают конкретные связи.

Владимир Ресин назначен и.о. мэра Москвы person (им.п.) назначен post(тв.п.) org(р.п.)

38

Что же выбрать?

• Начиналось все с шаблонов • Сейчас в моде онтологии и машинное обучение

• Выбор подхода определяется конкретной задачей

• А будущее все равно за гибридными системами.

39

Зачем все это?

•  Тэгирование новостных сообщений или сообщений в блогах. (NER)

•  Мониторинг новостей по персоне, компании, продукту (NER)

•  Мониторинг отношения прессы/блоггеров к событию, продукту (Facts)

•  Автоматическое составление календаря будущих событий с заполнением полей когда, где… (Facts)

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

•  Придумайте сами ;)

40

Тенденции

•  много систем для английского языка •  много онтологий, много лингв. инструментов •  простая морфология – проще настраивать машинное обучение

•  большой рынок •  NER гораздо больше чем NER + Facts •  крупные новостные сайты, тематические блоги •  Мнения по твиттеру, блогам… тоже на английском

41

Компании

•  OpenCalais – самый известный англоязычный ресурс

•  Сотни стартапов по всему миру делают IE для английского языка

•  Яндекс :) •  Google •  Ашманов, RCO и пр делают это с русским

42

Как мы делаем это в Яндексе?

• Машинное обучение • Онтологии • Инструмент для Rule-based подхода: Томита-парсер

Извлечение фактов в почте

Карты

Ул. Юных Ленинцев

Чулочно-носочные изделия

Новости

Поиск

Поиск

Яндекс.Работа

Татьяна Ландо

Менеджер проектов

Отдел лингвистических технологий

Спасибо!