Автоматический синтаксический анализ задачи NLP, в которых может быть нужен синтаксический анализ общее представление о формализмах автоматического синтаксического анализа лингвистические проблемы синтаксического анализа формальные системы для реализации синтаксической разметки примеры алгоритмов: алгоритмы для построения деревьев НС Linked Grammar Parser – пример Зачем Снятие морфологической омонимии Проверка правописания Вопросно-ответные системы Извлечение фактов Некоторые задачи автоматического реферирования Генерация текста Анализ мнений (opinion mining) Речевые технологии ??? Создание трибанков – корпусов с синтаксической аннотацией Зачем Борьба с неоднозначностью: морфология Зачем • Борьба с неоднозначностью морфология: о довольной собой школьнице vs. К довольной собой школьнице vs. не встречал такой довольной собой школьницы; Мне грустно vs. Он грустно молчал vs. Это грустно – лемматизация: Три товарища vs. Три более тщательно Глухой забор vs. Общество глухих – Зачем Проверка правописания: границы оборотов, отделяемых запятыми Урсус жил в балагане на колесах, который Гомо, достаточно вышколенный для этого, возил днем и стерег ночью Дом, который построил Свифт — телевизионный художественный фильм 1982 года режиссёра Марка Захарова. Зачем Выделение терминологических словосочетаний (коллокаций) • Начальник отдела по борьбе ... vs. • Он полз по земле Уполномоченный президента в Краснодарском крае vs. В краснодарском крае произошло ... • Зачем Вопросно-ответные системы: Кто был отправлен в командировку Петровым? Кто отправил в командировку Петрова? Зачем Границы именованных сущностей: Общество по защите прав потребителей в Екатеринбурге Грамотную защиту прав потребителей осуществит юридическая фирма «Манаенков и партнеры». Зачем Извлечение фактов: • http://viewer.opencalais.com/ Извлечение мнений: ... неполхой зум, большой экран, Хотелось бы оценить устройство зарядки и прочность корпуса. Недостатки: Макросъемка оставляет желать лучшего. Извлечение онтологических знаний – автоматическое построение тезаурусов и онтологий Зачем Алгоритмический машинный перевод Зачем Разметка корпусов – Трибанки 1) собственно лингвистические исследования (частотность тех или иных конструкций, допустимость конструкций, ср. безвершинные относительные обороты, контроль деепричастных оборотов и т.п., виды эллипсиса) 2) тренировка синтаксических анализаторов – технологии машинного обучения Формализмы для синтаксического представления. Подзадачи определение единиц синтаксического описания фиксация синтаксических связей между этими единицами определения типа связи / функции синтаксического элемента Формализмы для синтаксического представления грамматика зависимостей; грамматика непосредственных составляющих; грамматика структурных схем; традиционные синтаксические учения о членах предложения; функциональная грамматика; семантический синтаксис; и др. Формализмы для синтаксического представления Аспекты реализации Примеры синтаксический разметки. Пример 1. aot.ru Примеры синтаксический разметки. Пример 2. Грамматика зависимостей. Connexor Примеры синтаксический разметки. Грамматика зависимостей. Пример 2. Connexor Примеры синтаксический разметки. Пример 3. НС. Проект VISL Проблемы синтаксической разметки 1) Синтаксическая омонимия Торговка вяленной воблой торчала между ящиками Омонимия при синтаксическом анализе Омонимия 1 Я увидел девочку с куклой в руках Я увидел дом с деревом около реки Служанке хозяйки, стоявшей на балконе / которая стояла на балконе Я люблю только красные яблоки Я люблю красные яблоки и груши Омонимия 2 Мать любит дочь Такие типы стали есть в цехе Омонимия 3. Синтаксические метки Мне нравятся фотографии Головина Проблемы синтаксического анализа. «Пустые узлы» 3 Петя очень аккуратный Петя обещал это сделать, когда придет Он любит красные яблоки и груши Петя любит красные яблоки, а Вася зеленые НПО «Диктум» разрабатывает синтаксический анализ Проблемы синтаксического анализа 4. Порядок слов Он из Германии туманной привез учености плоды Посадил дед репку Посадил репку дед Проблемы синтаксического анализа 5. Представимость в выбранном формализме ? Непроективность – разрыв и перемещение составляющих Порядок объединения в синтаксические группы Требование единственности вершины Требование бинарности Используемые синтаксические представления: Грамматики зависимостей не дают возможности удобного представления словосочетаний как единиц анализа, а также соединения тех структур, которые по своей природе не являются зависящими друг от друга, например, сочинительных конструкций. Феноменом английской грамматики, демонстрирующим неудобство простого аппарата непосредственных составляющих, является возможность передвижения послеглагольных частиц: He called up his mother. He called her up twice a week. Формальные системы для реализации синтаксической разметки Грамматика конечных автоматов (Finite-State Transition Network) Контекстно-свободные грамматики Расширенные сети переходов ATN Категориальные грамматики Унификационные грамматики (Link Parser Grammar) Tree Adjoining Grammar Контекстно-свободные грамматики Синтаксис КС-правил очень прост, однако для описания многих феноменов ЕЯ простого аппарата КС-грамматики оказывается недостаточно. В частности, контекстно-свободными правилами неудобно описывать согласование (например, в лице и числе между подлежащим и сказуемым). КСаппарат неудобен также для отображения разорванных зависимостей (long-distance dependencies), вызванных передвижением слов по фразе, или для описания отсутствия составляющих (deletion). Грамматика конечных автоматов (Finite-State Transition Network) Конечный автомат содержит набор состояний (нетерминальных символов), среди которых выделяют одно или несколько начальных и конечных, и условий перехода между состояниями. Информацией для перехода по условиям служат символы, поступающие с ленты, которую читает автомат. Иногда конечный автомат может писать символы на другую ленту, в англоязычной традиции такой автомат называют transducer. Часто для лингвистических приложений условия перехода не задаются непосредственно, а вычисляются словарным компонентом, ставящим в соответствие символам или цепочкам символов ленты-символы их обобщенных классов. Грамматика конечных автоматов (Finite-State Transition Network) Конечные автоматы являются декларативным средством представления, что означает возможность их обратимости, т.е. применения и для анализа, и для синтеза. Они также весьма эффективны с точки зрения скорости работы, но ограничены в возможности описания многих структур, встречающихся в ЕЯ, таких как вложенные конструкции, например, из вкладывающихся друг в друга придаточных предложений Грамматика конечных автоматов (Finite-State Transition Network) Грамматики конечных автоматов достаточно эффективны в реализации, но обладают слишком ограниченными возможностями для анализа, по этой причине одним из широко используемых механизмов анализа является формализм расширенных сетей переходов (augmented transition networks, ATN, [Вудс 78], [Woods 80]). Формализм ATN расширяет грамматику конечных автоматов, вводя аппарат рекурсивного вызова новой подсети переходов и набор регистров, в которых хранятся текущие результаты разбора фразы, а также средства работы с этими регистрами. Значения регистров могут выступать условиями для переходов по веткам, что обеспечивает частичную зависимость от контекста и выход за пределы КС-грамматик. Благодаря регистрам и операциям над значениями, которые там хранятся, ATN-формализм эквивалентен процедурному языку программирования, в котором можно описать анализ языка произвольной сложности. Синтаксический анализ Контекстно-свободные грамматики (некоторые подробности) Handling Linguistic Phenomena • • • • • Different sentence-types Nested structures Agreement Multiwords Subcategories of verb November 2009 37 HLT - Sentence Grammar Different Sentence Types.... ....Different Grammar Rules • • • • Declaratives John left. S → NP VP Imperatives Leave! S →VP Yes-No Questions Did John leave? S →Aux NP VP WH Questions When did John leave? S →Wh-word Aux NP VP November 2009 38 HLT - Sentence Grammar Recursively Nested Structures handled by .... • • • • • • Flights to Miami Flights to Miami from Boston Flights to Miami from Boston in April Flights to Miami from Boston in April on Friday Flights to Miami from Boston in April on Friday under $300. Flights to Miami from Boston in April on Friday under $300 with lunch. November 2009 39 HLT - Sentence Grammar Recursive Rules NP → N NP → NP PP PP → Preposition NP Flights from miami to boston November 2009 40 HLT - Sentence Grammar Ambiguity np pp np pp prep np (the man) (on the hill with a telescope by the sea) (the man on the hill) (with a telescope by the sea) (the man on the hill with a telescope)( by the sea) etc. November 2009 41 HLT - Sentence Grammar Handling Agreement • • • • • NP → Determiner N Include these days, this day Exclude this days, these day NP → NPSing NP → NPPlur NPPlur → DetSing NSing NPPlur → DetPlur NPlur Agreement also includes number, gender, case. Danger: proliferation of categories/rules. November 2009 42 HLT - Sentence Grammar Handling Multiwords • • • • • John ran up the stairs John rang up the doctor John ran the stairs up* John rang the doctor up John rang the doctor who lives in Paris up November 2009 43 HLT - Sentence Grammar Ordinary CF rules don’t work • • • • • John rang up the doctor VP → V NP here V is multiword John rang the doctor up VP → V NP particle_from _V here, multiword has split into two parts challenge is to express the relation between the parts November 2009 44 HLT - Sentence Grammar Subcategorisation • • • Intransitive verb: no object John disappeared John disappeared the cat* Transitive verb: one object John opened the window John opened* Ditransitive verb: two objects John gave Mary the book John gave Mary* November 2009 45 HLT - Sentence Grammar Subcategorisation Rules • • • • Intransitive verb: no object VP → V Transitive verb: one object VP → V NP Ditransitive verb: two objects VP → V NP NP If you take account of the category of items following the verb, there are about 40 different patterns like this in English. November 2009 46 HLT - Sentence Grammar Алгоритмы реализации анализа в терминах КСГ (CFG) Алгоритмы: Метод рекурсивного спуска (top-down parsing) Восходящий анализ (bottom-up parsing) Алгоритм Кока-Янгера-Касами (CKY Parsing) Алгоритм Эрли (Earley parser) Chart parser http://en.wikipedia.org/wiki/ Category:Parsing_algorithms Context-Free Parsing The ball is heavy. Parser The ball is heavy Context-Free Parsing The ball is heavy. Grammar Parser The ball is heavy Context-Free Parsing The ball is heavy. Grammar Parser The ball is Lexicon heavy Context-Free Parsing What if there are multiple legal parses? Example: “Yair looked over the paper.” How does the word “over” function? S NP S NP VP VP or PP N V NP N V P Yair looked over the paper Yair looked over the NP paper Probabilistic Parsing Use probabilities to find the most likely parse Store typical probabilities for words and rules In this case: S NP S NP VP VP or PP N V NP N V P Yair looked over the paper P = 0.99 Yair looked over the P = 0.01 NP paper Prefix Probabilities How likely is a partial parse? S NP S NP VP VP or PP N V NP N V P Yair looked over … Yair looked over … NP Parsing Algorithms How do we construct a parse tree? Work from grammar to sentence (top-down) Work from sentence to grammar (bottom-up) Work from both ends at once (Earley) Predictably, Earley works best Earley Parsing Overview Start with a root constituent, e.g. sentence Until the sentence is complete, repeatedly Predict: expand constituents as specified in the grammar Scan: match constituents with words in the input Complete: propagate constituent completions up to their parents Prediction is top-down, while scanning and completion are bottom-up Earley Parsing Overview Earley parsing uses a chart rather than a tree to develop the parse Constituents are stored independently, indexed by word positions in the sentence Why do this? Eliminate recalculation when tree branches are abandoned and later rebuilt Concisely represent multiple parses Link Grammar The linking requirements of each word are contained in a dictionary. To illustrate the linking requirements, the following diagram shows a simple dictionary for the words a, the, cat, snake, Mary, ran, and chased. The linking requirement of each word is represented by the diagram above the word. Each of the intricately shaped labeled boxes is a connector. Aconnector is satisfied by “plugging it into” a compatible connector (as indicated by its shape). If the mating end of a connector is drawn facing to the right, then its mate must be to its right facing to the left. Exactly one of the connectors attached to a given black dot must be satisfied (the others, if any, must not be used). Link Parser Grammar This example recognizes the verb usage of rocks as an action being performed by earthquake. Do earthquakes rock? Not in the sense we are looking for, since rocks has a connector to the city as an singular object (indicated by Os). Objects suck, at least for our purposes. Let's try another. Унификационная грамматика: PATR В качестве структуры нетерминальных элементов в PATR используются направленные ациклические графы. Каждое правило частично описывает этот граф через указание некоторых дуг и вершин и операцию их унификации, которая выражается через =. Унификация графов определяется на основе отношения включения (subsumption). Если граф A включает граф B, то утверждается, что категория, соответствующая B, является расширением категории, соответствующей A. Результатом унификации двух графов (или категорий) называется наименьшая категория, расширяющая их обоих. Если такой категории быть не может, то унификация невозможна, т.е. ее результат не определен. Вероятностный подход (PCFG) NB: Проблема многозначности: Вероятностная синтаксическая разметка Вероятностная синтаксическая разметка Вероятностная синтаксическая разметка Алгоритмы реализации КСграмматик Earley Parsing Example the S ball is heavy Begin S → NP VP NP → ART N VP → V ADJ Earley Parsing Example the S Begin NP Begin S → NP VP ball NP → ART N is heavy VP → V ADJ Earley Parsing Example the S Begin NP Pending ART Scan S → NP VP ball NP → ART N is heavy VP → V ADJ Earley Parsing Example the S is heavy Begin NP ART ball Complete Scan N S → NP VP Scan NP → ART N VP → V ADJ Earley Parsing Example the ball S Pending NP Complete ART is heavy Scan N S → NP VP Scan NP → ART N VP → V ADJ Earley Parsing Example the ball S Pending NP Complete ART is heavy Scan N Scan VP S → NP VP Begin NP → ART N VP → V ADJ Earley Parsing Example the ball S Pending NP Complete ART is heavy Scan N Scan VP Pending V Scan S → NP VP NP → ART N VP → V ADJ Earley Parsing Example the ball S Pending NP Complete ART is heavy Scan N Scan VP Complete V Scan ADJ S → NP VP Scan NP → ART N VP → V ADJ Earley Parsing Example the ball is heavy S Complete NP ART Complete Scan N Scan VP Complete V Scan ADJ S → NP VP Scan NP → ART N VP → V ADJ Грамматики зависимостей Примеры разметчиков: Синтаксическая разметка в корпусе ИППИ РАН (И.М. Богуславский, Н.В. Григорьев, С.А. Григорьева, Л.Л. Иомдин, Л.Г. Крейдлин, Н.Е. Фрид / Лаборатория компьютерной лингвистики ИППИ РАН) Разметка в русском корпусе Xanko Connexor Автоматический синтаксический анализ для русского языка Синтаксическое аннотирование. Пример 1. Полуавтоматическое аннотирование: корпус ИППИ (Лаборатория компьютерной лингвистики ИППИ РАН) вначале структура автоматически порождается системой морфологического и синтаксического анализа, затем корректируется специалистом-лингвистом. Порождение структуры выполняется системой машинного перевода ЭТАП-3 (Апресян и др. 1989, 1992; Apresjan et al. 1992, 1993), на базе которой построен специальный программный комплекс, состоящий из двух программ: сегментации неразмеченного текста на предложения – («Chopper») построения и редактирования синтаксических структур – «Structure Editor» (рис. 1). Пример синтаксического разбора (грамматика зависимостей, система ЭТАП-3) Синтаксическая разметка предложения представлена деревом зависимостей, где каждая стрелка направлена от «хозяина» к «слуге» и помечена именем одного из синтаксических отношений. Синтаксических групп и составляющих формально в структуре нет; фактически любой «куст» дерева можно считать группой, вершина которой выступает в качестве ее представителя во внешних связях «куста». Пример синтаксического разбора Long ago, in the city of Babylon, the people began to build a huge tower which seemed to reach the heavens soon. Пример синтаксического разбора (грамматика зависимостей, система ЭТАП-3) Степень участия лингвиста в процессе зависит от сложности обрабатываемого текста. Большинство предложений получают правильную структуру от системы: в этом случае от лингвиста требуется лишь беглый просмотр и подтверждение структуры. Если же построенная анализатором структура неверна, то лингвист может отредактировать ее, пользуясь простым и дружелюбным графическим редактором Пример синтаксического разбора (грамматика зависимостей, система ЭТАП-3) Рис.2. Графический редактор структур. Ошибочная разметка Один из узлов дерева содержит неопознанное слово Госатомнадзором, которое к тому же ошибочно подчинено существительному объектах, а не причастию контролируемых. Лингвист вручную заменяет информацию в этом узле и исправляет ошибку. Текст XML-разметки автоматически обновляется. Пример синтаксического разбора (грамматика зависимостей, система ЭТАП-3) Как правило, число узлов древесной структуры равно числу слов в предложении. Исключение, с одной стороны, составляют случаи, когда некоторая цепочка словоформ: представлена как цельная лексическая единица (во чтобы то ни стало; ни один) – тогда узлов в структуре меньше, чем слов, а с другой стороны, случаи, когда какое-то слово должно быть в структуре «расклеено» (таковы, в частности, синтаксические «агломераты» типа негде, неоткуда) или когда в структуру необходимо вставить слово, отсутствующее в реальном тексте (нулевая связка быть или особые узлы, восстанавливающие некоторые типы эллипсиса: Отец работал врачом, а мать учителем - Отец работал врачом, а мать РАБОТАЛА учителем.) Синтаксическое аннотирование. Пример 2. Совмещение грамматики зависимостей и традиционного синтаксического описания: Синтаксическая разметка в хельсинском корпусе русских текстов Ханко (М. В. Копотев, Хельсинкский университет, Хельсинки, Г. Б. Гурин) Источник: Академическая грамматика 1960-го года. Совмещение грамматики зависимостей и традиционного синтаксического описания: синтаксическая разметка в Ханко Плюсы этого подхода в следующем: общеизвестность и простота; возможность косвенным образом искать материал для исследований, даже опирающихся на другие синтаксические подходы (прежде всего, структурные схемы). К минусам традиционного похода можно отнести следующее: очевидное несоответствие современным представлениям о природе синтаксических структур; описание синтаксических узлов и игнорирование синтаксических связей; непоследовательность в описании и неустранимые противоречия (отсутствие предложных групп, невозможность четко разграничить разные типы второстепенных членов и т. д.); сложность автоматической обработки Совмещение грамматики зависимостей и традиционного синтаксического описания: синтаксическая разметка в Ханко Проблемы разметки в терминах русской традиции: a. Косвенное дополнение / несогласованное определение. (1) С мостов через Сену посрывало гирлянды иллюминации. b. Косвенное дополнение / разные виды обстоятельства. (2) У дешевых дубленок шкуры могут быть плохо подобраны по цвету и плотности, непрокрашены, и тогда они будут линять при влажной погоде (косвенное дополнение / обстоятельство условия). c. Разные виды обстоятельств. (3) Ничьей закончились и выборы в Сенат, который партии разделили ровно пополам (обстоятельство образа действия / меры и степени). (4)...жестоко избивали хозяев при попытках возражать или жаловаться... (обстоятельство времени / обстоятельство условия). d. Нечеткость разделения прямого объекта и части сказуемого. (5) Российский лидер соблюдает приличия... Теоретические расхождения • Синтаксические конструкции, для которых теоретически возможны разные анализы. • Для каждого аргументация. из возможных анализов есть своя • Такие конструкции разбирались участниками по-разному. • И при проверке расхождения с ЗС учитывались не как ошибки, а как допустимые расхождения (оценка 3). • Например, конструкции с числительными вспомогательными глаголами (сложные формы). и с Теоретические расхождения Конструкции числительное+существительное • Направление связи: сущ. -> числ. или сущ. <- числ. • Пример, предложение 63039: • Сургут уступил семь баллов по показателям износа теплосетей, канализации, систем водоснабжения. • Barselona – семь --> баллов Napoli – семь --> баллов • Toulon – семь <-- баллов Nice – семь --> баллов • Brega – семь --> баллов Trieste – семь <-- баллов • Marceille – семь <-- баллов баллов Manchester – семь Здесь и далее: синий – как в ЗС, красный – допустимое расхождение <-- Практические решения • Для некоторых конструкций разборы участников не были допустимы с теоретической точки зрения. • Однако, такие разборы были обусловлены конкретными практическими решениями систем. Например, системы, ориентированные на машинный перевод, размечали связь между предлогом и существительным не как в ЗС (т.е., предл -> сущ), а наоборот – сущ -> предл. • Такие случаи тоже не учитывались при проверке как ошибки, если система разбирала их последовательно не как в ЗС. Практические решения Конструкции вспом.гл.(aux)+смысловой глагол • Аналитическое будущее время: aux -> инфинитив • Направление связи в «семантически ориентированных» системах: aux <- инфинитив • Направление связи в ЗС: aux <- инфинитив • Пример, предложение 61004: • И любой наш шаг будет служить достижению этой цели", — подчеркнул Саакашвили. • Barselona – будет --> служить Napoli – будет --> служить • Toulon – будет --> служить Nice – будет_служить (слито) • Brega – будет --> служить Trieste – будет <-- служить • Marceille – будет --> служить Manchester – будет --> служить Практические решения Инфинитив в роли сентенциального прямого дополнения • Направление связи в ЗС: главный глагол -> инфинитив • Пример, предложение 61001: • Мы не только не собираемся выходить из СНГ <…> • Barselona – собираемся --> выходитьNapoli – собираемся --> выходить • Toulon – собираемся <-- выходить Nice – собираемся --> выходить • Brega – собираемся --> выходить Trieste – собираемся --> выходить • Marceille – собираемся --> выходить Manchester–собираемся-->выходить Сложные случаи • Некоторые конструкции допускают различные анализы в дереве зависимостей, выбор между которыми практически никак не может быть аргументирован. • Это может быть связано, например, с тем, что дерево зависимостей как модель плохо описывает некоторые конструкции. Например, сочинение. Сложные случаи Сочинение • Сочинение с союзом и и с союзом или для разных типов коньюнктов разбиралось системами и ЗС последовательно одинаково. • Направление связи в ЗС (для (X, )Y и/или Z): (X ->) Y -> Z -> и/или • Пример, предложение 62449: • Вводится также запрет на распространение газет и печатных изданий, содержащих агитацию. • Сочинение газет (Газ) и изданий (Изд). В ЗС: газет -> изданий -> и • Barselona – Изд <-- Газ --> и Napoli – Газ --> и --> Изд • Toulon – Газ --> Изд --> и Nice – Газ --> и_Изд (слито) • Brega – Газ <-- и --> Изд • Marceille – Газ --> и --> Изд Trieste – Газ --> Изд --> и Manchester – Газ --> и --> Изд Неоднозначность • Также не оценивались как ошибки случаи синтаксической и семантической неоднозначности, в том случае, когда были допустимы разные разборы. Неоднозначность Привязка предложной группы (ПГ) • Дальняя vs. близкая привязка ПГ • Однозначный случай, предложение 60628: • На прошлых парламентских выборах к указанному часу проголосовало 35% избирателей, отметил он. • В ЗС: проголосовало --> к. В 3 системах так же, в 5 – •наоборот. Неоднозначный случай, предложение 63039: • Сургут уступил семь баллов по показателям износа теплосетей, канализации, систем водоснабжения. • Barselona – баллов --> по Napoli – баллов --> по • Toulon – баллов --> по Nice – баллов --> по • Brega – баллов --> по Trieste – баллов --> по Неоднозначность Привязка причастного оборота к сочиненным конструкциям • Привязка причастного оборота к первому vs. к последнему коньюнкту. • В ЗС: к первому коньюнкту. Пример, предложение 62449: • Вводится также запрет на распространение газет и печатных изданий, содержащих агитацию. • Barselona – изданий --> содержащих Napoli – газет --> содержащих • Toulon – изданий --> содержащих • Brega – изданий --> содержащих содержащих Nice – изданий --> содержащих – Trieste • Marceille – изданий --> содержащих Manchester содержащих – изданий изданий --> -->