100793

Проектирование системы исправления синтаксической несогласованности

Курсовая

Информатика, кибернетика и программирование

Синтаксические деревья. Грамматики зависимостей. Грамматики непосредственных составляющих. Банки деревьев и влияние на выбор грамматики. Хранение деревьев. Связи между синтаксическими деревьями. Классификация связей. Поиск связей. Хранение связей...

Русский

2018-04-07

313 KB

0 чел.

МИНОБРНАУКИ РОССИИ

федеральное государственное бюджетное образовательное

учреждение высшего образования

«Омский государственный университет им. Ф.М. Достоевского»

Кафедра Кибернетики

УТВЕРЖДАЮ

Заведующий кафедрой

___________ Гуц А.К.

«___» ___________ 2017 г

ПРОЕКТИРОВАНИЕ СИСТЕМЫ ИСПРАВЛЕНИЯ СИНТАКСИЧЕСКОЙ

НЕСОГЛАСОВАННОСТИ

Курсовая работа

по направлению 09.03.03 – Прикладная информатика

Научный руководитель:

к.ф.-м.н., доцент

____________Бесценный И.П.

«___» ___________ 2017 г.

Выполнил:

студент группы СПБ-401-О

___________ Капустинский Д.В.

«____» ___________ 2017 г.

Омск

2017

Содержание

Введение 3

Глава 1. Синтаксические деревья 5

1.1. Грамматики зависимостей 5

1.2. Грамматики непосредственных составляющих 6

1.3. Банки деревьев и влияние на выбор грамматики. 7

1.4. Хранение деревьев. 8

Глава 2. Связи между синтаксическими деревьями 10

2.1. Классификация связей 10

2.2. Поиск связей 10

2.3. Хранение связей 13

Заключение 14

Список литературы 15

Введение

На сегодняшний день развитие компьютерной техники позволяет выполнять задачи ранее невозможные, а области применения её растут с каждым днём. Если ещё вчера сложно было представить себе компьютер, сочиняющий музыку или рисующий картины, достойные мастеров прошлого, то сейчас это стало реальностью, но несмотря на более длинную историю, компьютерная лингвистика не может похвастаться такими эффектными результатами. Основной фокус развития компьютерной лингвистики направлен на развитие способности компьютера анализировать текст и генерировать его. Конечно на данном поприще успехи есть, и они заметные, но есть задачи более близкие каждому человеку, которые за последние два десятилетия поменялись довольно слабо, например, редактирование и изменение текстов.

Текстовые процессоры, как и двадцать лет назад представляют собой, текстовые редакторы с расширенными выразительными возможностями, и автоматизацией некоторых рутинный действий: составление оглавления, библиографических списков, проверка орфографии. Более сложные операции над текстом приходится выполнять вручную, но не у каждого хватает знаний выполнять их правильно, и внимательности, для того чтобы учесть все детали. Поэтому задача автоматического редактирования текста, сегодня является довольно актуальной, и востребованной. [1]

Рисунок1. Сравнение программ семействаMicrosoftofficeWord версий 1994 г (слева) и 2016 г (справа).

Целью данной работы будет изучение механизмов изменяемости предложений, и поиск алгоритмов автоматического исправления нарушений согласованности предложений. Под нарушениями согласованности понимаю такие случаи, когда какая-то словоформа в предложении изменилась, а связанные с ней синтаксические структуры нет, и предложение остаётся несогласованным.

В качестве решения данной проблемы видится построение сети в вершинах которой будут находится типовые синтаксические структуры, а рёбра будут представлять собой изменения отражающее переход от одной структуры в другую. Компьютер будет анализировать синтаксическую структуру исходного предложения, и после изменения одного из слов, находить переход, соответствующий параметрам изменения и изменять исходное предложение в соответствии с новой синтаксической структурой.

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

  1. Описать структуру сети.
  2. Построить алгоритмы построения таких сетей.

  1. Синтаксические деревья

