3.39M
Категория: ИнформатикаИнформатика

Этапы обработки текста. Часть 2

1.

Этапы обработки
текста. Часть 2
Грацианова Татьяна Юрьевна
Ефремова Наталья Эрнестовна

2.

Содержание
Повторение
Синтаксический анализ
Подходы к построению парсеров
Примеры парсеров
Семантический анализ
Модели представления смысла
Примеры семантических
анализаторов
Домашнее задание
Информация для домашнего изучения
2

3.

Повторение (1)
Что такое:
графема
сегментация нижнего уровня
сегментация высокого уровня
токен
токенизация
В чем состоит основная особенность
графематического анализа?
Сколько токенов в данном предложении:
Он дал полное описание в своих публикациях «A Formal
Theory of Inductive Inference», часть 1 и 2 в журнале
«Information and Control»[2][3], сделанных в 1964 году.
3

4.

Повторение (2)
Приведите пример
словоформы
леммы и лексемы
основы и псевдоосновы
словоизменительной парадигмы
словоизменительного класса
Чем отличаются морфопроцессоры?
Проведите для слов косой и побежу
теггинг
стемминг
лемматизацию
полный морфологический разбор
4

5.

Повторение (3.1)
Задача синтаксического анализа – установление
связей между словами, а также типов этих связей
Единица обработки – предложение (выражает
законченную мысль)
На входе: результат морфологического анализа
На выходе: синтаксическая структура
предложения
Что в размеченном дереве составляющих
является листьями, поддеревьями, дугами?
Что в дереве зависимостей является листьями,
поддеревьями, дугами?
5

6.

Повторение (3.2)
Нарисовать дерево составляющих и дерево
зависимостей:
В предложении естественного языка часто
интуитивно ощущается «главенствование»
некоторого словосочетания над другими.
Сколько различных деревьев зависимостей
возможны для фраз:
Простой солдат вызвал суматоху.
Определить проективность предложений:
Очень они хорошие были люди.
Самые важные уроки без слов преподаются.
Чей крик послышался призывный?
6

7.

Парсеры: подходы к
построению
● Парсер – синтаксический анализатор
● Грамматики и правила строятся:
экспертами-лингвистами
по размеченному корпусу
● Грамматики и правила могут быть встроены в
парсер или записаны отдельно
● Классы алгоритмов:
детерминированные
многовариантные: тем или иным способом
перебирают варианты анализа, для
ранжирования гипотез используют эвристики
7

8.

Построение ДС
Стандартные алгоритмы обработки контекстносвободных грамматик (КС-грамматик)
Адаптированный для ДС алгоритм на основе
переходов
Sequence-to-sequence преобразование –
преобразование предложения из
последовательности слов в дерево
(=последовательность) составляющих
8

9.

Построение ДС.
Стандартные алгоритмы
Грамматика описывается с помощью
разновидностей КС-грамматик (вероятностные,
лексикализованные и т.д.)
Грамматика обрабатывается с помощью
стандартных алгоритмов: нисходящие,
восходящие, комбинированные (алгоритм КокаЯнгера-Касами, Эрли и т.п.)
в общем случае получаем
недетерминированный разбор с возвратами
Для уменьшения количества вариантов разбора
может использоваться предобработка (оценка
вероятностей контекстов, назначение меток и пр.)
9

10.

Построение ДЗ
Адаптированные для ДЗ стандартные алгоритмы
обработки контекстно-свободных грамматик
Алгоритм на основе фильтров: применяются все
правила установления связей, потом
некорректные деревья отбрасываются
Алгоритм на основе переходов: анализируем 2
слова и решаем, устанавливать между ними
связь или нет
Алгоритм на основе графов (расширение
алгоритма Чу-Лю/Эдмондса): сначала соединяем
все вершины, потом находим наиболее
вероятное дерево, затем назначаем метки
10

11.

Доклад Анастасии Коваленко
11

12.

Алгоритм на основе
переходов. Дополнение
Базовая версия алгоритма:
обрабатывает корректно только проективные
предложения (есть модификации с переходом Swap)
является жадной (нет гарантии получения
оптимального и правильного дерева)
Современные реализации:
классификаторы – нейронные сети
могут использовать при обучении все предложение
сразу (учет не только локального контекста)
12

