Обнаружение языковой неоднозначности в тексте

Иллюстрации

Показать все

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

Реферат

УРОВЕНЬ ТЕХНИКИ

[0001] Зачастую при составлении документации, в частности на двух и более языках, приходится сталкиваться с фразами, имеющими неоднозначность в толковании. В результате этого данные фразы могут быть неверно интерпретированы. Чтобы избежать неоднозначности в настоящее время проверка составленных документов зачастую полностью осуществляется вручную. Помимо этого существуют множество статей и руководств, которые содержат правила и рекомендации о том, как правильно писать и составлять документы, в том числе юридические документы и правовые акты, чтобы избежать неоднозначности в их толковании. Неверное толкование документации может иметь негативные последствия. Данные статьи и руководства обычно содержат формализованный набор правил, которым должен следовать специалист. Одним из лучших способов проверки на наличие неоднозначности в документе является независимая проверка документа несколькими людьми. Однако, в силу ряда причин, даже такая проверка может быть выполнена формально, халатно или непрофессионально. В частности, человек, проверяющий документ, может не обладать достаточными филологическими знаниями для того, чтобы выявить неоднозначные фразы и предложения. Задача окажется еще более трудоемкой для человека, не являющегося носителем языка, поскольку обнаружение неоднозначности требует глубокого знания лексики, синтаксических и морфологических правил, исключений и т.д. В то время как привлечение высококвалифицированных профессионалов - носителей языка, имеющих филологическое образование, может быть довольно затратным мероприятием, которое не всегда может быть доступно для компании или частного лица.

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

[0002] В настоящем описании представлены системы, машиночитаемые носители и способы выявления языковой неоднозначности в тексте. Иллюстрируемый способ включает в себя анализ предложений из первого текста (с использованием одного или нескольких процессоров) с целью: определения синтаксических связей между обобщенными составляющими предложения; построения графа обобщенных составляющих предложения на основе синтаксических связей и лексико-морфологической структуры предложения; анализа графа с целью выявления множества синтаксических структур предложения; присвоения оценки всем синтаксическим структурам, где оценка отображает вероятность того, что данная синтаксическая структура является верной гипотезой, описывающей, полную синтаксическую структуру предложения. Далее способ включает определение семантических структур, соответствующих синтаксическим структурам, и выбор первой семантической структуры из семантических структур и второй семантической структуры из семантических структур, где первая и вторая семантические структуры имеют соответствующие синтаксические структуры, каждая из которых имеет оценки не ниже порогового значения, и где, первая семантическая структура отлична от второй семантической структуры. Далее способ дополнительно включает в себя обнаружение семантической неоднозначности предложения на основе анализа различий между двумя семантическими структурами.

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

[0004] На приведенном в описании энергонезависимом машиночитаемом носителе информации хранятся команды для анализа предложений из первого текста, с использованием одного или нескольких процессоров, с целью: определения синтаксических связей между обобщенными составляющими предложения; построения графа обобщенных составляющих предложения на основе синтаксических связей и лексико-морфологической структуры предложения; анализа графа с целью выявления множества синтаксических структур предложения; присвоения оценки всем синтаксическим структурам, где оценка отображает вероятность того, что синтаксическая структура является правильной гипотезой, описывающей полную синтаксическую структуру предложения. Далее применяются команды для определения семантических структур, соответствующих синтаксическим структурам, и выбора первой семантической структуры из семантических структур и второй семантической структуры из семантических структур, где первая и вторая семантические структуры имеют соответствующие синтаксические структуры, каждая из которых имеет оценки не ниже порогового значения, и где, первая семантическая структура отлична от второй семантической структуры. Затем используются команды по обнаружению семантической неоднозначности предложения на основе анализа различий между первой и второй семантическими структурами.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

[0006] Фиг. 1 иллюстрирует последовательность шагов выполнения глубинного анализа в соответствие с примером осуществления в описании.

[0007] Фиг. 2 иллюстрирует последовательность структур, строящихся в процессе анализа предложения в соответствие с примером осуществления в описании.

[0008] Фиг. 2А иллюстрирует пример лексико-морфологической структуры для предложения на английском языке "The child is smart, he’ll do well in life", в соответствии с примером осуществления в описании.

