Система семантического разбора для естественно-языковых текстов

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



?ой задачей, данная система будет спользовать библиотеку mcr.dll позволяющюю подключать, создавать и сохранять словари в формате mcr, выполнять поиск слов в этих словарях, морфоанализ, лемматизацию, орфокоррекцию, стемминг и еще некоторые другие функции.

Морфоанализ данной библеотеки построен на основе словаря А. А. Зализняка содержащий порядка 100 тысяч слов общеупотребительной лексики языка (в формате mcr), который прилагается к программным модулям.

.3 Статистический анализ

Статистический анализ - позволяет получить статистику, т.е. какие слова и сколько раз встретились в тексте. Предусмотрена возможность совместного подсчета словоформ - то есть слов в разном роде, падеже и пр. (объединяются похожие слова, которые имеют разное окончание). Есть возможность не учитывать слова, которые встретились только один раз. Данный анализ даст больше информации о тексте и упростит задачу семантического анализа.

Данный статистический анализ можно разбить на блоки, которые изображены на рисунке 4.4.

Рисунок 4.4 - Блоки статистический анализа

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

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

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

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

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

.4 Синтаксический анализ

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

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

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

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

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

Синтаксический анализ был разбит на три блока изображенных на рисунке 4.5.

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

Рисунок 4.5 - Блоки синтаксического анализа

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

Далее эти гипотезы поступают в блок отсеивания неправильных гипотез. Данный блок имеет два уровня проверки.

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

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

.5 Семантический анализ

Завершающим этапом системы является семантический анализ. На основе синтаксического и статистического анализов текста, полученные структуры и количественные данные объектов преобразуются семантическую сеть.

В теории, узлы сети представлены множеством часто встречавшихся термов - слов и устой