PressPortrets

53
NLPseminar, Санкт-Петербург, 03 апреля 2010 года Менеджер проектов Татьяна Ландо Автоматическое извлечение фактов из текста на примере сервиса Яндекс.Пресс-портреты

description

 

Transcript of PressPortrets

Page 1: PressPortrets

NLPseminar, Санкт-Петербург, 03 апреля 2010 года

Менеджер проектовТатьяна Ландо

Автоматическое извлечение фактов из текста на примере сервиса Яндекс.Пресс-портреты

Page 2: PressPortrets

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

Page 3: PressPortrets

Что это такое?Извлечение фактов

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

— Выделение в тексте объектов— Приписывание объектам типов — Установление связей между объектами— Установление параметров объектов— Приписывание значений параметрам

Объект 1 Объект 2 Тип связи

Яндекс Льва Толстого, 16 находиться

Page 4: PressPortrets

Что извлекают?Извлечение фактов

— События и детали: дата, время, место проведения, название

— Мнения и отзывы: объект оценки и тональность

— Контактные данные с веб-страниц: email, skype, телефон, факс, адрес, …

— Объявления: объект, предлагаемое действие (покупка, продажа, …), …

— Другую специфическую информацию, например структуры белков из медицинских статей

Page 5: PressPortrets

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

Вице-губернатор Новосибирской области Владимир Анисимов объявил, что в 2009 году в области планируется ввести в строй 979 тыс. кв. м жилья. В ответ на вопрос председателя строительного комитета облсовета Александра Савельева, занимающего пост генерального директора компании «КПД-Газстрой», руководитель профильного департамента обладминистрации сообщил, что за государственный счет будет построено около 10 % заявленных площадей.

Пример

FIO

FIOpost

postpost

comp

comp

datenumber

number

geo

Page 6: PressPortrets

автоматическая обработка текстаИзвлечение фактов

На входе: текст на естественном языке

Текст анализируется на всех лингвистических уровнях:

— лексическом— морфологическом— синтаксическом— семантическом

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

Page 7: PressPortrets

автоматическая обработка текстаИзвлечение фактов

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

текст

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

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

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

разбор

Выявление связей между словами, объединение слов в неразрывные группы

Разбиение текста на абзацы, предложения, слова.

Page 8: PressPortrets

автоматическая обработка текстаИзвлечение фактов

Где же семантика?

Page 9: PressPortrets

Так вот, семантика…Извлечение фактов

— Определение типов объектов:

Иван Петров –> ФИО3 апреля 1975 года –> датадиректор по маркетингу –> должностьООО «Рога и копыта» -> компания

— Установление связей между объектами

Директор по маркетингу компании «Рога и копыта» Иван Петров родился ровно 35 лет назад.

Нет, это не магия!

Page 10: PressPortrets

Не_магия бывает:Извлечение фактов

— основанная на машинном обучении (в 3х словах)— извлекается как можно больше

лингвистической информации о словах

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

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

— основанная на правилах— шаблоны описываются вручную

Page 11: PressPortrets

Еще слайд про машинное обучениеИзвлечение фактов

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

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

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

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

Page 12: PressPortrets

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

Почему же им все не пользуются?

— Недостаточно развиты инструменты для автоматической обработки русского языка

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

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

Но никто не говорит, что машинное обучение – это не круто ;)

Page 13: PressPortrets

Извлечение фактов в Яндексе

Page 14: PressPortrets

Что выделяется?Извлечение фактов в Яндексе

— ФИОЯап де Хооп Схеффер

— КомпанииМинистерство иностранных дел

— АдресаЛюблинская улица, 153

— Даты 3 апреля 2010 года

Page 15: PressPortrets

В проекте Яндекс.Новостидля геопривязки сюжета

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

для извлечения адресов

Извлечение фактов в Яндексе

Page 16: PressPortrets

В поиске Яндекса: ФИОИзвлечение фактов в Яндексе

Page 17: PressPortrets

В проекте Яндекс.АдресаИзвлечение фактов в Яндексе

Page 18: PressPortrets

Яндекс.Пресс-портретыИзвлечение фактов в Яндексе

— справочная информация о людях, упоминаемых в российских СМИ:

— даты рождения и смерти— места работы и должности— ключевые слова/свободные определения

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

— http://news.yandex.ru/people/

Page 19: PressPortrets

http://news.yandex.ru/people/el1tsin_boris.html

Page 20: PressPortrets

Яндекс.Пресс-портреты технология

Page 21: PressPortrets

Как они составляются?Яндекс.Пресс-портреты

— на основе текстов новостных сообщений, предоставляемых партнерами проекта Яндекс.Новости

— полностью автоматически

1. извлечение фактов: система основанная на правилах