[0009] Фиг. 3 иллюстрирует блок-схему в соответствии с примером осуществления в описании.

[0010] Фиг. 4 иллюстрирует пример блок-схемы семантических описаний в соответствии с примером осуществления в описании.

[0011] Фиг. 5 иллюстрирует блок-схему грубого синтаксического анализа в соответствии с примером осуществления в описании.

[0012] Фиг. 6 иллюстрирует пример графа обобщенных составляющих для предложения "This child is smart, he’ll do well in life", в соответствии с примером осуществления в описании.

[0013] Фиг. 7 иллюстрирует блок-схему точного синтаксического анализа в соответствии с примером осуществления в описании.

[0014] Фиг. 8 иллюстрирует блок-схему синтаксического дерева в соответствии с примером осуществления в описании.

[0015] Фиг. 9А, 9Б, 9В и 9Г иллюстрирует примеры синтаксических и семантических структур для предложения "The police shot rioters with guns" в соответствии с примером осуществления в описании.

[0016] Фиг. 10 иллюстрирует блок-схему языкового описания в соответствии с примером осуществления в описании.

[0017] Фиг. 11 иллюстрирует блок-схему морфологического описания в соответствии с примером осуществления в описании.

[0018] Фиг. 12 иллюстрируетблок-схему семантического описания в соответствии с примером осуществления в описании.

[0019] Фиг. 13 иллюстрируетблок-схему лексического описания, в соответствии с примером осуществления в описании.

[0020] Фиг. 14 иллюстрирует блок-схему последовательности шагов анализа документа на наличие в нем предложений, имеющих несколько толкований в соответствии с примером осуществления в описании.

[0021] Фиг. 15А, 15Б, 15В и 15Г иллюстрируют примеры (схемы)синтаксического дерева, полученного в результате точного синтаксического анализа английского словосочетания "The Russian history student" в соответствии с примером осуществления в описании.

[0022] Фиг. 16 иллюстрирует блок-схему для синтеза перевода с использованием универсальной семантической в соответствии с примером осуществления в описании.

[0023] Фиг. 17 иллюстрирует блок-схему последовательности шагов анализа параллельных документов на наличие в них предложений, имеющих несколько толкований в соответствии с примером осуществления в описании.

[0024] Фиг. 18А и 18Б иллюстрируют примеры семантических деревьев, полученных в результате анализа предложения на английском "Chickens are ready for dinner" и предложения на русском "Куры готовы поесть" в соответствии с примером осуществления в описании.

[0025] Фиг. 19 иллюстрирует пример семантического дерева для предложения на русском языке "ПОЧВУ НУЖНО ПОКРЫТЬ УДОБРЕНИЕМ, ПРЕЖДЕ ЧЕМ ОНА ЗАМЕРЗНЕТ" в соответствии с примером осуществления в описании.

[0026] Фиг. 20 иллюстрирует схему аппаратного обеспечения в соответствии с примером осуществления в описании.

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

ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ

[0028] Применение различных описанных способов реализации, связанных с определением смысла предложений в тексте, в том числе, на основе использования семантической иерархии.

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

[0030] Например, по причине наличия неоднозначности в тексте может возникнуть такая ситуация, что условия в уже подписанном юридическом соглашении могут толковаться участниками соглашения по-разному. Система анализа естественных языков, входящая в настоящее изобретение, может автоматически находить и выделять в документе неоднозначные фразы или утверждения, которые могут трактоваться двумя или более возможными способами. Таким образом, изобретение позволяет устранить риски, связанные с человеческим фактором, которые могут возникнуть при ручной проверке соглашений юристами обеих сторон. Более того, данная система может быть использована в машинном переводе (пользователю могут быть представлены несколько вариантов перевода для предложений, имеющих различные толкования) или для проверки правильности результатов машинного перевода. Более того, данное изобретение также может быть использовано для проверки параллельных текстов (корпусов текстов) на точность их выравнивания. Такая функция особенно полезна при проверке ручного выравнивания параллельных текстов из внешних источников, переводческих баз данных и пр.

[0031] Настоящее изобретение предназначено для выявления и анализа семантической неоднозначности в текстах (корпусе текстов). В основе изобретения лежит принцип синтаксического анализа на базе исчерпывающих лингвистических описаний, описанных в патенте США 8078450. Так как подобный анализ основан на использовании независимых от языка смысловых единиц, данное изобретение также не зависит от языка и позволяет работать с одним или несколькими естественными языками.

