Система семантического разбора для естественно-языковых текстов
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
?ой задачей, данная система будет спользовать библиотеку mcr.dll позволяющюю подключать, создавать и сохранять словари в формате mcr, выполнять поиск слов в этих словарях, морфоанализ, лемматизацию, орфокоррекцию, стемминг и еще некоторые другие функции.
Морфоанализ данной библеотеки построен на основе словаря А. А. Зализняка содержащий порядка 100 тысяч слов общеупотребительной лексики языка (в формате mcr), который прилагается к программным модулям.
.3 Статистический анализ
Статистический анализ - позволяет получить статистику, т.е. какие слова и сколько раз встретились в тексте. Предусмотрена возможность совместного подсчета словоформ - то есть слов в разном роде, падеже и пр. (объединяются похожие слова, которые имеют разное окончание). Есть возможность не учитывать слова, которые встретились только один раз. Данный анализ даст больше информации о тексте и упростит задачу семантического анализа.
Данный статистический анализ можно разбить на блоки, которые изображены на рисунке 4.4.
Рисунок 4.4 - Блоки статистический анализа
Первый блок, данного анализа, осуществляет простой подсчет количества лемм и предложений в анализируемом тексте.
Во втором блоке осуществляет поиск и количественный подсчет служебных частей речи, а именно, такие как: предлоги, союзы, частицы, междометия и т.п.
Третий блок позволит выделить группу слов-объектов и определить количество, встречаемых по каждому из слов. К данной группе относятся частей речи, как существительные, прилагательные и числительные.
Четвертый блок аналогичен предыдущему, за исключением, что анализируемые слова относятся к группе слов-отношений. К данной группе относятся такие частей речи, как глаголы.
И завершающий блок, из группы слов-объектов выделит, и определить их количество, по форме слова. Имеется виду, слова схожие по своему лексическому значению (дом - дому, домом, дома).
.4 Синтаксический анализ
На сегодня создание синтаксического анализа является одной из самых актуальных задач в компьютерной лингвистике, решение которой позволило бы достичь высокого уровня формализации языковых структур в разнообразных прикладных целях: от создания систем автоматического распознавания речи до поисковых систем в Интернете.
Под целью синтаксического анализа понимается вычленение базовых синтаксических структур и установление синтаксических связей между ними.
На выход поступает цепочка слов, разбитая на группы, причем каждая группа имеет связь с другими группами. Кроме того, модуль синтаксического анализа идентифицирует такие синтаксические категории, как подлежащее и сказуемое.
Однако создание синтаксического анализа для русского языка упирается в большое количество сложностей, связанных с недостаточно разработанной теоретической базой, в общем, и прикладном языкознании.
Структуры человеческого языка отличаются разнообразием и часто высоким уровнем сложности, предусмотреть который чрезвычайно тяжело.
Синтаксический анализ был разбит на три блока изображенных на рисунке 4.5.
Из модуля морфологического анализа, в котором для слоаоформы есть все возможные варианты основ и соответствующие грамматические показатели. Если данной словоформе соответствует только одна основа, она поступает в процедуру построения гипотез. В зависимости от части речи и грамматических показателей выделяется соответствующая синтаксическая группа. В том случае, когда одной словоформе соответствует несколько основ, построение гипотез осуществляется для всех вариантов основ. Если словоформа не найдена в словаре, то результатом будет неразобранное предложение.
Рисунок 4.5 - Блоки синтаксического анализа
После предварительной обработки словоформа поступает в блок генерирования гипотез. Этот блок является основным. На его вход поступает словоформа. Если это первое слово в предложении, то в соответствии с частью речи определяется синтаксическая группа. На основании исходного текста был составлен список частей речи, которые в нем встречаются. Список включает в себя: имя существительное, финитный глагол, прилагательное, краткое прилагательное, инфинитив, наречие, предлог, сочинительный союз "и", вспомогательный глагол "быть" и другие части речи.
Далее эти гипотезы поступают в блок отсеивания неправильных гипотез. Данный блок имеет два уровня проверки.
На первом уровне проверяется согласование синтаксических групп в рамках одного предложения. Это согласование определяется исходя из грамматических характеристик вершин групп. То есть группа подлежащего и группа сказуемого должны согласоваться по роду, лицу и числу. Если согласование подтверждается, то гипотеза поступает на второй уровень проверки. В противном случае гипотеза отсеивается.
На втором уровне проверяются связи слов внутри каждой группы. В зависимости от типа связи слов внутри группы (управление, согласование или примыкание) проверяются соответствующие грамматические характеристики элементов группы. Если связь не подтверждается - гипотеза отсеивается.
.5 Семантический анализ
Завершающим этапом системы является семантический анализ. На основе синтаксического и статистического анализов текста, полученные структуры и количественные данные объектов преобразуются семантическую сеть.
В теории, узлы сети представлены множеством часто встречавшихся термов - слов и устой