Описанная система предполагает, построение связной сети синтаксических деревьев, что ставит вопрос о хранении данной сети. И в первую очередь возникает вопрос хранения самих деревьев. Естественно способ хранения определяется объектами хранения, выбор подходящей грамматики и будет являться содержанием этой главы.

  1. Грамматики зависимостей

Грамматика зависимостей подразумевает, что предложение состоит из слов и связей между ними. Связи в ней не являются двухсторонними, Большая часть связей являются подчинительными. То есть одно из двух слов является главным, а другое является зависимым. Количество зависимых слов определяется лишь способностью главного слова вступать с ними во взаимодействие. Само главное слово может быть зависимым у другого слова, но лишь у одного. Получается, что любое связное сочетание слов, записывается в виде дерева, в корне которого стоит главное слова, а остальные подчинены ему, или другим словам. [2]

Плюсом работы с грамматикой зависимостей является подробное описание направлений связи в синтаксической конструкции, что сильно упрощает исправление нарушений согласованности предложений. По сути задача будет сводится к изменению цепочки зависимых слов в подходящую форму. Но к несчастью данная грамматика имеет ряд сложностей, которые сводят её ценность на нет.

Первая сложность — это не подчинительные связи. Сам основоположник данного подхода Луи Теньер рассматривает не подчинительные связи как «особые функции», которые не имеют разрешения. [3] Эти связи возможно разрешать через включения в синтаксическую структуру союзов или знаков препинания который означают сочинительную связь. Но это в свою очередь приводит к тому, что в некоторых случаях сложно определить какими свойствами союз, и связанное им словосочетание. Во многих случаях сама собой напрашивается трактовка словосочетаний как единого целого, занимающего в структуре одно место. Простейший пример такой структуры – это сложные формы глаголов.

Вторая сложность – это придаточные предложения. В дереве зависимостей данных предложений, без введения дополнительных сущностей не всегда понятно происхождение морфологических форм. Решать данную проблему, Теньер предлагает при помощи ещё одного вида связи: Анафорической. Но дальнейшее рассмотрение, приводит к тому, что по сути слова могут быть зависимы более чем от одного слова, что прямо противоречит основному постулату грамматики зависимостей.

  1. Грамматики непосредственных составляющих

Непосредственные составляющие – это части предложения или словосочетания, которые входят в него непосредственно, т.е. не являются частями более крупных его частей. Например, в предложении «Мама мыла раму» имеются две непосредственных составляющих: «Мама» и «Мыла раму». Именная группа, и глагольная группа, соответственно. В свою очередь глагольная группа, имеет непосредственные составляющие глагол (мыла) и именную группу, состоящую из существительного (раму). Визуальное представление данного разбора можно увидеть на (Рисунок2).

Рисунок2 . Структура непосредственных составляющих.

Если грамматики зависимостей построены на направленных связях, то грамматики непосредственных составляющих наоборот не позволяют отображать направления связей. Конечно этот недостаток может быть преодолён введением иерархии, но по сути это будет возвращение к грамматикам зависимостей, и проблемам, связанным с их использованием. И в принципе связи между словами и словосочетаниями отображаются в довольно ограниченных пределах, что будет вызывать определённые сложности с исправлением нарушений согласованности.

Так же, проблемой грамматик непосредственных составляющих, является то, что они не позволяют описывать разрывные словосочетания. То есть, грамматики подразумевают соответствие между линейным порядком слов и фразовой структурой. Это в определённой мере решается введением при построении грамматик правил перестановок для различных порядков слов, но не всегда представляется возможным делать это для всех случаев.

  1. Банки деревьев и влияние на выбор грамматики.

Банк деревьев (Treebank) – это корпус текстов с синтаксической разметкой.

Так как система предполагает составление сети переходов, то возникает вопрос получения данных для наполнения. Основным источником данных, будут являться банки деревьев. Единственным доступным банком деревьев на русском языке является корпус СинТагРус тексты которого, помимо информации о синтаксических связях между словами, снабжены морфологической разметкой. Как морфологическая, так и синтаксическая разметка СинТагРуса изначально строится автоматически, после чего проверяется, а в ряде случаев существенным образом исправляется экспертами-лингвистами вручную. [4] Что ведёт к очень высокому качеству синтаксической разметки данного корпуса, и является необходимым условием для составления сети переходов.

