Метод анализа тональности текстовых данных
Иллюстрации
Показать всеНастоящее изобретение относится к области автоматического определения значений в естественном языке, а именно к способам и системам обработки естественного языка, обработки текстов и массивов текстов на естественном языке. Техническим результатом является определение тональности на основе анализа текстовой информации. Настоящее изобретение обеспечивает способ проведения анализа текстовых данных, а также систему для проведения анализа текстовых данных и энергонезависимый машиночитаемый носитель информации. Способ настоящего изобретения включает получение текстовых данных; выполнение глубинного синтактико-семантического анализа текстовых данных; извлечение сущностей и фактов из текстовых данных на основе результатов глубинного синтактико-семантического анализа, которое включает в себя извлечение тональностей с использованием тонального словаря, построенного с использованием семантической иерархии. Согласно изобретению используется метод анализа тональности на уровне сущностей и аспектов, или другими словами направленный анализ тональности текстовых данных. Преимуществом направленного анализа тональности является тот факт, что он позволяет выявить не только саму тональность (отрицательную, положительную и т.д.), но и объект, и субъект тональности. 3 н. и 18 з.п. ф-лы, 19 ил.
Реферат
ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящее изобретение относится к устройству, системе, способу и компьютерной программе в области автоматического определения значений в естественном языке, а именно к способам и системам обработки естественного языка (natural language processing), обработки текстов и массивов текстов на естественном языке. Одной из целей изобретения является анализ текстовой информации для последующего определения его тональности (Sentiment Analysis).
УРОВЕНЬ ТЕХНИКИ
[0002] В настоящее время задачи прикладной лингвистики, а именно семантический анализ, извлечение информации (Fact Extraction), анализ тональности (Sentiment Analysis) особенно популярны в связи с развитием современных технологий и стремительно растущим спросом на технологические продукты, способные качественно обрабатывать текстовые данные и предоставлять результаты в доступном и понятном для пользователя виде.
[0003] Одним из источников текстовых данных могут служить всевозможные сообщения в социальных сетях, форумах, электронной почте и т.д. Извлечение информации из текстовых данных является наиболее актуальной задачей современного мира. Умение анализировать текстовые данные на уровне понимания смысла, вложенного в текст, открывает множество возможностей: от изучения мнений пользователей о недавно вышедшем в прокат фильме до построения прогнозов на финансовых рынках.
[0004] В настоящее время многие компании сталкиваются с проблемой эффективного управления сотрудниками в виду отсутствия объективной информации о внутренней атмосфере в компании, эмоциональном состоянии и настрое персонала, наиболее актуальных и вызываемых беспокойство у сотрудников проблем, наиболее обсуждаемых и популярных тем. Задачами поддержания здорового корпоративного духа в компаниях занимаются целые подразделения, однако даже эти специализированные подразделения не в состоянии объективно оценить атмосферу в компании, понять насколько полезны и необходимы проводимые ими действия, каковы будут последствия этих действий и насколько они будут оправданы в будущем. Не всегда предоставляется возможным выявить пожелания сотрудников по организации комфортных условий их работы, бесконфликтного взаимодействия различных подразделений и т.д.
[0005] Одним из предлагаемых способов эффективного управления компанией является инструмент, который может быть полезен как руководству компании, так и подразделению по работе с сотрудниками, инструмент, направленный на анализ текстовых данных, содержащейся в корпоративных форумах и других средствах обмена сообщений между сотрудниками (например, корпоративной почты).
[0006] Целью анализа текстовых данных, например, сообщений, является выявление лидеров в компании, контролирование внутренней атмосферы (temperature measuring) как во всей компании, так и ее подразделениях, выявление социальных связей (social networks) между коллегами и подразделениями, выявление острых проблем, существующих в коллективе, особо популярных тем для обсуждения и т.д. Анализ текстовых данных основан на использовании методов прикладной лингвистики, а именно семантического анализа на основе Семантической Иерархии, анализа тональности, извлечении фактов и т.д.
[0007] Изобретение полезно для повышения эффективности работы компании за счет анализа настроения коллектива, может быть применено при прогнозировании организующихся событий, проведения анализа проведенных мер. Позволяет осуществлять более гибкое руководство компанией за счет более полного представления о сотрудниках. [0008] Анализ тональности может осуществляться на одном из нижеуказанных уровней. А именно анализ тональности может происходить на уровне предложения (sentence level SA), на уровне документа (document level SA), или на уровне сущностей и аспектов (entity and aspect level), или другими словами направленный анализ тональности.
[0009] Анализ тональности на уровне предложения позволяет определить, какое мнение (эмоцию) выражает предложение в целом, негативную, положительную или нейтральную. Определение тональности на уровне предложения может быть осуществлено на основе лингвистического подхода. Лингвистический подход не требует большой коллекции размеченных корпусов, предназначенных для обучения, однако использует тональные словари эмоционально окрашенной лексики. Существует множество способов создания тональных словарей, но все они требуют участия человека. Ввиду этого лингвистический подход достаточно ресурсозатратный, что делает его практически неприменимым на практике в чистом виде.
[0010] Анализ тональности на уровне документа использует статистический подход. Статистический подход имеет ряд преимуществ, он достаточно нетрудоемок в реализации. Однако статистический подход требует наличия большой базы обучающей коллекции размеченных текстов. Обучающая коллекция текстов должна быть при этом достаточно репрезентативной, или другими словами, должна содержать достаточное количество лексики, необходимой для обучения классификатора в различных предметных областях. В результате применения обученного классификатора к неразмеченному тексту, исходный документ (текстовое сообщение) классифицируется в целом, как выражающее отрицательное или положительное мнение (эмоцию). Количество классов может быть отличным от приведенного выше примера. Например, классы могут быть расширены до сильно негативных, сильно положительных и т.д.
[0011] Ни один из вышеупомянутых уровней анализа тональности (а именно sentence level, document level) не позволяет выявить тональность на локальном уровне, а именно не позволяет извлечь информацию о конкретных сущностях, их аспектах и их тональной окраске в текстовых данных.
[0012] Методы анализа тональности на уровне предложения или документа обобщают имеющуюся информацию, что в конечно итоге приводит к потере данных.
[0013] Согласно представленному изобретению используется метод анализа тональности на уровне сущностей и аспектов, или другими словами направленный анализ тональности текстовых данных. Преимуществом направленного анализа тональности (aspect and entity level) является тот факт, что он позволяет выявить не только саму тональность (sentiment) (отрицательную, положительную и т.д.), но и объект, и субъект тональности ("Object of Sentiment" or "Target of Sentiment").
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0014] Один из аспектов настоящего изобретения относится к способу проведения анализа текстовых данных. Способ включает в себя получение вычислительным устройством текстовых данных, выполнение глубинного синтактико-семантический анализа полученных текстовых данных, извлечение сущностей и фактов из текстовых данных на основе результатов глубинного синтактико-семантического анализа, которое включает в себя извлечение тональностей с использованием тонального словаря построенного с использованием семантической иерархии. Способ, дополнительно включает этап определения знака извлеченных тональностей. Способ дополнительно включает этап определения общей тональности текстовых данных. Способ дополнительно включает этап выделения социальных связей на основе извлеченных сущностей и фактов. Способ дополнительно включает этап выделения тем на основе извлеченных сущностей и фактов. Способ дополнительно включает выполнение анализа атмосферы в коллективе на основе извлеченных тональностей. Способ, дополнительно включает этап классификации текстовых данных на основе извлеченных тональностей.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0015] Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
[0016] Фиг.1 иллюстрирует пример блок-схемы, демонстрирующей последовательность шагов в соответствии с одним из способов реализации данного изобретения.
[0017] Фиг.2 иллюстрирует пример лексической структуры для предложения "This child is smart, he'll do well in life".
[0018] Фиг.3 иллюстрирует последовательность шагов выполнения глубинного анализа в соответствии с одним из способов реализации данного изобретения.
[0019] Фиг.4 иллюстрирует схему этапа, включающего грубый синтаксический анализатор в соответствии с одним из способов реализации данного изобретения.
[0020] Фиг.5 иллюстрирует синтаксические описания в соответствии с одним из способов реализации данного изобретения.
[0021] Фиг.6 иллюстрирует детально процесс грубого синтаксического анализа в соответствии с одним из способов реализации данного изобретения.
[0022] Фиг.7 иллюстрирует пример графа обобщенных составляющих, иллюстрирующих граф обобщенных составляющих для предложения «This child is smart, he′ll do well in life» в соответствии с одним из способов реализации данного изобретения.
[0023] Фиг.8 иллюстрирует точный синтаксический анализ в соответствии с одним из способов реализации данного изобретения.
[0024] Фиг.9 иллюстрирует пример синтаксического дерева в соответствии с одним из способов реализации данного изобретения.
[0025] Фиг.10 иллюстрирует схему метода анализа предложения в соответствии с одним из способов реализации данного изобретения.
[0026] Фиг.11 иллюстрирует схему, демонстрирующую языковые описания в соответствии с одним из способов реализации данного изобретения.
[0027] Фиг.12 иллюстрирует пример морфологических описаний в соответствии с одним из способов реализации данного изобретения.
[0028] Фиг.13 иллюстрирует семантические описания в соответствии с одним из способов реализации данного изобретения.
[0029] Фиг.14 иллюстрирует схему, демонстрирующую лексические описания в соответствии с одним из способов реализации данного изобретения.
[0030] Фиг.15 иллюстрирует схему семантической структуры, полученной в результате анализа предложения "Москва - город красивый и богатый, как и полагается столице" в соответствии с одним из способов реализации данного изобретения.
[0031] Фиг.16 иллюстрирует модель, которая может быть выбрана для определения тональности текстовых данных в соответствии с одним из способов реализации данного изобретения.
[0032] Фиг.17 иллюстрирует пример информационного RDF графа для примера разбора предложения «Москва - город красивый и богатый, как и полагается столице» в соответствии с одним из способов реализации данного изобретения.
[0033] Фиг.18 иллюстрирует пример построенной древовидной структуры в соответствии с одним из способов реализации данного изобретения.
[0034] Фиг.19 иллюстрирует пример схемы аппаратного обеспечения, который может быть использован в соответствии с одним из способов реализации данного изобретения.
ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
[0035] Изобретение предоставляет собой метод, который включает в себя команду для устройства, операционной системы, программно-аппаратных средств и программного обеспечения, который представляет собой решение задачи анализа тональности текстовых данных (сообщений), основанный на комбинации статистического и лингвистического подходов.
[0036] Настоящее изобретение предназначено для анализа тональности текстовых данных (сообщений). В основе метода лежит использование двухступенчатого синтаксического анализа на базе исчерпывающих лингвистических описаний, представленных в патенте US 8,078,450.
[0037] Так как согласно описываемому изобретению метод анализа текстовых данных (сообщений) основан на использовании независимых от языка смысловых единиц, данное изобретение также не зависит от языка и позволяет работать с одним или несколькими естественными языками. Другими словами данное изобретение может выполнять анализ тональности многоязычных текстов в том числе.
[0038] Фиг.1 иллюстрирует пример блок-схемы, иллюстрирующей последовательность шагов в соответствии с одним из способов реализации изобретения.
Этап подготовки данных
[0039] На шаге 110 данные, представляющие собой текстовые данные (например, сообщения), например, в виде электронных писем или сообщений на форуме, могут быть предварительно подготовлены для анализа. Во-первых, могут должны быть стандартизированы, единообразно структурированы. А именно последовательность текстовых данных (например, электронных писем, сообщений на форуме) может быть разделена на составляющие, представляющие собой единые целостные текстовые сообщения. Если во время переписки как на форуме, так и по электронной почте, сообщения содержат историю переписки, которая при отправке ответа автоматически копируется, тем самым сообщения дублируются в базе данных. Данные дубли могут помешать дальнейшему анализу. Одним из критериев того, что письмо не содержит в треде истории переписки, может быть наличие одной даты отправления.
[0040] Далее после разделения текстовых данных (например, сообщений) на целостные независимые единицы, происходит очистка данных. На этом этапе происходит исключение дублированных сообщений. Дублированные сообщения часто появляются в треде письма, или в качестве цитаты (например, на форумах).
Лексический анализ (Lexical Analysis)
[0041] Прежде чем приступать к анализу текстовых данных (сообщений), необходимо провести лексический анализ предложений.
[0042] Лексический анализ выполняется над исходным предложением, представленным в исходном языке. Исходным языком может быть любой естественный язык, для которого созданы все необходимые языковые описания. Например, исходное предложение может быть разделено на некоторое число лексем, элементов, или единиц, включающих все слова, словарные формы, пробелы, пунктуаторы и т.д., присутствующие в исходном предложении для построения лексической структуры предложения. Лексемой называется значимая лингвистическая единица, которая является пунктом в словаре, такие как лексические описания языка.
[0043] Фиг.2. иллюстрирует пример лексической структуры для предложения 220, "This child is smart, he′ll do well in life", на английском языке, в которой все слова и пунктуаторы представлены двенадцатью (12) элементами 201-212 или сущностями, и девятью (9) пробелами 221-229. Пробелы 221-229 могут быть представлены одними или несколькими пунктуаторами, пустыми местами, и т.д.
[0044] На основе элементов 201-212 предложения строится граф лексической структуры. Вершинами графа являются координаты символов начала и конца сущностей, а дугами являются слова, промежутки между сущностями 201-212 (словарными формами и пунктуаторами), или пунктуаторами. Например, вершины графа показаны на Фиг.2 как координаты: 0,4,5.
[0045] Исходящие и входящие дуги проиллюстрированы для каждой координаты, дуги могут быть созданы для соответствующих сущностей 201-212, так же как и для промежутков 221-229. Лексическая структура для предложения 220 может быть использованы позднее в ходе выполнения грубого синтаксического анализа 330.
Анализ тональности
[0046] Подготовленная база текстовых данных (например, сообщений) подвергается анализу на тональность. Анализ тональности (sentiment analysis) является одной из самых развивающихся в настоящее время областей прикладной лингвистики (Natural Language Processing), целью которой является выявление в тексте тональной окраски, мнений (позиции) авторов на основе эмоционально окрашенной лексики по отношению к описываемому им объекту (лицу, предмете, теме и т.д.).
[0047] Согласно данному изобретению анализ тональности опирается на лингвистический подход, основанный на использовании универсальной Семантической Иерархии (СИ), описание которой подробно представлено в патенте US 8,078,450, а именно на выполнение синтаксического и семантического анализа, с применением правил (rule based approach).
[0048] Согласно представленному изобретению используется метод анализа тональности на уровне сущностей и аспектов, или другими словами направленный анализ тональности текстовых данных. Под объектом тональности понимается оцениваемый объект (некая сущность - entity), упоминаемый в тексте, или другими словами носитель тональности. Под субъектом понимается автор выявленной оценки (opinion/sentiment holder). Автор может быть явно упомянут в тексте, однако зачастую информация о нем может отсутствовать, что значительно усложняет решаемую задачу.
[0049] Описываемый метод анализа тональности предполагает использование тонального словаря (sentiment lexicon approach) и декларативных правил (rule-based approach).
[0050] Данное изобретение предполагает выделение тональностей, явно представленных в тексте (explicit sentiment).
[0051] Представленное изобретение позволяет осуществить выделение локальной тональности в текстовых данных (например, сообщениях) и определить знак тональности по двухбалльной шкале, например позитивная тональность или негативная тональность. Приведенный в качестве одной из реализации вид шкалы вводится для наглядности и не ограничивает область применения данного изобретения.
[0052] Данное изобретение адаптирует статистический и лингвистический подход к определению тональности, используя в качестве исходных данных результаты работы семантико-синтаксического анализатора. Например, в качестве семантико-синтаксического анализатора может быть использована технология ABBYY Compreno.
[0053] В Патенте США U.S. Patent 8,078,450 описан метод, включающий глубинный синтаксический и семантический анализ текстов на естественном языке, основанный на исчерпывающих лингвистических описаниях. Данная технология может быть использована для анализа тональности текста на одном из естественных языков. Метод использует широкий спектр лингвистических описаний, как универсальных семантических механизмов, так относящихся к конкретному языку, что позволяет отразить все реальные сложности языка без упрощения и искусственных ограничений, не опасаясь при этом комбинаторного взрыва, неуправляемого роста сложности. Сверх того, указанные способы анализа основаны на принципах целостного и целенаправленного распознавания, т.е. гипотезы о структуре части предложения верифицируются в рамках проверки гипотезы о структуре всего предложения. Это позволяет избежать анализа большого множества аномалий и вариантов.
[0054] Глубинный анализ включает лексико-морфологический, синтаксический и семантический анализ каждого предложения корпуса текстов, в результате которого строятся семантические структуры, независимые от языка (language-independent semantic structures), в которых каждому слову текста сопоставляется соответствующий семантический класс. Фиг.3 иллюстрирует общую схему метода глубинного анализа текстов. Текст 305 подвергается исчерпывающему семантико-синтаксическому анализу 306 с использованием лингвистических описаний, как исходного языка, так и универсальных семантических описаний, что позволяет анализировать не только поверхностную синтаксическую структуру, но и глубинную, семантическую, выражающую смысл высказывания, содержащегося в каждом предложении, а также связи между предложениями или фрагментами текста. Лингвистические описания могут включать лексические описания 303, морфологические описания 301, синтаксические описания 302 и семантические описания 304. Анализ 306 включает синтаксический анализ, реализованный в виде двухэтапного алгоритма (грубого синтаксического анализа и точного синтаксического анализа), использующий лингвистические модели и информацию различных уровней для вычисления вероятностей и генерации множества синтаксических структур.
Грубый синтаксический анализ (Rough syntactic analysis)
[0055] Фиг.4 иллюстрирует схему этапа 306, включающего, грубый синтаксический анализатор 422 или его аналоги, которые применяются для выявления всех потенциально возможных синтаксических связей в предложении, что находит свое выражение в создании графа 460 обобщенных составляющих на основе лексико-морфологической структуры 450 с использованием поверхностных моделей 510, глубинных моделей, и лексико-семантического словаря 414. Граф 460 обобщенных составляющих представляет собой ациклический граф, в котором узлы представляют собой обобщенные (в смысле - хранящие все варианты) лексические значения слов предложения, а дуги - поверхностные (синтаксические) позиции, выражающие разные типы отношений между соединяемыми лексическими значениями. Применяются все возможные поверхностные синтаксические модели для каждого элемента лексико-морфологической структуры предложения в качестве потенциального ядра составляющих, далее строятся все возможные составляющие и обобщаются в граф обобщенных составляющих. Соответственно, рассматриваются все возможные синтаксические модели и синтаксические структуры для исходного предложения 402, и в качестве результата, строится граф 460 обобщенных составляющих на основе множества обобщенных составляющих. Граф 460 обобщенных составляющих на уровне поверхностной модели (surface models) отражает все потенциальные связи (links) между словами исходного предложения 402. Поскольку число вариантов синтаксического разбора, в общем случае, может быть велико, граф 460 обобщенных составляющих избыточен и содержит множество вариантов - как для выбора лексического значения для вершины, так и поверхностной позиции для дуги графа.
[0056] Для каждой пары «лексическое-грамматическое значение инициализируется ее поверхностная модель, прикрепляются другие составляющие в поверхностных позициях 515 синтформ (syntform - syntactic form) 512 ее поверхностной модели 510 к правым и левым соседним составляющим. Синтаксические описания приведены на Фиг.5. Если подходящая синтаксическая форма найдена в поверхностной модели 510 соответствующего лексического значения, выбранное лексическое значение может служить ядром (core) новой составляющей (constituents).
[0057] Граф обобщенных составляющих 460 сначала строится в виде дерева, начиная от листьев к корням (снизу вверх). Построение дополнительных составляющих происходит снизу вверх путем прикрепления дочерних составляющих (child constituents) к родительским составляющим (parent constituents) посредством заполнения поверхностных позиций (surface slots) 515 родительских составляющих для того, чтобы охватить все начальные лексические единицы (lexical unit) исходного предложения 402.
[0058] Корень дерева является главной частью, представляющей специальную составляющую, соответствующую различным типам максимальных единиц текстового анализа (завершенные предложения, нумерация, заглавия, и т.д.) Ядром главной части является обычно предикат (сказуемое). В ходе этого процесса дерево обычно становится графом, так как составляющие нижнего уровня (листья) могут быть включены в различные составляющие верхнего уровня (корень).
[0059] Некоторые составляющие, которые построены для одних и тех же составляющих лексико-морфологической структуры могут быть впоследствии обобщены для того, чтобы получить обобщенные составляющие. Составляющие обобщаются на основе лексических значений, грамматических значений 514, например, на основе частей речи, их связями среди остальных. Составляющие обобщаются границами (связями), так как существует множество различных синтаксических связей в предложении, и одно и то же слово может быть включено в несколько составляющих. В качестве результата грубого синтаксического анализа 330, строится граф 460 обобщенных составляющих, который представляет все предложение целиком. [0060] Фиг.6 иллюстрирует более детально процесс грубого синтаксического анализа 330 в соответствии с одним или несколькими способами реализации изобретения. Грубый синтаксический анализ 330 обычно включает предварительный сбор 610 составляющих, построение обобщенных составляющих 620, фильтрацию 170, построение 640 моделей обобщенных составляющих, обработку согласований 650, и восстановление эллипсисов 660 среди остальных.
[0061] Предварительный сбор 610 составляющих на этапе грубого синтаксического анализа 330 выполнятся на основе лексико-морфологической структуры 450 анализируемого предложения, включая определенные группы слов, слова в скобках, перевернутые запятые, и т.д. Только одно слово в группе (ядро составляющей) может присоединять или быть присоединенным к составляющей за пределами группы. Предварительный сбор 610 выполняется в начале грубого синтаксического анализа 330 перед построением обобщенных составляющих 620 и построением моделей обобщенных составляющих 630 для того, чтобы охватить все связи во всем предложении. В ходе грубого синтаксического анализа 330, число различных составляющих, которые могут быть построены и синтаксические связи среди них очень велико, некоторые из поверхностных моделей 510 составляющих выбираются, чтобы отсортировать в процессе фильтрации 670 до и после построения составляющих для того, чтобы значительно уменьшить число различных составляющих, которые необходимо рассмотреть. Поэтому, на начальном этапе грубого синтаксического анализа 330, выбираются наиболее подходящие поверхностные модели и синтформы на основе априорных оценок. Подобные априорные оценки включают оценки лексических значений, оценки заполнителей, оценки семантических описаний. Фильтрация 670 на этапе грубого синтаксического анализа 330 включает фильтрацию множества синтаксических форм (синфторм) 512 выполняется заранее перед и во время построения обобщенных составляющих 620. Синтформы 512 и поверхностные позиции 515 фильтруются заранее, в то время как составляющие фильтруются только после того, как они уже построены. Процесс фильтрации 670 позволяет существенно уменьшить число рассматриваемых вариантов разбора. Однако, существуют и маловероятные варианты значений, поверхностных моделей и синтформ, исключение которых из последующего рассмотрения может привести к потере маловероятного, но, тем не менее, возможного смысла.
[0062] Когда все возможные составляющие построены, выполняется процедура обобщения для построения обобщенных составляющих 620. Все возможные омонимы и все возможные значения для элементов исходного предложения, которые могут быть представленными той же частью речи, собираются и обобщаются, и все возможные составляющие, построенные в такой манере, группируются в обобщенные составляющие 622.
[0063] Обобщенная составляющая 622 описывает все составляющие со всеми возможными связями в данном исходном предложении, которое имеет словарные формы в качестве основных составляющих, и различные лексические значения этой формы слова. Далее выполняется построение моделей обобщенных составляющих 630 и строится множество моделей 632 обобщенных составляющих, имеющих обобщенные модели всех обобщенных лексем. Модели обобщенных составляющих лексем содержат обобщенную глубинную модель и обобщенную поверхностную модель. Обобщенная глубинная модель лексем включает список всех глубинных позиций, которые имеют одинаковое лексическое значение для лексемы, совместно с описаниями всех требований для заполнителей глубинных позиций. Обобщенная поверхностная модель содержит информацию о синтформах 512, в которых может быть лексема, о поверхностных позициях 515, о диатезах 517, (соответствиях поверхностных позиций 515 глубинным позициям), и описание линейного порядка 516.
[0064] Диатеза 517 строится на этапе грубого синтаксического анализа 330 как соответствие между обобщенными поверхностными моделями и обобщенными глубинными моделями. Список всех возможных семантических классов для всех диатез 517 лексемы вычисляется для каждой поверхностной позиции 515.
[0065] Как показано на Фиг.6, информация из синтформ 512 синтаксического описания 302, так же как и семантические описания 304 используется для построения моделей 632 обобщенных составляющих. Например, зависимые составляющие прикрепляются к каждому лексическому значению и грубый синтаксический анализ 330 необходим для того чтобы установить, может ли кандидат в составляющие или зависимая составляющая быть заполнителем соответствующей глубинной позиции семантического описания 304 для основной составляющей. Такой сравнительный анализ позволяет отсечь на ранней стадии неверные синтаксические связи.
[0066] Далее выполняется построение 640 графа обобщенных составляющих. Строится граф 460 обобщенных составляющих, который описывает все возможные синтаксические структуры всего предложения путем связи и сбора обобщенных составляющих 622 друг с другом.
[0067] Фиг.7 демонстрирует пример графа 700 обобщенных составляющих, иллюстрирующих граф обобщенных составляющих для предложения «This child is smart, he′ll do well in life». Составляющие представлены в виде прямоугольников, причем каждая из составляющих имеет в качестве ядра лексему. Морфологическая парадигма (paradigm) (как правило, это часть речи) ядра составляющей выражена граммемами частей речи и изображена в угловых скобках ниже под лексемами. Морфологическая парадигма как часть описания словоизменений 410 морфологического описания содержит всю информацию о словоизменении одной или нескольких частей речи. Например, так как «do» может иметь две части речи: <Verb>, <Noun> (которая представлена обобщенной морфологической парадигмой <Noun&Pronoun>), в графе 700 представлены две составляющие для «do». Помимо этого на графе представлены две составляющих для «well». Так как в исходном предложении использовалось сокращение для «′ll», то а графе представлены два возможных варианта для сокращения «will» и «shall». Задача точного синтаксического анализа будет состоять в выборе из всех возможных составляющих лишь те, которые будут образовывать синтаксическую структуру исходного предложения.
[0068] Связи в графе 700 представляют заполненные поверхностные позиции ядра составляющей. Имя позиции отображено на стрелке графа. Составляющая сформирована ядром лексемы, которая может иметь исходящие именованные стрелки, которые обозначают поверхностные позиции 515 заполненные дочерними составляющими совместно с дочерними составляющими как таковыми. Входящая стрелка обозначает прикрепление этой составляющей к поверхностной позиции другой составляющей. Граф 700 настолько сложен и имеет настолько много стрелок (ветвей) в связи с тем, что он отображает все возможные связи, которые могут быть установлены между составляющими предложения. Среди них, конечно, существуют связи, которые будут отвергнуты. Значение упомянутых ранее грубых методов оценки сохраняется каждой стрелки, обозначающей заполненную глубинную позицию. Только поверхностные позиции и связи с высоким значений рейтинговых оценок в первую очередь будут выбраны на следующем этапе синтаксического анализа.
[0069] Зачастую несколько ветвей могут соединять одни и те же пары составляющих. Это означает, что существует несколько подходящих поверхностных моделей для этой пары составляющих, и несколько поверхностных позиций родительских составляющих могут быть независимо заполнены этими дочерними составляющими. Так, три поверхностных позиции Idiomatic_Adverbial 710, Modifier_Adverbial 720 и AdjunctTime 730 родительской составляющей "do<Verb>" 750 могут быть независимо заполнены дочерней составляющей "well<Verb>" 740 в соответствии с поверхностной моделью составляющей "do<Verb>". Поэтому, грубо говоря, "do<Verb>" 750+"well<Verb>" образуют новую составляющую с ядром "do<Verb>", который соединен с другой родительской составляющей, например с #NormalSentence<Clause>660 в поверхностной позиции Verb 770 и к "child<Noun&Pronoun>" 790 в поверхностной позиции RelativClause_DirectFinite 790. Помеченный элемент #NormalSentence<Clause>, будучи «корнем», соответствует всему предложению.
[0070] Как показано на Фиг.6, обработка сочинения (coordination) 650 также выполняется на графе 460 обобщенных составляющих. Сочинение - это явление языка, которое представлено в предложениях с нумерацией и/или соединительными союзами, такими как «и», «или», «но», и т.д. Простой пример предложения с координацией - "John, Mary and Bill come home." В этом случае только одна из дочерних составляющих прикрепляется к поверхностной позиции родительской составляющей на этапе построения 640 графа обобщенных составляющих. Если составляющая, которая может быть родительской составляющей, имеет поверхностную позицию, заполненную для согласованной составляющей, тогда все согласованные составляющие берутся и делается попытка прикрепить все эти дочерние составляющие к родительской составляющей, даже если нет контакта или прикреплений между согласованными составляющими. На этапе обработки согласования 650, определяются линейный порядок и возможность множественного заполнения поверхностной позиции. Если прикрепление возможно, то предварительная форма, которая относится к общей дочерней составляющей создается, и прикрепляется. Как показано на Фиг.6, обработчик сочинения 682 или другие алгоритмы могут быть адаптированы для выполнения обработки сочинения 650 с использованием описаний сочинения (coordination) 554 в построении 640 графа обобщенных составляющих.
[0071] Построение 640 графа обобщенных составляющих может быть невозможным без восстановления эллипсиса (ellipsis) 660. Эллипсис это явление языка, которое представлено отсутствием основной составляющей. Процесс восстановление эллипсиса 660 также необходим для восстановления пропущенных составляющих. Примером эллиптического предложения на английском может быть следующее предложение: «The President signed the agreement and the secretary [signed] the protocol.» Обработка сочинения 650 и восстановление эллипсиса 660 выполняются на этапе каждого цикла программы диспетчера 690 после построения 640 графа обобщенных составляющих, и затем построения 640 может быть продолжено, как указано с помощью стрелки 642. Если необходимо, восстановление эллипсиса 660 и вызванные в ходе этапа грубого синтаксического анализа 330 вследствие, например, наличия составляющих, оставшихся без любой другой составляющей, только эти составляющие будут обработаны.
Точный синтаксический анализ (Precise syntactic analysis)
[0072] Точный синтаксический анализ 340 выполняется для выделения синтаксического дерева из графа обобщенных составляющих. Это дерево по совокупности оценок представляет собой дерево лучшей синтаксической структуры 470 для исходного предложения. Может быть построено множество синтаксических деревьев, причем наиболее вероятная синтаксическая структура принимается за наилучшую синтаксическую структуру 470. Как показано на Фиг.4, точный синтаксический анализатор 432 или его аналоги предназначены для выполнения точного синтаксического анализа 340 и создания наилучшей синтаксической структуры 470 на основе вычисления оценок с использованием априорных оценок 436 из графа 460 обобщенных составляющих. Априорные оценки 436 включают оценки лексических значений, таких как частота (или вероятность), оценки каждой синтаксической конструкции (например, идиомы, словосочетания и т.д.) для каждого элемента в предложении, и степень соответствия выбранной синтаксической конструкции и семантического описания глубинных позиций. Помимо априорных оценок могут использоваться статистические оценки, полученные в результате обучения анализатора на больших текстовых корпусах. Вычисляются интегральные оценки и сохраняются.
[0073] Затем выдвигаются гипотезы об общей синтаксической структуре предложения. Каждая гипотеза представлена в виде дерева, которое в свою очередь является подграфом графа 460 обобщенных составляющих, покрывающее все предложение полностью, рассчитываются оценки для каждого синтаксического дерева. В ходе выполнения точного синтаксического анализа 340, гипотезы о синтаксической структуре предложения проверяются путем расчета различных типов оценок. Эти оценки высчитываются как степень соответствия заполнителя глубинных позиций 515 составляющей к их грамматическим и семантическим описаний, таких как грамматические ограничения (например, грамматические значения 514) в синтформах и семантические ограничения на заполнители глубинных позиций в глубинной модели. Другими типами оценок могут являться степени свободы лексических значений к прагматическим описаниям, которые могут абсолютными и/или условными вероятностными оценками синтаксических конструкций, которые обозначены как поверхностные модели 510, и степень сочетаемости их лексических значений среди остальных.
[0074] Вычисленные оценки для каждого вида гипотез могут быть получены на основе априорных грубых оценок, полученных в результате грубого синтаксического анализа 330. Например, грубая оценка рассчитывается для каждой обобщенной составляющей в графе 460 обобщенных составляющих, в результате чего могут быть посчитаны рейтинговые оценки. Различные синтаксические деревья могут быть построены с различными оценками. Рейтинговые оценки рассчитываются, и далее эти оценки используются