13.

Синтаксис aot.ru
Синтаксический анализ на основе синтаксических
групп (гибридная модель синтаксиса)
Особенности: нет цели получить полную
синтаксическую структуру предложения
Синтаксические правила представлены
процедурно
13

14.

Примеры работы парсера
из NLTK
from nltk import parse
parse.chart.demo(choice=None, print_times=True,
print_grammar=False, print_trees=True, trace=2,
sent='I saw John with a dog with my cookie',
numparses=5)
(S
(NP I)
(VP
(VP (Verb saw) (NP (NP John) (PP with (NP (Det a) (Noun dog)))))
(PP with (NP (Det my) (Noun cookie)))))
(S
(NP I)
(VP
(VP (VP (Verb saw) (NP John)) (PP with (NP (Det a) (Noun dog))))
(PP with (NP (Det my) (Noun cookie)))))
14

15.

Синтаксический анализ:
выводы (1)
Для отдельных предложений возможно более одного
правильного дерева
Мать любит дочь.
Иногда получить различные деревья можно только
при привлечении семантики
Вася встретил Петю в коридоре.
Вася встретил Петю в костюме.
В идеале, нужно учитывать контексты различных
уровней: соседних слов, предложения, абзаца, …
Парсеры могут (а должны?) выдавать одно или все
возможные деревья СА (но не все они верны)
Объем грамматики и число правил зависят от того,
привлекается ли дополнительная информация,
например, словарь
15

16.