Рисунок3 . Пример синтаксической разметки СинТагРус.

В настоящий момент синтаксическая структура текстов в корпусе использует аналогичную грамматику что и лингвистический процессор ЭТАП-3. ЛП ЭТАП-3 в свою очередь использует модифицированную грамматику древа зависимостей (Рисунок3). Как уже говорилось, единственным существующим на данный момент банком деревьев на русском языке является СинТагРус, дальнейшая разработка будет подразумевать использования для записи синтаксической информации грамматику совместимую с ним.

  1. Хранение деревьев.

Ещё одним важным для построения системы вопросом является хранение большого количества деревьев. Сегодня наибольшее распространение получили реляционные базы данных которые подразумевают хранение информации в качестве таблиц. В которых представление деревьев достаточно затруднено, и требует определённых усилий для реализации. Но следует рассмотреть вопрос, нужно ли в действительности хранить всю структуру связей каждого из деревьев, или достаточно лишь какой-либо строковой формы.

Действительно, в дальнейшем анализе, мы будем оперировать синтаксическими деревьями скорее, как какими-то цельными единицами, чем действительно как деревьями. Поэтому строковой формы, которая будет однозначно преобразовываться при необходимости в дерево, а в остальное время будет удобна для поиска по базе данных будет действительно достаточно.

Преобразование к строковому виду предполагается осуществлять по следующему алгоритму:

  1. Запись морфологических характеристик слов в предложении в формате Анкода (уникальный двухбуквенный идентификатор, соответствующий некоторой комбинации признаков)
  2. После запись в строку структуры связей предложения в формате «номер слова родителя+номер слова потомка+синтаксическая характеристика»

Анкоды в свою очередь хранятся в отдельной таблице и в дальнейшем используются для расшифровки. Из плюсов данного метода хранения стоит отметить довольно удобный поиск необходимых синтаксических деревьев, осуществляемый посредством самой базы данных. Таким образом данная структура позволяет довольно гибко оперировать большим объёмом синтаксических конструкций, и в дальнейшем различным образом связывать их.

  1. Связи между синтаксическими деревьями

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

В первую очередь нужно сказать, что определяющее изменение должно однозначно определять последующие за ним изменения. Во-вторых, данные связи, при применении инструкций по исправлению, должны приводить к переходу от одного известного синтаксического древа к другому. Например, если выбрать определяющим изменением склонение существительного, то изменениями, которые нужно внести, будут склонения всех прилагательных, и, если необходимо, нужно поменять форму других слов.

  1. Классификация связей

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

Количество определяющих слов.

Основной критерий на основе которого можно проводить классификацию связей это исходя из их формата количество определяющих слов. Наличие одного определяющего слова в синтаксической конструкции является наиболее распространённым вариантом построения предложения. Чуть менее распространённым является вариант с двумя определяющими словами, однако стоит учитывать, что некоторое количество комбинаций определяющих слов могут вести к одному результату. Также стоит учитывать, что порядок изменения слов по этой классификации не имеет значения.

Тип производимого изменения

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

Первый тип изменения: подстройка под форму изменившегося слова, например, существительного. Второй тип изменения: замена на синонимичную синтаксическую конструкцию.

Третий вид изменений: нулевой изменение, допустим, добавление однородного слова в ряд однородных, перестановка слов в предложении и прочие связи, которые не требуют внесения изменений, но меняют форму предложения. По сути это отражает гибкость русского языка в определённых пределах.

Однако стоит учесть, что подобные связи необходимо ограничить какими-то простыми функциями, или это приведёт к тому, что такими связями можно будет связать два любых синтаксических дерева независимо.

По части речи определяемого слова