[0032] В патенте США 8078450 описан способ, включающий глубинный синтаксический и семантический анализ текстов на естественном языке, основанный на исчерпывающих лингвистических описаниях. Данная технология может быть использована для выявления смысловой неоднозначности текста. Способ использует широкий спектр лингвистических описаний и семантических механизмов, как универсальных, так и относящихся к конкретному языку, что позволяет отразить многообразие реального языка, не прибегая к упрощениям и искусственным ограничениям, а также без угрозы неуправляемого роста сложности. Кроме того, указанные способы анализа основаны на принципах целостного и целенаправленного распознавания. Это означает, что гипотезы о структуре части предложения верифицируются в рамках проверки гипотезы о структуре всего предложения, что позволяет избежать анализа множества аномалий и вариаций.

[0033] Глубинный анализ включает в себя лексико-морфологический, синтаксический и семантический анализ предложений в текстовом корпусе, в результате которых строятся независимые от языка семантические структуры, в которых каждому слову текста сопоставляется соответствующий семантический класс. Фиг. 1 иллюстрирует общую схему способа глубинного анализа. Текст (105) подвергается исчерпывающему семантико-синтаксическому анализу (106) с использованием лингвистических описаний исходного языка и универсальных семантических описаний, что позволяет анализировать не только поверхностную синтаксическую структуру, но и глубинную семантическую структуру, выражающую смысл высказывания, содержащегося в каждом предложении, а также связи между предложениями или фрагментами текста. Лингвистические описания могут включать лексические (101), морфологические (102), синтаксические (103) и семантические описания (104). Анализ (106) представляет собой синтаксический анализ, реализованный в виде двухэтапного алгоритма (грубого синтаксического анализа и точного синтаксического анализа) с использованием лингвистических моделей и информации различных уровней для вычисления вероятностей и генерации множества синтаксических структур. Фиг. 2 иллюстрирует последовательность структур, строящихся в процессе анализа предложения. Фиг. 2 и Фиг. 2А описаны более подробно ниже.

[0034] Грубый синтаксический анализ

[0035] Фиг. 3 иллюстрирует блок-схему этапа, обозначенного под номером 106 на Фиг. 1. На этом этапе применяется грубый синтаксический анализатор (322) для выявления всех потенциально возможных синтаксических связей в предложении. В результате создается граф обобщенных составляющих (360) на основе проведенного анализатором (312) лексико-морфологического анализа (120) лексико-морфологической структуры (350) с использованием поверхностных моделей (410), глубинных моделей (512) и лексико-семантического словаря (314). Граф обобщенных составляющих (360) - это ациклический граф, вершины которого представляют собой обобщенные (включающие все возможные варианты) лексические значения слов предложения, а дуги - поверхностные (синтаксические) позиции, выражающие разные типы отношений между соединяемыми лексическими значениями. Для каждого элемента лексико-морфологической структуры предложения, который может представлять собой ядро составляющих, применяются все возможные поверхностные синтаксические модели. Далее все возможные составляющие включаются в граф обобщенных составляющих (232). В результате анализа всех возможных синтаксических описаний и структур для исходного предложения (302) на основе множества обобщенных составляющих строится граф обобщенных составляющих (360). Граф обобщенных составляющих (360) отражает все потенциальные связи между словами исходного предложения (302) с помощью поверхностной модели. Поскольку число вариантов синтаксического разбора может быть велико, граф обобщенных составляющих (360) избыточен, т.е. может содержать множество вариантов - как для выбора лексического значения (вершины), так и для поверхностных позиций (дуги графа).

[0036] Для каждой пары "лексическое значение-грамматическое значение" инициализируется ее поверхностная модель и прикрепляются другие составляющие в поверхностных позициях (415) синтформы (412) ее поверхностной модели (410) к правым и левым соседним составляющим. Синтаксические описания проиллюстрированы на Фиг. 4. Если подходящая синтаксическая форма найдена в поверхностной модели соответствующего лексического значения (410), выбранное лексическое значение может служить ядром новой составляющей.