Синтаксический анализ:
выводы (2)
Для деревьев составляющих оценивают полноту,
точность, F-меру и т.д. верно помеченных в рамках
предложения составляющих (правильно указано
начало, конец и нетерминальный символ)
Для деревьев зависимостей оценивают
(https://github.com/natasha/slovnet):
процент слов, для которых правильно определено,
что они корень – unlabeled attachment score (UAS)
процент слов c правильно определенной
родительской вершиной и типом зависимости –
labeled attachment score (LAS)
Современность – привлечение нейронных сетей
16

17.

Этапы обработки текста
Уровни обработки уровни языковой системы
Лингвистический процессор – многоэтапный
преобразователь
Текст
This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture. This is a text that represents the
meaning shown in the right part of the
picture.
Смысл
Язык
Морфологический
модуль
Синтаксический
модуль
Семантический
модуль
Поверхностное
представление
Внутреннее
представление
Морфологическое
представление
Синтаксическое
представление
17

18.

Семантический анализ
Семантика – раздел лингвистики, изучающий
смысловое значение единиц языка
Семантический анализ – самый сложный и наименее
проработан в КЛ этап, поскольку:
нет точного определения термина
его смысл зависит от решаемой задачи
Предполагает устранение языковых особенностей,
культурных контекстов, понимание текста
Критерии понимания текста:
свободное оперирование идеями и фактами
возможность передачи содержания своими
словами
умение сжато резюмировать содержание и т.д.
18

19.

Языковые особенности. Пример
19
Does Maharani have vegetarian dishes?
Do they have vegetarian food at Maharani?
Are vegetarian dishes served at Maharani?
Does Maharani serve vegetarian fare?
Jim killed his philodendron.
Jim did something to cause his philodendron to
become not alive
Вчера получено письмо.
Письмо получено вчера.

Ты меня любишь!
Ты меня любишь?
19

20.

Задачи семантического
анализа
1. Построение семантических интерпретаций единиц текста
(слов и более сложных конструкций)
2. Установление между ними семантических отношений
3. Формирование семантического представления (структуры)
исходного текста
Выделяют локальный (уровень предложения) и
глобальный (уровень текста) семантический анализ
Единица обработки: предложение/текст
На входе:
синтаксическое дерево/деревья
На выходе:
семантическая структура
Формальное представление семантической структуры – на
основе моделей представления знаний
Разные задачи => разные определения семантического
анализа => разные модели представления знаний
20

21.

Представление семантики
текста. Пример
21

22.

Модели представления
знаний
Модель компонентного анализа
Слово – вектор семантических признаков
Модель семантических классов
Слова объединяются в классы по смыслу,
между ними устанавливаются отношения
Модель семантических
отношений
Слово в предложении обладает
определенной ролью, слова связаны между
собой отношениями
Реляционно-ситуационная
модель
Слова в предложениях имеют отношения,
предложения – семантический граф
Формально-логическая модель
Предложения – формулы математической
логики
Математическая модель В.А.
Тузова
Предложения – формулы, учитывающие
время и отношения между объектами
Семантическая модель в рамках Предложение => предложение из простых
теории «Смысл ⇔ Текст»
терминов => формула
Дистрибутивная семантика
Слова/предложения/абзацы/… – эмбеддинги
22

23.

Доклад Станислава Уразова про
теорию «Смысл ⇔ Текст»

24.

Локальный семантический
анализ
Задача: по синтаксическому дереву предложения
построить его семантическую структуру
Определение семантики слов/словосочетаний
разрешение лексической многозначности слов
определение их семантических классов
Установление семантических отношений между ними
Основные подходы: словари и правила, МО
Центральный компонент большинства алгоритмов –
семантический словарь, где каждой лемме приписаны
некие знания о мире:
ее толкование (смысл)
семантические классы слов
семантические модели управления (для словпредикатов)
24

25.

Определение семантики.
Разрешение многозначности
У слова может быть несколько значений (смыслов),
необходимо выбрать одно
Значения могут быть получены:
из лингвистических ресурсов: словари, корпуса
путем кластеризации значений: разделение
употреблений слова на группы, соответствующие
разным значениям
Вообще, значение слова определяет часть речи,
контекст употребления, смысл текста, предметная
области
Задача впервые была сформулирована в 40-е годы в
связи с задачей машинного перевода
салат из языка – salad from language
юбка с запахом – the skirt with a smell
25

26.

Определение семантики слова.
Семантические классы
Семантический класс – это совокупность слов,
значения которых соотносятся с одним и тем же
явлением или понятием окружающей
действительности
вода, кофе, чай, сок, компот, … : НАПИТОК
Характеристики позволяют учесть семантическую
сочетаемость: пить (что?) НАПИТОК
Одно слово может относится к нескольким
семантическим классам
кофе: РАСТЕНИЕ, НАПИТОК, ЦВЕТ
Нет универсальной системы классов: их список
разнится для разных подходов/областей/систем
26

27.

Семантические отношения
В предложение есть слова-предикаты,
описывающие действие/ситуацию/состояние, в
котором есть участники (обязательные и
необязательные)
Эти слова находятся в определенных
отношениях (связях) со словом-предикатом (что
записано в словаре в виде модели управления)
Семантика предложения описывается через
отношения слова-предиката, являющегося
корнем, с остальными словами в предложении
В 1968 году Ч. Филлмор предложил набор
отношений (ролей) – семантические падежи
27

28.

Семантические падежи Ч.
Филлмора
Название
Агентив
Объектив
Инструменталис
Датив
Фактив
Локатив
Описание
производитель действия
предмет, затрагиваемый
действием
сила/предмет,
вовлеченная в действие
одушевленное существо,
затронутое действием
предмет/существо,
создаваемое действием
местоположение или
пространственная
ориентация действия
Пример
Ребёнок гуляет
Мяч разбил окно
Мальчик разбил
окно мячом
Девочке подарили
куклу
Мама сварила суп
Отец повесил
пиджак в шкаф
28

29.

Семантические отношения.
Пример
ходить: кто? откуда? куда? где? как часто?
Я редко ходил с работы домой через этот парк
Кто ходил – субъект (агентив)
Откуда ходил – исходная точка (локатив)
Куда ходил – конечная точка (локатив)
Где ходил – путь (локатив)
Как часто ходил – периодичность (темпоратив?)
Вообще, система и количество семантических
отношений зависит от: цели разработки
семантического описания (в aot.ru 50 отношений),
предметной области текста и др.

30.

Семантическая модель
управления
Описывает отношения слова-предиката с другими
словами в предложении
Для различения того, какие слова/словосочетания к
чему относить, используются приписанные им
семантические классы
Кто?
Агентив
(субъект)
Откуда?
Локатив
(исходная
точка)
ЧЕЛОВЕК МЕСТО
Куда?
Где?
Как часто?
Локатив Локатив Темпоратив
(конечная (путь)
(периодичность)
точка)
МЕСТО
МЕСТО ВРЕМЯ
У нас Исходная точка, Конечная точка и Путь –
МЕСТО. Как различать их?
Используем синтаксическую информацию
30

31.

Семантико-синтаксическая
модель управления
Я редко ходил с работы домой через этот парк
По этой тропинке постоянно ходит мой пес
Кто?
Откуда?
Куда?
Где?
Как часто?
Агентив
(субъект)
Локатив
(конечная
точка)
МЕСТО
сущ. ВП
Локатив
(путь)
СУБЪЕКТ
сущ. ИП
Локатив
(исходная
точка)
МЕСТО
с + сущ. РП
Темпоратив
(периодичность)
ВРЕМЯ
наречие
предикатсубъект
обстоятельство
обстоятельство
МЕСТО
через + сущ.
ВП
по + сущ. ДП
обстоятельство определение
31

32.

Примеры о важности семантических
классов и моделей управления
Вася встретил Петю в коридоре.
Вася встретил Петю в костюме.
Кто?
Кого?
сущ. ИП
сущ. РП
ЧЕЛОВЕК ЧЕЛОВЕК
Где?
в + сущ. ПП
МЕСТО
В чем?
в + сущ. ПП
ОДЕЖДА
Декан назначен ректором
Кто?
Кем?
Субъект Объект
сущ. ИП
сущ. РП
ЧЕЛОВЕК ЧЕЛОВЕК
Кто?
Кем?
Объект
Субъект
сущ. ИП
сущ. РП
ЧЕЛОВЕК ЧЕЛОВЕК
32

33.

Построение семантической
структуры предложения
Общий ход построения (один из вариантов):
1. Замена слов в узлах синтаксического дерева
на их семантические классы
2. Анализ обязательных синтаксических связей,
учет семантической модели управления
3. Интерпретация остальных связей
При этом не все узлы синтаксического дерева
становятся узлами семантического графа,
некоторые переходят в смысловые отношения:
быть, кстати
33

34.

Семантика aot.ru: пример
Построение размеченного поверхностносемантического графа на основе правил
(http://aot.ru/demo/graph.html)
34

35.

Глубинный (глобальный)
семантический анализ
Текст рассматривается целиком (до этого может и не
пройти локальный анализ)
Связный текст представляет собой структурносемантическое единство; при этом есть
Локальная связность (предложений) выражается с
помощью определенных языковых средств
Глобальная связность (целостность):
тематическая, содержательная, композиционная,
дискурсивная, прагматическая
Цель (глобально): Что хотел сказать автор? Кому он
это хотел сказать? Как он это сделал? Правильно ли
он это сделал?
Используемые методы: от правил и словарей до МО
35

36.

Лексико-синтаксические
средства связи предложений
Анафорические отсылки – указывают на
предшествующее слово/слова:
На берегу стоял дом. В нем жил лесник.
Эллипсис – пропуск подразумеваемой языковой
единицы, который может быть восполнен:
Таня любит лимонад, а Вера – мороженное.
Лексические повторы – повторения языковых
единиц (точные, синонимичные: собака/пес):
Я читала эту книгу. Книга была интересной.
Дискурсивные слова и словосочетания:
так как, потому, наоборот, однако, в общем…
Он ушел, поскольку не хотел этого видеть.
36

37.

Кореферентность
Референт – объект (ситуация) внеязыковой
действительности, который имеет в виду говорящий
Кореферентность – отношение
слов/словосочетаний, которые обозначают один и тот
же внеязыковой объект (референт)
Кореферентность часто, но не всегда, выражается
анафорической ссылкой:
Екатерина II правила… Царица любила…
Задача разрешения кореференции: найти все
упоминания и указать, какие из них относятся к
одному и тому же референту
Используемые методы: от правил и словарей до МО
(например, задача кластеризации упоминаний)
37

38.

Локальная связность
текста. Пример

39.

Локальная связность
текста. Упражнение
В заданном связном тексте указать и кратко пояснить
межфразовые связи:
Жили-были дед да баба. И была у них Курочка Ряба.
Снесла курочка яичко, да не простое - золотое.
Дед бил - не разбил.
Баба била - не разбила.
А мышка бежала, хвостиком махнула, яичко упало и
разбилось.
Плачет дед, плачет баба и говорит им Курочка Ряба:
- Не плачь, дед, не плачь, баба: снесу вам новое яичко
не золотое, а простое!
39

40.

Глобальная связанность
текста. Дискурсивный анализ
Джон сел на поезд из Парижа в Стамбул. Он любит
шпинат.
Дискурс – коммуникативное явление, включающее
создание определенного текста (с учетом его
назначения/функции/цели)
Анализ может включать:
Какие приложения?
проверка соответствия текста жанру
изучение развития темы и связи между
предложениями
выявление того, что думает говорящий, на
основании того, как он говорит и пр.
Подходы:
Лингвистическая информация и правила
МО: есть размеченные тексты, есть просто тексты
40

41.

Дискурсивный анализ
сказки «Курочка Ряба»
Почему плачут дед и баба?
Что символизирует золото?
В чем мораль сказки?
Мнения исследователей:
золотое яйцо – архетип Мирового Яйца, из которого
рождается все сущее
описана космогоническая модель мира: Верхний –
космическое яйцо, средний – дед и бабка, и нижний –
мышь, жительница подземного царства
золотое яйцо – дар бога Аполлона, прекрасный, но
бесплодный, простое яйцо – символ вечного
возвращения жизни
золотое яйцо – символ смерти, простое яйцо –
обещание жизни
41

42.

Упражнение. Поясните значение
дискурсивных слов и частиц
ведь
так вот
кстати
-ка
Ты ведь туда уже ходил – Ты знаешь, и я знаю, что
ты туда ходил, но, наверное, ты об этом забыл, и я
хочу тебе напомнить об этом, при этом я
удивляюсь, потому что я считаю, что ты об этом
должен бы был помнить
Так вот – Слушай меня внимательно, сейчас будет
самое важное
Кстати – А сейчас я делаю отступление, это менее
важно, имейте в виду, но скоро я вернусь к важному
Сделай-ка
42

43.

Модели представления
знаний
Модель компонентного анализа
Слово – вектор семантических признаков
Модель семантических классов
Слова объединяются в классы по смыслу,
между ними устанавливаются отношения
Модель семантических
отношений
Слово в предложении обладает
определенной ролью, слова связаны между
собой отношениями
Реляционно-ситуационная
модель
Слова в предложениях имеют отношения,
предложения – семантический граф
Формально-логическая модель
Предложения – формулы математической
логики
Математическая модель В.А.
Тузова
Предложения – формулы, учитывающие
время и отношения между объектами
Семантическая модель в рамках Предложение => предложение из простых
теории «Смысл ⇔ Текст»
терминов => формула
Дистрибутивная семантика
Слова/предложения/абзацы/… – эмбеддинги
43

44.

Еще раз про
семантику слов
Лексическая семантика
семантика на уровне языка
смысл слова передается через определение и его
соотношение с другими словами: синонимия,
семантические классы и роли, семантические
модели управления
Векторная семантика
семантика на уровне текста
тексты похожи, если в них встречаются одинаковые
слова
а еще слова могут быть
похожи, потому что они
встречаются в
похожих текстах
одинаковых контекстах
44

45.

Семантика слов. Пример
У меня ? настроение
Я пью ? каждое утро
Кандидат ? наук
Что можно сказать о словах, которыми можно
заполнить пропуски?

46.

Дистрибутивная (векторная)
семантика
Гипотеза: слова имеют сходство в значении, если
они употребляются в схожих контекстах
Основа – изучение контекста (дистрибуции) единиц
(слов/словосочетаний) в тексте
Статистическая информация о взаимной
встречаемости собирается по коллекция текстов
Информация о контексте представляется в виде
многомерных векторов – эмбеддингов
Эмбеддинги соответствуют единицам текста,
измерения соответствуют контекстам
Множество эмбеддингов образуют словесное
векторное пространство
В итоге имеем дистрибутивную модель
46

47.

Параметры дистрибутивных
моделей
Способ построения
Контекст: размер контекста,
правый или левый контекст, …
Оценка частоты встречаемости
слова в данном контексте:
абсолютная частота, TF-IDF, PMI, …
Метод уменьшения размерности
матрицы: случайная проекция,
сингулярное разложение,
случайное индексирование, ...
Мера расстояния между
эмбеддингами: скалярное
произведение, косинусная мера,
расстояние Минковского, …
47

48.

Свойства эмбеддингов
Дистрибутивная модель учитывает только статистические
свойства коллекций текстов, но
Оказывается, что она может улавливать некоторые
синтаксические и семантические связи
В частности, можно выявить слова с общими элементами
смысла (семами): синонимы, антонимы, слова одного
семантического класса
Т.е. векторы слов, имеющих общие контексты в
коллекции, близки в построенном пространстве
*Модель на
основе word2vec
48

49.

Пример: группы схожих
слов из Google News*
*Модель на основе word2vec

50.

Пример: эмбеддинг для
слова «king»*
[ 0.50451, 0.68607, -0.59517, -0.022801, 0.60046,
-0.13498, -0.08813, 0.47377, -0.61798, -0.31012,
-0.076666, 1.493,
-0.034189, -0.98173, 0.68229,
0.81722, -0.51874, -0.31503, -0.55809 , 0.66421,
0.1961, -0.13495, -0.11476, -0.30344, 0.41177,
-2.223,
-1.0756, -1.0783,
-0.34354 , 0.33505,
1.9927, -0.04234, -0.64319, 0.71125, 0.49159,
0.16754, 0.34344, -0.25663, -0.8523,
0.1661,
0.40102, 1.1685, -1.0137,
-0.21585, -0.15155,
0.78321, -0.91241, -1.6106,
-0.64426 , -0.51042 ]
*Модель на основе Glove
50

51.

Пример: сопоставление
эмбеддингов
2
3
4
5
1*
6
*Смысл имеют только расстояния между векторами, а не
сами вектора
51

52.

Примеры операций над
эмбеддингами
Поиск квази-синонимов: лампа => ночник
Поиск аналогий (семантических отношений):
Москва => Россия, Рига => ???
Поиск неявных ассоциаций:
цветок
красота 0,353
опасность 0,060
насекомое
красота 0,117
опасность 0,262
Арифметические операции:
стул – спинка = табуретка
юноша – ум = 17-летний, мальчик, девушка 0,39
Вычисление семантического сходства:
ножка
стул
0,485
ножка
курица
0,240
52

53.

Более сложные операции:
пример
53

54.

Семантический анализ
(СА): вывод
Этап СА – один из наиболее неоднозначных этапов
обработки текста
Локальный СА опирается на структуру предложения,
выявляемую в ходе синтаксического анализа
Глобальный СА связывает результаты анализа
отдельных предложений
Нет оценивания качества СА в целом. Есть
оценивание подзадач: определение семантических
классов, разрешение кореференции и пр.
Современность – нейронные сети
Эмбеддинги для словосочетаний/предложений/
абзацев/… могут строится по-разному: конкатенация,
усреднение, с помощью нейронной сети и т.д.
54

55.

Домашнее задание
1. Подготовка к СР по этапам анализа текста
2. Выполнение задания
Вариант A. Исследовать ресурс FrameNet (или
подобные ему). Перевести один из фреймов.
Вариант B. Описать один из способов
построения дистрибутивной модели: модель
векторных пространств, латентно-семантический
анализ, тематическое моделирование,
предсказательные модели (word2vec, fastText,
Elmo, doc2vec), hyperspace Analogue to
Language, syntax- or dependency-based models,
random indexing, semantic folding; Glove (?)
55

56.

Спасибо за внимание!
English     Русский Правила