Введение
Выявление формальных структур естественного языка (ЕЯ), формализация языка в целом, построение конструктивной теории и компьютерной модели языка являются приоритетными направлениями информатики на протяжении последних десятилетий. Системы информационного поиска, диалоговые системы, инструментальные средства для машинного перевода и автореферирования, рубрикаторы и модули проверки правописания, так или иначе, проводят анализ ЕЯ-текстов. Таким образом, область применения систем автоматической обработки текстов (АОТ) достаточно разнообразна, а в виду большого роста объемов текстовой информации и сложной ее структурированности, анализ ЕЯ-текстов представляет собой очень актуальную проблему.
Достижения последних лет в области современной логики, искусственного интеллекта и компьютерной лингвистики создали новые предпосылки для исследований природы морфологических, синтаксических, семантических и словообразовательных связей в ЕЯ и построения его функциональной модели.
Компонента системы, реализующая формальную лингвистическую модель и способная осуществлять полный лингвистический анализ ЕЯ-текста, называется лингвистическим процессором (ЛП). Независимо от языка со стороны своего внутреннего устройства ЛП представляет собой многоуровневый преобразователь. В нем различаются три уровня представления текста - морфологический, синтаксический и семантический. Каждый из уровней обслуживается соответствующим компонентом модели - массивом правил и определенным словарем.
На современном этапе развития информационных технологий морфологический компонент стал неотъемлемой частью интеллектуальных АОТ-систем. Все экспериментальные исследования в области машинной морфологии невозможны без машинного грамматического словаря. Использование словаря позволяет осуществить более полный анализ словоформы (т.е. оперировать большим числом грамматических признаков) и повысить его точность. Основные трудности, с которыми сталкиваются разработчики АОТ-систем следующие.
. Отсутствие единого общепринятого формата и структуры словаря. Это приводит к тому, что алгоритмы всех компонент ЛП автоматически становятся словарнозависимыми и каждый алгоритм разрабатывается под определенный формат словаря.
. Отсутствие полных словарей. Объёмы данных, с которыми имеет дело лингвистика, очень большие, кроме того лексика языка непрерывно. Для каждой предметной области существует своя терминология, включить которую в общий словарь невозможно.
. Отсутствие средств автоматизированной лингвистической обработки словарей, она ведется в основном вручную, сопряжена с большими трудозатратами и появлением большого числа ошибок, которые трудно обнаруживаются. Поэтому создание больших по объему словарей - многолетний процесс.
Данная работа посвящена разработке программных средств синтеза парадигм слов английского языка для создания базы данных английских словоформ с полной морфологической информацией.
Актуальность данной задачи обусловлена необходимостью разработки средств АОТ, позволяющих быстро и эффективно обрабатывать неструктурированную текстовую информацию.
Объектом исследования являются лексемы английского языка.
Предмет исследования - модели словоизменения в английском языке.
Методы, использованные при написании работы -
методы прикладного морфологического анализа.
Постановка задачи
Отдел распознавания речи Института проблем искусственного интеллекта (ИПИИ) уже более 15 лет ведет работы, связанные с обработкой ЕЯ-текстов. Данным отделом разработаны библиотеки словоизменения слов русского языка, библиотека лемматизации и декларативного морфологического анализа; создано несколько версий экспериментальных систем синтаксического анализа и синтаксического корректора предложений. Данные средства обработки естественно-языковых текстов широко используются как при разработке систем распознавания речи, так и при разработке систем понимания ЕЯ-текстов.
В настоящее время специалистами отдела ведутся работы в рамках международного проекта «Исследование и разработка программного обеспечения понимания неструктурированной текстовой информации на русском и английском языках на базе создания методов компьютерного полного лингвистического анализа». В связи с этим возникает необходимость адаптировать имеющиеся средства морфологической обработки, которые ориентированы на русский язык, для анализа англоязычных текстов.
Целью курсовой работы является разработка программного обеспечения (ПО) системы синтеза парадигм слов английского языка и создание с его помощью базы данных английских словоформ, содержащей полную морфологическую информацию каждой словоформы.
Разрабатываемый программный продукт (ПП) должен обладать следующими возможностями:
создание, загрузка, редактирование и сохранение словаря начальных форм слов английского языка в файле формата txt;
очистка, загрузка и сохранение базы английских словоформ;
модификация базы английских словоформ;
получение парадигмы с указанием МИ каждой словоформы по введенной пользователем лемме, содержащейся в словаре начальных форм.
Для достижения указанной цели курсовой работы ставятся и решаются следующие задачи:
) обзор методов машинной морфологии;
) проектирование и разработка ПО синтеза парадигм слов английского языка;
) создание базы данных начальных форм английских слов с грамматической информацией, необходимой для генерации базы данных словоформ;
) формализация правил словоизменения английских слов и разработка соответствующих алгоритмов;
) автоматическая генерация базы данных английских словоформ с полной морфологической информацией, на основе реализованных алгоритмов словоизменения, использующая базу данных начальных форм английских слов;
) тестирование системы.
Проектирование системы синтеза парадигм слов английского языка должно содержать:
описание функциональных возможностей разрабатываемого ПО;
описание формата входных-выходных данных.
Разработка ПО синтеза парадигм слов английского языка должна быть основана на результатах проектирования системы и включать обоснование выбора средств программной реализации и описание алгоритмов словообразования английского языка, структур данных, классов, функций программного комплекса.
Тестирование и анализ результатов необходимы для выявления ошибок в структуре алгоритма или его программной реализации, структуре входных и внутренних данных, а также для ликвидации конфликтных ситуаций с другим ПО.
1. Обзор методов машинной морфологии
Как уже было сказано выше, морфологическая компонента является важнейшей в современных интеллектуальных системах, где требуется распознавание и синтез речи, автоматизированный перевод с одного языка на другой, понимание и генерирование ЕЯ-текста.
Эта компонента включает в себя морфологический анализ и синтез словоформ. В ходе морфологического анализа проводится соотнесение входной словоформы к одной из основ, хранящихся в словаре, т.е. решается задача распознавания, а также определение его грамматических параметров, т.е. выделение конкретной словоформы с данной основой. Представление словоформы в виде совокупности основы и грамматических параметров требуется для проведения синтаксического анализа с целью распознавания словосочетаний и типа входной фразы. Морфологический синтез решает обратную задачу, а именно, преобразует совокупность кода основы и грамматических параметров в буквенную последовательность соответствующую синтезируемой словоформе. При этом из класса словоформ, определяемого данной основой, формируется словоформа, определяемая данными грамматическими параметрами. Эта процедура является конечным этапом при генерировании ЕЯ-фраз.
Методы машинной морфологии могут быть
реализованы декларативными и процедурными способами.
.1 Декларативные методы машинной морфологии
Для методов декларативной ориентации характерно наличие полного словаря всех возможных словоформ для каждого слова. При этом каждая словоформа снабжается полной и однозначной морфологической информацией (МИ), куда входят как постоянные, так и переменные морфологические параметры. Задача морфологического анализа в этом случае сводится к поиску нужной словоформы в словаре и копированию МИ, соответствующей найденной словоформе, в программу. Работа морфологического синтеза состоит в считывании из словаря по основе и набору МИ соответствующей словоформы этой основы.
Существует несколько классификаций основных видов алгоритмов морфологического анализа-синтеза: со словарем основ; методом логического умножения; без словарей; со словарем словоформ [1].
Морфологический анализ со словарем основ является наиболее распространенным способом анализа. Для его проведения требуется словарь основ слов и ряд вспомогательных таблиц. Основа - это неизменяемая часть слова, которая выражает его лексическое значение, то есть соотнесённость звуковой оболочки слова с соответствующими предметами или явлениями объективной действительности. Применительно к русскому языку основа - это часть слова без окончания. В английском языке основа слова, как правило, полностью совпадает с самим словом.
Если слово имеет несколько вариантов основ, то словарь, как правило, содержит все варианты. Обычно в этом случае один из вариантов основы помечается как основной, а другие варианты содержат ссылку на него. Это необходимо для дальнейшего семантического анализа, чтобы устранить различные смысловые трактовки для одного и того же слова. Дополнительные таблицы содержат, как правило, список возможных вариантов изменяемых частей слов (в русском языке - окончаний) с соответствующим им значением грамматических признаков.
В общем случае производится поиск всего слова в словаре словоформ, если слово не найдено, от него отделяется последняя буква и производится повторный поиск. Так продолжается до тех пор, пока основа не будет найдена либо пока не останется букв. В случае удачного поиска из словаря извлекаются варианты частей речи, соответствующих этой основе. Затем производится поиск в таблице изменяемых частей слова. При этом пропускаются варианты соответствующие частям речи, к которым данная основа не может относиться. Таким образом, определяются грамматические признаки разбираемой словоформы.
В основу метода морфологического анализа методом логического умножения положены положения формальной морфологии. Вводится понятие словарной функции - функции, определенной на словоформах, и сопоставляющей им некоторую информацию (последовательность нулей и единиц).
На предварительном этапе строится таблица, в которой каждой возможной букве изменяемой части (с учетом позиции в этой самой изменяемой части) ставится в соответствие вектор нулей и единиц. Каждая из позиций такого вектора соответствует определенной комбинации грамматических признаков. Единица означает, что данная буква в данной позиции может соответствовать этой комбинации грамматических признаков, ноль - что не может.
На первом этапе этот метод также предполагает членение словоформы на основу и изменяемую часть. Далее по предварительно созданной таблице векторов каждой букве изменяемой части подбирается вектор. Далее над векторами производится операция логического умножения. Таким образом определяется возможная (возможные) комбинация (-ии) грамматических признаков.
Морфологический анализ без словарей [2] проводится без использования словарей лишь с использованием таблицы аффиксов, списка слов-исключений и списка служебных неизменяемых слов (например, союзов, междометий, предлогов). Этот способ используется достаточно редко.
Также малооправданным, согласно работе Чесебиева
И.А. [1], представляется морфологический анализ со словарем словоформ,
подразумевающий наличие словаря, содержащего список все возможных словоформ с
соответствующими им грамматическими признаками. Кроме значительного роста
словаря возникает еще одна проблема: в случае отсутствия словоформы в словаре
система не имеет возможности оперировать этим словом.
.2 Процедурные методы машинной морфологии
При процедурном способе формирование словоформ осуществляется с помощью таблиц аффиксов, расклассифицированных по частям речи. Основными частями речи для синтеза являются существительное, прилагательное и глагол (глагольные формы). Наиболее сложно осуществляется синтез глагольных форм.
Процедурные методы в сравнении с декларативными требуют больших временных затрат на обработку одного слова, но объем используемых словарей позволяет загружать словари целиком в оперативную память. Кроме того, такие словари значительно легче создавать, поскольку постоянные параметры каждого слова вводятся однократно, вместе с его основой. Существенным недостатком процедурных методов является отсутствие универсальности. Другими словами, существует большое количество слов, которые нельзя представить в виде суммы неизменной основы и аффикса. Например, для английских лексем существительное «man», которое имеет во множественном числе форму «men», множество неправильных глаголов и т. д.
Существует два подхода к решению задачи процедурными методами.
Первый подход предполагает наличие словаря основ и словаря аффиксов. Для слова выполняется процедура поиска в словаре основ. При этом ищутся все основы, с которых может начинаться анализируемое слово. Если очередная основа удовлетворяет этому условию, то из словаря аффиксов извлекается строка, содержащая все возможные аффиксы для данной основы. Каждый аффикс из этой строки поочередно присоединяется к основе, и результат сравнивается с анализируемым словом. В случае их точного совпадения формируется очередная запись в список результатов поиска: по порядковому номеру аффикса в строке аффиксов определяется переменная МИ (например, для существительного - число и падеж), а по словарной информации данной основы - постоянная МИ.
Если в результате такого поиска не найдено ни одного успешного варианта, то проводится поиск среди исключений. Исключения присутствуют в словаре основ наряду с обычными основами. И те, и другие имеют в словаре информацию о постоянных морфологических признаках и о номере строки допустимых аффиксов.
Разница между исключениями и обычными основами состоит в том, что, во-первых, строка с неизменной частью слова у исключений пустая, и, во-вторых, номер строки аффиксов для исключений относится не к файлу аффиксов, а к отдельному файлу исключений. Структура этого файла точно такая же, но в него внесены целые словоформы, а не их окончания. Таким образом, при поиске среди исключений приходится просматривать все словоформы всех присутствующих в словаре исключений. Это занимает много времени, поэтому поиск среди исключений проводится только в том случае, когда не найдено ни одного варианта среди обычных основ. Сам анализ проводится точно так же. Если некоторая словоформа некоторого исключения точно совпадает с анализируемым словом, то по номеру словоформы определяются переменные морфологические параметры слова, а по словарной информации самого исключения - постоянные параметры слова. В случае, когда все этапы поиска дали отрицательный результат (не найдено ни одного варианта), пользователю выдается запрос на ввод новой основы в словарь.
Второй подход предполагает наличие словаря начальных форм и грамматической информации, необходимой для словоизменения (как-то, часть речи, род и т.д.), а также программной реализации правил словообразования. Для слов русского языка такой словарь давно разработан [3] и успешно используется при разработке морфологических парсеров. Подход состоит в том, что слово последовательно причисляется к каждой из частей речи. Последовательно выбираются окончания для этой части речи. В случае, если окончание одной из косвенных форм совпадает с концовкой слова, совпадающая часть отбрасывается, производятся чередования в основе, если слово соответствует шаблону чередования, и к полученной основе добавляется окончание леммы. При построении леммы запоминается промежуточная информация.