[0037] Согласно примеру осуществлении, граф обобщенных составляющих (360) вначале строится в виде дерева (другие структуры также могут быть использованы) или другой структуры, начиная от листьев к корням (снизу вверх). Построение дополнительных составляющих может происходить путем снизу вверх путем прикрепления дочерних составляющих к родительским составляющим посредством заполнения поверхностных позиций (415) родительских составляющих для того, чтобы охватить все начальные лексические единицы исходного предложения (302).

[0038] Согласно примеру осуществления в описании, корень дерева является главной частью, представляющей специальную составляющую, соответствующую различным типам максимальных единиц текстового анализа (завершенным предложениям, нумерации, заглавиям, и т.д.). Ядром главной части является обычно предикат (сказуемое). Фактически, дерево превращается в граф, поскольку составляющие более низких уровней (листья) могут быть включены в различные составляющие верхнего уровня (корни).

[0039] Некоторые составляющие, построенные для одних и тех же составляющих лексико-морфологической структуры, могут быть впоследствии обобщены для создания обобщенных составляющих. Составляющие обобщаются на основе лексических (1312, Фиг. 13) и грамматических значений (414), например, на основе частей речи и их связей. Поскольку в предложении существует множество различных синтаксических связей, и одно и то же слово может быть включено в несколько составляющих, составляющие обобщаются при помощи границ (связей). В результате грубого синтаксического анализа (130) строится граф обобщенных составляющих (360), который описывает все предложение целиком.

[0040] Фиг. 5 иллюстрирует процесс грубого синтаксического анализа (130) в соответствии с одной или несколькими реализациями изобретения. Грубый синтаксический анализ (130) обычно включает предварительный сбор составляющих (510), построение обобщенных составляющих (520), фильтрацию (170), построение моделей обобщенных составляющих (540), обработку согласований (550), восстановление эллипсисов (560) и т.д.

[0041] Согласно примеру осуществления в описании, предварительный сбор составляющих (510) на этапе грубого синтаксического анализа (130) выполняется на основе лексико-морфологической структуры (350) анализируемого предложения, включая определенные группы слов, слова в скобках, кавычках, и т.д. Только одно слово в группе (ядро составляющей) может присоединять составляющую или быть присоединенным к составляющей за пределами группы. Предварительный сбор (510) выполняется в начале грубого синтаксического анализа (130) перед построением обобщенных составляющих (520) и моделей обобщенных составляющих (530) для того, чтобы охватить все связи во всем предложении. В процессе грубого синтаксического анализа (130) обрабатывается огромное число составляющих, которые могут быть построены, а также синтаксических связей между ними. Некоторые из поверхностных моделей (410) выбираются, чтобы отсортировать в процессе фильтрации (570) до и после построения составляющих для того, чтобы значительно уменьшить число составляющих, которые необходимо проанализировать. Поэтому на начальном этапе грубого синтаксического анализа (130) используются наиболее подходящие поверхностные модели и синтформы, подобранные на основе априорных оценок. К грубым априорным оценкам относятся оценки лексических значений, оценки заполнителей, оценки семантических описаний и пр. Фильтрация (570) на этапе грубого синтаксического анализа (130) представляет собой фильтрацию множества синтаксических форм (412), которая выполняется до и во время построения обобщенных составляющих (520). Синтформы (412) и поверхностные позиции (415) фильтруются заранее, а составляющие - после того, как они уже построены. Процесс фильтрации (570) позволяет существенно уменьшить число рассматриваемых вариантов разбора. Следует учесть, что исключение маловероятных вариантов значений, поверхностных моделей и синтформ из последующего анализа может привести к потере маловероятного, но, тем не менее, возможного смысла.

[0042] Когда все возможные составляющие построены, выполняется процедура обобщения для построения обобщенных составляющих (520). Все возможные омонимы и значения для элементов исходного предложения, которые могут быть представлены одной и той же частью речи, собираются и обобщаются. Все возможные составляющие, построенные таким образом, группируются в обобщенные составляющие (522).