Так же можно классифицировать связи по части речи слова вызывающего изменения. Очевидно, что изменения, вызываемые сменой формы глагола, отличаются от изменений, вызванных изменением склонения существительного. Таким образом использование данной классификации может позволить использовать какие-то закономерности в виде правил, а также будет упрощать поиск в сложных случаях.

Поиск связей

Поиск связей — одна из центральных задач, поставленных перед данной системой. Вопрос поиска связей настолько сложный и многогранный, что решать его можно и необходимо достаточно большим количеством способов. Перечислим основные из них, выделив преимущества и недостатки.

Первый способ: ручное построение связей. Самый очевидный и надёжный способ. Плюсами данного метода являются высокая точность, отсутствие излишних переходов, возможность создавать необычные и сложные связи. Из минусов: из-за большого количества синтаксических деревьев неизвестен объём необходимых работ, впрочем, однозначно можно сказать, что он будет очень большим.

Второй способ: построение связей на основе определённых правил. Данный способ интересен тем, что несмотря на то что работает автоматических обеспечивает высокое качество получаемого результата. Но с другой стороны, заранее определённые правила построение будут давать очень предсказуемые результаты, и по сути этот способ можно использовать вместо связей.

Третий способ: построение связей на основе машинного обучения. На самом деле это не один способ, а целое семейство способов. В него входят методы на основе статистических данных. Самообучающихся алгоритмов, и на основе нейросетей. Особенностью данных способов является в первую очередь меньшее участие человека в процессе работы, и высокое количество интересных результатов. Но минусом будет являться не всегда качественное построение связей.

В качестве итога этой главы стоит отметить, что нецелесообразно использовать только один способ построения связей. Лучшим выходом будет использование нескольких способов построения связей одновременно. Например, изначальную структуру реализовать на основе правил и ручного построение связей. А затем в процессе работы на основе данных полученных во время использования системы, строить новые связи.

  1. Хранение связей

Как уже ранее упоминалось, синтаксические деревья следует хранить внутри реляционных баз данных. Исходя из свойств синтаксической связи, очевидно, что в базе данных следует хранить ориентированный граф. Предпочтительным, в данном случае, способом хранения ориентированных графов в базах данных является представление через отношение родитель-потомок. [5]

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

В итоге связи будут храниться в виде: исходное древо, определяемое древо, определяющее слово и характеристика изменений. Исходное древо обозначает древо, с которого мы начинаем поиск в графе. Соответственно определяемое древо будет переводить систему из одного обрабатываемого состояния в другое. Определяющее можно хранить следующим образом: обозначить изменяемое слово по его позиции в предложении, а действие, совершённое над ним, в формате на основе анкода. Характеристика изменений будет использоваться для хранения необходимых изменений для перевода синтаксической структуры предложения из одного состояния в другое.

Заключение

В этой работе была описана основная структура системы исправления синтаксической несогласованности. Вопросы, рассмотренные в данной работе, вдальнейшем могут использоваться для практической разработки данных систем. Следующим шагом в изучении этой темы может быть реализация этой системы. И на основе данных полученных в ходе разработки внесение улучшений в систему.

Список литературы

x

1.

Ильвовский Д., Черняк Е. Системы автоматической обработки текстов // Открытые системы. СУБД. Январь 2014. № 1.

2.

Добров А.В. Комьютерный синтаксис // В кн.: Прикладная и компьютерная лингвистика. Москва: ЛЕНАНД, 2016. С. 35-58.

3.

Теньер Л. Основы структурного анализа. Москва: Прогресс, 1988. 656 с.

4.

Апресян Ю.Д., Богуславский И.М., Иомдин Л.Л. Лингвистический процессор для сложных информационных систем. М.: Наука, 1992. 256 с.

5.

Маликов А.В. Ориентированные графы в реляционных базах данных // Доклады ТУСУРа. Декабрь 2008. Vol. 2. No. 2. pp. 100-104.


 

А также другие работы, которые могут Вас заинтересовать