2. составление пресс-портретов: кластеризация фактов

— итак…

Page 22: PressPortrets

Как они составляются?Яндекс.Пресс-портреты

специализированный словарь

парсер

выделение объектов

нормализация объектов

составление фактов

база фактов

отождествление объектов

отождествление фактов

пресс-портреты

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

операци

и над

базой

ф

актов

изв

леч

ени

е ф

акто

в

текст

Page 23: PressPortrets

Выделение объектов: ФИОЯндекс.Пресс-портреты

— использование словарной информации: пометы в словаре для имен, отчеств, фамилий

— модуль для предсказания отчеств

— наличие фамилии в словаре необязательно

— несколько разных вхождений одного ФИО в тексте отождествляются(Владимир Путин; В. Путин; Владимир Владимирович, Вова Путин)

— разрешение родовой омонимии для именАлександр vs Александра

Page 24: PressPortrets

Выделение ФИО - курьезыЯндекс.Пресс-портреты

— Артемий Татьянович Лебедев— Вячеслав Нато

…Слава Нато……а вот НАТО - потенциальный освободитель…

— Малай Вишер…от 17-летнего жителя города Малая Вишера, который пострадал от милиционера.

— Александра Солженицына… профессор МГУ, лауреат премии Александра Солженицына и автор нескольких книг оригинальной прозы Алексей Варламов

Page 25: PressPortrets

Выделение компаний, должностей…(неразрывные цепочки)

Яндекс.Пресс-портреты

— Выделение ключевых слов«директор», «управление», «компания»

— Описание конструкций с этими ключевыми словами (в вершинах) – для описания различных должностей «директор по продажам», «управление по налогам и сборам»

— Описание взаимного расположения и согласования групп - для контекстного выделения компаний и свободных определенийПо словам Должность(gen) Компания (gen) ФИО (gen)Именная группа (nom) ФИО (nom)

По словам главного геолога ООО Бугурусланнефть Сергея КротоваЗнаменитый художник Илья Репин

Page 26: PressPortrets

Как они составляются?Яндекс.Пресс-портреты

словарьключевых слов

парсер

выделение объектов

нормализация объектов

составление фактов

база фактов

отождествление объектов

отождествление фактов

пресс-портреты

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

операци

и над

базой

ф

актов

изв

леч

ени

е ф

акто

в

текст

Page 27: PressPortrets

Инструменты: СловарьЯндекс.Пресс-портреты

— Словарь ключевых слов слова и словосочетания, на основании которых извлекаются факты, например должности

— Задаются списками слов или словосочетаний или специальными правилами

ЗГЛ= гео_долж{ СОСТАВ= (прокурор|губернатор|мэр|вице-мэр|вице-губернатор|

премьер-министр|премьер|вице-премьер|канцлер|вице-канцлер|госсекретарь|вице-президент)

ТИП_КС = post_geo }

Губернатор Ленинградской области

Page 28: PressPortrets

Как они составляются?Яндекс.Пресс-портреты

специализированный словарь

парсер

выделение объектов

нормализация объектов

составление фактов

база фактов

отождествление объектов

отождествление фактов

пресс-портреты

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

операци

и над

базой

ф

актов

изв

леч

ени

е ф

акто

в

текст

Page 29: PressPortrets

Инструменты: Томита-парсерЯндекс.Пресс-портреты

— язык описания синтаксических структур

— в основу парсера положен алгоритм Томиты, GLR-grammar, контекстно-свободная грамматика

— Терминалы:

—слова

—объекты (ФИО, даты, числа)

—словосочетания / из статей словаря

— Правила

Page 30: PressPortrets

Инструменты: Томита-парсерЯндекс.Пресс-портреты

— проверка согласования и выбора вершины(сопоставление текста с правилами грамматики)

— порождение всевозможных вариантов разбора цепочки и выбор лучшего

— связь со словарем (позволяет задать правило) ЗГЛ = _им_группа{ СОСТАВ = tomita:adj_noun.cxx } чемпионка мира по художественной гимнастике

— интерпретация результатов: сопоставление цепочек и полей фактов

Page 31: PressPortrets

ПримерЯндекс.Пресс-портреты

один из трех основных акционеров владелец 50% акций

PostOwner -> Word<kwtype=владелец_долж>;PostOwnerAdj -> NPAdjConj<gnc-agr[1]>* PostOwner<gnc-agr[1],rt>;PostOwnerBlock -> PostOwnerAdj (Word<kwtype=группа_процент>);PostP_ -> PostOwnerBlock interp (Fdo.Type = 'влад');PostP_ -> 'один'<rt> 'из' PostOwnerBlock<gram='рд,мн'> interp (Fdo.Type = 'влад');PostP -> PostP_ interp (Fdo.Post);