[0043] Согласно примеру осуществления, обобщенная составляющая (522) описывает все составляющие со всеми возможными связями в исходном предложении, которое имеет словарные формы в качестве основных составляющих, и различные лексические значения этой формы слова.. Далее выполняется построение моделей обобщенных составляющих (530) и строится множество моделей (532) обобщенных составляющих, имеющих обобщенные модели всех обобщенных лексем. Модели обобщенных составляющих лексем содержат обобщенную глубинную и обобщенную поверхностную модель. Обобщенная глубинная модель лексем включает список всех глубинных позиций, которые имеют одинаковое лексическое значение для каждой лексемы, а также описания всех требований для заполнителей глубинных позиций. Обобщенная поверхностная модель содержит информацию о синтформах (412), в которых может содержаться лексема, поверхностных позициях (415), диатезах (417) (связях поверхностных (415) и глубинных позиций (1214)), а также описание линейного порядка (416).

[0044] Диатеза (417) строится на этапе грубого синтаксического анализа (130). Каждая диатеза представляет собой соответствие между обобщенными поверхностными и обобщенными глубинными моделями. Список всех возможных семантических классов для всех диатез лексемы (417) рассчитывается для каждой поверхностной позиции (415).

[0045] На Фиг. 5 показано, как информация из синфторм (412) синтаксического (102) и семантического описания (104) используется для построения моделей обобщенных составляющих (532). Например, зависимые составляющие могут прикрепляться к лексическим значениям (1312). В данном случае грубый синтаксический анализ (130) необходим для того, чтобы установить, может ли возможная составляющая или зависимая составляющая стать заполнителем соответствующей глубинной позиции семантического описания (104) для основной составляющей. Такой сравнительный анализ позволяет отсечь на ранней стадии неверные синтаксические связи.

[0046] Далее выполняется построение графа обобщенных составляющих (540). Граф обобщенных составляющих (360) описывает все возможные синтаксические структуры предложения путем сбора и связи обобщенных составляющих (522) друг с другом.

[0047] Фиг. 6 демонстрирует пример графа обобщенных составляющих (600) для предложения "This child is smart, he’ll do well in life". Составляющие представлены в виде прямоугольников. Ядром каждой из составляющих является лексема. Морфологическая парадигма ядра составляющей (как правило, это часть речи) выражена граммемами частей речи. На схеме парадигма расположена под лексемами и обозначена угловыми скобками. Морфологические парадигмы (части описания слова) могут изменяться. Морфологическое описание содержит всю информацию о словоизменении одной или нескольких частей речи. Например, слово "do" может быть одной из двух частей речи: глаголом (<Verb>) или существительным (<Noun>). Такие случаи обозначаются обобщенной морфологической парадигмой <Noun&Pronoun>. На графе показаны две составляющие для слова "do" (600).

Помимо этого слово "well" на графе также представлено двумя составляющими. Поскольку в исходном предложении использовано сокращение "he’ll", в графе представлены два возможных значения: "will" и "shall". Задача точного синтаксического анализа состоит в выборе из всех возможных составляющих лишь тех, которые будут образовывать синтаксическую структуру исходного предложения.

[0048] Связи в графе (600) представляют собой заполненные поверхностные позиции ядра составляющей. Название позиции показано на стрелке графа. Составляющая сформирована ядром лексемы, которая может иметь исходящие именованные стрелки, которые обозначают поверхностные позиции (415) заполненные дочерними составляющими совместно с дочерними составляющими как таковыми. Входящая стрелка обозначает прикрепление этой составляющей к поверхностной позиции другой составляющей. Граф (600) имеет множество стрелок (дуг) все возможные связи, которые могут быть установлены между составляющими предложения. Среди них существуют связи, которые будут в дальнейшем отвергнуты. Значение упомянутых ранее грубых способов оценкис Сохраняется для каждой стрелки, обозначающей заполненную глубинную позицию. Как правило, только поверхностные позиции и связи с высоким значением рейтинговых оценок в первую очередь будут выбраны на следующем этапе синтаксического анализа.

[0049] Возможно, что несколько ветвей могут соединять одни и те же пары составляющих. Это означает, что для этой пары составляющих существует несколько подходящих поверхностных моделей, и несколько поверхностных позиций родительских составляющих могут быть независимо заполнены этими дочерними составляющими. Например, три поверхностных позиции - Idiomatic_Adverbial (610), Modifier Adverbial (620) и AdjunctTime (630) родительской составляющей "do<Verb>" (650) могут быть независимо заполнены дочерней составляющей "well<Verb>" (640) в соответствии с поверхностной моделью составляющей "do<Verb>". Таким образом, "do<Verb>" (650) + "well<Verb>" образуют новую составляющую с ядром "do<Verb>", которая соединена с другой родительской составляющей - например, с #NormalSentence<Clause> (660) в поверхностной позиции Verb (670) и с "child<Noun&Pronoun>" (680) в поверхностной позиции RelativClause_DirectFinite (690). Помеченный элемент #NormalSentence<Clause> (660) - это "корень", который относится ко всему предложению.