43669. Изучение особенностей отражения в учете договоров финансовой аренды (лизинга) 1.2 MB
  Лизингодатель представляет собой хозяйствующий субъект (лизинговая компания, банк и т.п.) или индивидуального предпринимателя, осуществляющего лизинговую деятельность, т.е. передачу по договору в лизинг специально приобретенного для этого имущества. Иначе говоря, лизингодатель — это арендодатель данного имущества
43670. Підвищення надійності різання деревини за рахунок удосконалення електричної схеми шляхом впровадження сучасних енергозберігаючих технологій 4.8 MB
  Одним з основних видів різання деревини є пиляння. Це операція ділення деревини на частини багаторізцевими зубчастими інструментами  пилками, які здатні видаляти з колоди або заготовки шар деревини, перетворюючи її в стружку. Існує три основних види пил - рамні, стрічкові і дискові. Стрічкові пили представляють собою сталеву нескінченну (у вигляді кільця) смугу з зубами на одній (рідше двох) кромці.
43671. ОСОБЕННОСТИ ВОЕННО-ПАТРИОТИЧЕСКОГО ВОСПИТАНИЯ С МОЛОДЕЖЬЮ 14-18 ЛЕТ С ИСПОЛЬЗОВАНИЕМ СРЕДСТВ ФИЗИЧЕСКОЙ КУЛЬТУРЫ 584.5 KB
  Психология юношеского возраста – один из самых сложных и наименее разработанных разделов возрастной психологии. Еще в 20-е годы Л.С. Выготский отмечал, что в психологии юношеского возраста значительно больше общих теорий, чем достоверно установленных фактов.
43672. Інвентаризація інформаційних активів 82.46 KB
  Оглядова частина Визначення поняття інформації. Термін цінність інформації перш за все визначає саме поняття інформації а вже потім її цінності. Єдиного визначення інформації на даний час немає. Труднощі що виникають при спробах знаходження єдиного та вичерпного визначення інформації цілком зрозумілі: поняття інформація являється одним з первісних філософських понять таких як матерія свідомість час простір та ін.
43673. Разработка программного модуля расчета статистических данных «Statistics» для Web – приложения «Office Planning System» 1.25 MB
  Данный дипломный проект посвящен разработке программного модуля расчета статистических данных Sttistics для Web приложения Office Plnning System. В данной пояснительной записке к дипломному проекту содержится подробное изложение всех этапов разработки программного модуля: изучение предметной области; постановка задачи включающая в себя анализ требований предъявляемых к программному модулю расчета статистических данных Web приложения Office Plnning System ознакомление с архитектурой Web приложения изучение...
43674. Розробка системи автоматизації виробництва соняшникової олії 122.04 KB
  Системи управління, побудовані на основі використання пристроїв програмного і логічного управління з “жорсткою” логікою функціонування консервативні до зміни структури і алгоритмів управління. Необхідність модифікувати систему в процесі експлуатації призводить до значної витрати
43675. Международный договор 40 KB
  Понятие МД – это соглашение между субъектами МП относительно возникновения, прекращения, изменения взаимных прав и обязанностей.
43676. Технологічний процес доставки небезпечних вантажів ТОВ «Вест Експрес» 737.26 KB
  Головною задачею автомобільного транспорту являється своєчасне якісне і повне задоволення народного господарства і населення в перевезеннях. Для ефективного її рішення необхідно: забезпечити розвиток єдиної транспортної системи країни прискорити створення та запровадження сучасної техніки та технологій підвищити темпи оновлення рухомого складу; ширше застосовувати прогресивні методи перевезення вантажів розвивати і вдосконалювати централізовані автомобільні перевезення підвищити ефективність використання автотранспортних засобів...
43677. Изучение средств и методов эффективного управления и использования оборотных средств предприятия 2.23 MB
  Теоретические и практические разработки системы управления оборотными активами относятся в основном к предприятиям, работающих в относительно стабильной и предсказуемой экономической среде, в то время как проблемы управления оборотными активами в условиях российской экономики