gnc-agr – согласование по роду числу и падежуrt – маркирует вершину группыkwtype=владелец_долж - отсылка на статью в словареNPAdjConj* – группа прилагательных (* - группа повторяется от 0 раз)

Page 32: PressPortrets

курьезы (имена изменены) Яндекс.Пресс-портреты

...По словам Марии Ивановой, овцы новой породы - своеобразные животные....

ФИО: Мария Иванова Статус – овца новой породы

...Милиция проводит проверку по факту задержания начальника отдела налоговой инспекции Ивана Петрова, подозреваемого в отстреле дикого козла, сообщил представитель МВД республики....

ФИО: Иван Петров Статус – подозреваемый в отстреле дикий козел

..."Компьюбобр" - так назвала свой гибрид чучела бобра и компьютера художница и изобретательница Кейси Макмэхон....

ФИО: Кейси Макмэхон Статус – гибрид чучела бобра и компьютера

Page 33: PressPortrets

Интерпретация и ФактыЯндекс.Пресс-портреты

— Факт состоит из какого-то набора полей, для каждого указывается: тип, обязательность, значение по умолчанию

fact_type Fdo{ fio Fio; text Post [info]; text CompanyName [h-reg1]; ~date TextDate; ~text Type = "Fdo"; }

— В грамматике указывается, какой элемент какого правила соответствует какому полю выделяемого факта

Page 34: PressPortrets

ПримерЯндекс.Пресс-портреты

один из трех основных акционеров владелец 50% акций

PostOwner -> Word<kwtype=владелец_долж>;PostOwnerAdj -> NPAdjConj<gnc-agr[1]>* PostOwner<gnc-agr[1],rt>;PostOwnerBlock -> PostOwnerAdj (Word<kwtype=группа_процент>);PostP_ -> PostOwnerBlock interp (Fdo.Type = 'влад');PostP_ -> 'один'<rt> 'из' PostOwnerBlock<gram='рд,мн'> interp (Fdo.Type = 'влад');PostP -> PostP_ interp (Fdo.Post);

gnc-agr – согласование по роду числу и падежуrt – маркирует вершину группыkwtype=владелец_долж - отсылка на статью в словареNPAdjConj* – группа прилагательных (* - группа повторяется от 0 раз)

Page 35: PressPortrets

СитуацииЯндекс.Пресс-портреты

— Фрагментационный анализ (факт собирается из частей предложения, которые могут быть неконтактными)

— работает в рамках клаузы — в вершине шаблона – глагол, для которого

указываются валентности— позиции при глаголе - актанты –

цепочки, распознанные грамматиками, заполняют глагольные валентности

— глаголы определяют типы ситуаций

Page 36: PressPortrets

СитуацииЯндекс.Пресс-портреты

— Дата рождения... Великий писатель, драматург, поэт Николай Гоголь родился 1 апреля 1809 года в Полтавской губернии....

— Дата смерти...4 марта 1852 года скончался писатель Николай Гоголь...

— НазначениеГлавой "Укравтодора" назначен Валерий Вощевский.

— ОтставкаНапомним, что вчера, 30 марта, экс-глава Запорожского областного совета Александр Нефедов сообщил ПОЛИТСОВЕТу, что подал в отставку.

Page 37: PressPortrets

Ситуации: примерЯндекс.Пресс-портреты

В четверг, 1 апреля, в Москве ушел из жизни депутат Госдумы от КПРФ Юрий Маслюков.

глагол

ФИО, nom дата место, loc

Page 38: PressPortrets

СитуацииЯндекс.Пресс-портреты

ЗГЛ = _умереть{ СОСТАВ = (умереть|погибнуть|скончаться|покончить с себя| застрелиться|повеситься|

уйти из жизнь) ЧР = г ТИП_КС = death_born_sit УПР1 = ВАЛ_ФИО:_валентности_назначений.УПР_ФИО_СУБ.ВАЛ_ФИО_СУБ

interp( FioBirthDeath.Fio;)ВАЛ_ДАТА( ( ТИП_КС = date_chain )

interp( FioBirthDeath.TextDate;FioBirthDeath.WasBorn = false;))

ВАЛ_ГЕО( ( ТИП_КС = geo ПРЕФИКС:СОСТАВ = (в|во|на|около) ) interp( FioBirthDeath.Geo; ) )

ПОРЯДОК ( (СЛЕД(ВАЛ_ФИО Х ВАЛ_ДАТА ВАЛ_ГЕО)) | (СЛЕД(ВАЛ_ФИО Х ВАЛ_ГЕО ВАЛ_ДАТА))| (СЛЕД(ВАЛ_ДАТА Х ВАЛ_ФИО ))) }