[0050] На Фиг. 5 показано, как обработка согласований (550) также выполняется на графе обобщенных составляющих (360). Согласование - это явление языка, которое представлено в предложениях с числительными и (или) соединительными союзами, такими как [и], [или], [но], и т.д. Простой пример предложения с координацией - "John, Mary and Bill come home". В этом случае только одна из дочерних составляющих прикрепляется к поверхностной позиции родительской составляющей на этапе построения графа обобщенных составляющих (540). Если составляющая, которая может быть родительской, имеет поверхностную позицию, заполненную для согласованной составляющей, для всех согласованных составляющих делается попытка прикрепления дочерних составляющих к родительской, независимо от наличия связи между согласованными составляющими. На этапе обработки согласования (550) определяется линейный порядок, а также возможность множественного заполнения поверхностных позиций. Если возможно, создается и прикрепляется предварительная форма, которая относится к общей дочерней составляющей. На Фиг. 5 показано, как обработчик сгласования (582) или другие алгоритмы могут быть адаптированы для выполнения обработки согласования (550) с использованием описаний (454) при построении графа обобщенных составляющих (540). Алгоритм диспетчера (590) может быть настроен для построения моделей обобщенных составляющих (540).

[0051] Построение графа обобщенных составляющих (540) может быть невозможным без восстановления эллипсиса (560). Эллипсис - это явление языка, выраженное в отсутствии основной составляющей. Процесс восстановление эллипсиса (560) также необходим для восстановления пропущенных составляющих. В английском языке примером эллиптического предложения может быть "The President signed the agreement and the secretary [signed] the protocol". Согласование (550) и восстановление эллипсиса (560) выполняются на этапе каждого цикла программы-диспетчера (590) по окончании построения графа обобщенных составляющих (540), после чего построение может быть продолжено (этот шаг обозначен стрелкой 542). В случае необходимости восстановления эллипсиса (560) и результатов (130) грубого синтаксического анализа (например, несвязанных составляющих), все остальные составляющие обрабатываться не будут. Алгоритм обработки эллипсиса (580) может быть адаптирован для восстановления эллипсиса (560).

[0052] Точный синтаксический анализ

[0053] Точный синтаксический анализ (140) выполняется в целях построения синтаксического дерева исходного предложения, которое представляет собой дерево лучшей синтаксической структуры. Дерево описывает лучшую синтаксическую структуру (370) исходного предложения, выявленную на основе анализа совокупности оценок. Может быть построено множество синтаксических деревьев. В качестве лучшего дерева будет принята наиболее вероятная синтаксическая структура предложения (370). Семантический анализ (150) проводится семантическим анализатором (342) на основе лучшей синтаксической структуры (370). На его основе генерируется семантическая структура исходного предложения (380). Фиг. 3 показывает, что точный синтаксический анализатор (332) или его аналоги предназначены для выполнения точного синтаксического анализа (140) и создания наилучшей синтаксической структуры (370) на основе вычисления оценок с использованием априорных оценок (336) из графа обобщенных составляющих (360). Априорные оценки (336) включают в себя оценки лексических значений (таких как частота или вероятность), оценки синтаксических конструкций (идиомы, словосочетания и т.д.) для каждого элемента в предложении, а также оценки степени согласованности выбранной синтаксической конструкции и семантического описания глубинных позиций (1220). Помимо априорных оценок могут использоваться статистические оценки, полученные в результате обучения анализатора на больших текстовых корпусах. Вычисляются интегральные оценки и сохраняются системой.