Page 39: PressPortrets

Как они составляются?Яндекс.Пресс-портреты

словарьключевых слов

парсер

выделение объектов

нормализация объектов

составление фактов

база фактов

отождествление объектов

отождествление фактов

пресс-портреты

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

операци

и над

базой

ф

актов

изв

леч

ени

е ф

акто

в

текст

Page 40: PressPortrets

нормализацияЯндекс.Пресс-портреты

— алгоритмом:

— сегодня -> 03.03.2010

— по словарю:

— замдиректора -> заместитель директора

— республика Саха -> Якутия

— по тексту

— МГУ -> Московский Государственный университет

— В. Садовничий –> Виктор Антонович Садовничий

Page 41: PressPortrets

Как они составляются?Яндекс.Пресс-портреты

словарьключевых слов

парсер

выделение объектов

нормализация объектов

составление фактов

база фактов

отождествление объектов

отождествление фактов

пресс-портреты

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

операци

и над

базой

ф

актов

изв

леч

ени

е ф

акто

в

текст

Page 42: PressPortrets

отождествление объектовЯндекс.Пресс-портреты

Два разных названия относятся могут обозначать один объект или нет?

— Компании:— морфология: Зенит vs Зенита— транслитерация: Яндекс vs Yandex— сокращения и сравнение строк:

Министерство экономического развития России,минэкономразвития, мэрт

— Должности и статусы— нечеткое сравнение строк:

мастер спорта vs мастер своего дела— использование синонимов

глава – руководитель, автор - создатель

Page 43: PressPortrets

отождествление фактовЯндекс.Пресс-портреты

Два факта из разных документов тождественны или нет?

— ФДО факты:

—Тождественны ли ФИО после нормализации?

—Тождественны ли компании?

—Похожи ли должности?

— Статусные факты:

—Тождественны ли ФИО?

—Похожи ли статусы?

Page 44: PressPortrets

Как они составляются?Яндекс.Пресс-портреты

словарьключевых слов

парсер

выделение объектов

нормализация объектов

составление фактов

база фактов

отождествление объектов

отождествление фактов

пресс-портреты

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

операци

и над

базой

ф

актов

изв

леч

ени

е ф

акто

в

текст

Page 45: PressPortrets

отождествление объектов: примерЯндекс.Пресс-портреты

Doc 1:…председатель правления Siemens Петер Лешер…

Doc 2:…председатель правления концерна Сименс АГ Петер Лешер…

Siemens = Сименс АГ

В базе фактов прописывается эквивалентность названий

Page 46: PressPortrets

отождествление объектовЯндекс.Пресс-портреты

Самое сложное:

— Леонид Меламед – АФК «Система», президент

— Леонид Меламед – Российская корпорация нанотехнологий, генеральный директор

— Александр Володарский – художник

— Александр Володарский – общественный деятель

Page 47: PressPortrets

объединение фактов в пресс-портретЯндекс.Пресс-портреты

— Факты объединяются в пресс-портреты по:

—совпадению нормализованного имени

—совместной встречаемости в рамках одного документа

—вхождению одного факта (признанного тождественным) в несколько документов

— Это делается большим и сложным алгоритмом кластеризации.

Page 48: PressPortrets

совсем не про лингвистику,но всем интересно

Яндекс.Пресс-портреты

— Как выбираются фотографии к пресс-портретам?

—специальный запрос к Яндекс.Картинкам, учитывающий основные факты и ФИО

—фильтр на содержание лица на картинке

—за все остальное отвечает поиск по картинкам

Page 49: PressPortrets

фотографияЯндекс.Пресс-портреты

Этот алгоритм работает очень хорошо!

Почти всегда!

Page 50: PressPortrets

вместо заключенияЯндекс.Пресс-портреты

— Идеальный пресс-портрет это:

—полностью правильно нормализованное ФИО—полностью правильно извлеченные факты—в пресс-портрет входят факты только про одного

человека—все факты про этого человека входят в один

пресс-портрет —и фотография тоже правильная

— Идеал недостижим.

— Но мы очень стараемся!

Page 51: PressPortrets

где почитать?Яндекс.Пресс-портреты

Text Mining, Information and Fact Extraction Marie-Francine Moens (Katholieke Universiteit Leuven) http://romip.ru/russir2008/program.html#tmife

Материалы конференции «Диалог» http://dialog-21.ru

Статья в Википедии о Мосару Томитаhttp://en.wikipedia.org/wiki/Masaru_Tomita

Page 52: PressPortrets

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

[email protected]

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

Page 53: PressPortrets

Спасибо за вопрос!Яндекс.Пресс-портреты

Все составляется абсолютно автоматически!