[0054] На следующем этапе выдвигаются гипотезы об общей синтаксической структуре предложения. Каждая гипотеза представлена в виде дерева, которое в свою очередь является подграфом графа обобщенных составляющих (360), охватывающего все предложение целиком. После этого вышеуказанные оценки рассчитываются для каждого синтаксического дерева. В ходе выполнения точного синтаксического анализа (140) гипотезы о синтаксической структуре предложения проверяются путем расчета различных типов оценок. Эти оценки высчитываются как степень согласованности заполнителя глубинных позиций составляющей к их грамматическим и семантическим описаниям, таким как грамматические ограничения в синтформах (например, грамматические значения (414)) и семантические ограничения на заполнение глубинных позиций (1214) в глубинной модели (1212). Также используются степени свободы лексических значений (1312) прагматических описаний (344). Они представляет собой абсолютные и (или) условные вероятностные оценки синтаксических конструкций (поверхностных моделей (410)) и степень сочетаемости их лексических значений с остальными составляющими.

[0055] Оценки для каждого вида гипотез могут быть рассчитаны на основе грубых априорных оценок, полученных в результате грубого синтаксического анализа (130). Например, грубая оценка рассчитывается для каждой обобщенной составляющей в графе обобщенных составляющих (360), в результате чего могут быть получены рейтинговые оценки. Для различных оценок могут быть построены синтаксические деревья. Рассчитанные рейтинговые оценки используются при создании гипотез о полной синтаксической структуре предложения. Для этого выбирается гипотеза с наибольшей оценкой. Рейтинг рассчитывается в ходе выполнения точного синтаксического анализа до тех пор, пока не будет получен удовлетворительный результат (построено лучшее синтаксическое дерево с наибольшей оценкой).

[0056] Далее генерируются и выдвигаются гипотезы, которые отражают наиболее вероятную синтаксическую структуру всего предложения. Гипотезы, полученные на основе анализа синтаксической структуры (370), могут иметь более высокий или более низкий рейтинг. Анализ выполняется до тех пор, пока не будет получен удовлетворительный результат или не будет построено лучшее синтаксическое дерево с наибольшей оценкой.

[0057] Лучшее синтаксическое дерево выбирается в качестве гипотезы о синтаксической структуре с наибольшей оценкой, которая отражена в графе (360) обобщенных составляющих. Это синтаксическое дерево считается наилучшей (наиболее вероятной) гипотезой о синтаксической структуре исходного предложения (302). Затем в предложении строятся недревесные связи. После этого синтаксическое дерево трансформируется в граф с наилучшей синтаксической структурой (370), иллюстрирующий наилучшую гипотезу о синтаксической структуре исходного предложения. Если в лучшей синтаксической структуре недревесные связи не могут быть восстановлены, анализ повторяется с использованием следующей в рейтинге структуры.

[0058] Если точный синтаксический анализ выполнен неуспешно или наиболее вероятная гипотеза не может быть найдена после точного синтаксического анализа, происходит возврат (334) от построения неудачной синтаксической структуры на этапе точного синтаксического анализа (140) к этапу проведения грубого синтаксического анализа (130). Причем в процессе повторного анализа рассматриваются все синтформы (а не только лучшие). Если ни одно лучшее синтаксическое дерево не найдено или система не смогла восстановить недревесные связи во всех выбранных "наилучших структурах", проводится дополнительный грубый синтаксический анализ (130), который учитывает "плохие" синтформы, которые не были проанализированы ранее.

[0059] Фиг. 7 подробно иллюстрирует точный синтаксический анализ (140), который выполняется для выбора множества наилучших синтаксических структур (370), в соответствии с рассматриваемыми способами осуществления изобретения. Точный синтаксический анализ (140) проводится от структур более высокого к структурам более низкого уровня ("сверху-вниз"). Например, анализ может вестись от вершины в возможном узле графа обобщенных составляющих (360) к дочерним составляющим более низкого уровня.

[0060] Точный синтаксический анализ (140) может включать различные этапы: первоначальный этап, этап создания графа точных составляющих (750), этап создания синтаксических деревьев и дифференциального выбора наилучшей синтаксической структуры (760), этап восстановления недревесных связей (770), получение лучшей синтаксической структуры и т.д. На этапе предварительного анализа граф обобщенных составляющих (360) анализируется с целью подготовки данных для точного синтаксического анализа (140).

[0061] В процессе точного синтаксического анализа (140) строятся точные составляющие. Обобщенные составляющие (522) используются для построения графа точных составляющих (730), на основе которого затем создаются деревья точных составля