Использование глубинного семантического анализа текстов на естественном языке для создания обучающих выборок в методах машинного обучения

Иллюстрации

Показать все

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

Реферат

ОБЛАСТЬ ТЕХНИКИ

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

ВВЕДЕНИЕ

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

КРАТКОЕ ИЗЛОЖЕНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ

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

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

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

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

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

[0007] На Фиг. 1 показана блок-схема примера реализации способа создания обучающих выборок для методов машинного обучения путем глубинного семантического анализа текстов на естественном языке в соответствии с одним или более аспектами настоящего изобретения;

[0008] На Фиг. 2 схематически показан пример размеченного текста на естественном языке, который может использоваться для обучения функции классификатора, вычисляющей оценку степени ассоциации токена из текста на естественном языке с определенной категорией именованных сущностей в соответствии с одним или более аспектами настоящего изобретения;

[0009] На Фиг. 3 приведена блок-схема одного описанного в иллюстративном примере способа выполнения семантико-синтаксического анализа предложения на естественном языке в соответствии с одним или более аспектами настоящего изобретения.

[00010] На Фиг. 4 схематически показан пример лексико-морфологической структуры предложения в соответствии с одним или более аспектами настоящего изобретения;

[00011] На Фиг. 5 схематически показаны языковые описания, представляющие модель естественного языка в соответствии с одним или более аспектами настоящего изобретения;

[00012] На Фиг. 6 схематически показаны примеры морфологических описаний в соответствии с одним или более аспектами настоящего изобретения;

[00013] На Фиг. 7 схематически показаны примеры синтаксических описаний в соответствии с одним или более аспектами настоящего изобретения;

[00014] На Фиг. 8 схематически показаны примеры семантических описаний в соответствии с одним или более аспектами настоящего изобретения;

[00015] На Фиг. 9 схематически показаны примеры лексических описаний в соответствии с одним или более аспектами настоящего изобретения;

[00016] На Фиг. 10 схематически показаны примеры структур данных, которые могут быть использованы в рамках одного или более способов, реализованных в соответствии с одним или более аспектами настоящего изобретения;

[00017] На Фиг. 11 схематически показан пример графа обобщенных составляющих в соответствии с одним или более аспектами настоящего изобретения;

[00018] На Фиг. 12 приводится пример синтаксической структуры, соответствующей предложению, приведенному на Фиг. 11;

[00019] На Фиг. 13 показана семантическая структура, соответствующая синтаксической структуре, приведенной на Фиг. 12;

[00020] На Фиг. 14 показана схема примера вычислительной системы, реализующей способы настоящего изобретения.

ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ РЕАЛИЗАЦИИ

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

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

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

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

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

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

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

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

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

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

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

[00032] Термин «факт» в настоящем документе означает отношение между информационными объектами, на которые ссылается текст на естественном языке. Факт может быть связан с одной или более категориями фактов. Например, факт, связанный с лицом, может относиться к рождению лица, его образованию, занятости, трудовой деятельности и т.д. В другом примере факт, связанный с коммерческой операцией, может относиться к типу операции и сторонам операции, обязательствам сторон, дате подписания контракта, дате исполнения, выплатам по контракту и т.д.

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

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

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

[00036] На Фиг. 1 показана блок-схема примера реализации способа создания обучающих выборок для методов машинного обучения путем глубинного семантического анализа текстов на естественном языке в соответствии с одним или более аспектами настоящего изобретения. Способ 100 и (или) каждая из его отдельных функций, процедур, подпрограмм или операций может быть реализована с помощью одного или более процессоров вычислительной системы (например, вычислительной системы 1000 на Фиг. 14), в которой реализован этот способ. В некоторых вариантах реализации способ 100 может выполняться в одном потоке обработки. При альтернативном подходе способ 100 может быть реализован с использованием двух или более потоков обработки, при этом в каждом потоке реализована одна или более отдельных функций, процедур, подпрограмм или операций этого способа. В иллюстративном примере потоки обработки, в которых реализован способ 100, могут быть синхронизированы (например, с помощью семафоров, критических секций и (или) других механизмов синхронизации потоков). При альтернативном подходе потоки обработки, в которых реализован способ 100, могут выполняться асинхронно по отношению друг к другу. Таким образом, несмотря на то, что Фиг. 1 и соответствующее описание содержат список операций для способа 100 в определенном порядке, в различных вариантах осуществления способа, как минимум, некоторые из описанных операций могут выполняться параллельно и (или) в случайно выбранном порядке.

[00037] В блоке 110 вычислительная система, реализующая способ 100, может выполнить лексико-морфологический анализ исходного текста 101 на естественном языке, который может быть представлен, например, одним или более исходными документами. Лексико-морфологический анализ может применяться к исходному тексту на естественном языке, с использованием зависящих от конкретного языка морфологических и лексических описаний, которые будут более подробно описаны в этом документе ниже со ссылкой на Фиг. 6 и 9. Для каждого предложения лексико-морфологический анализ может построить лексико-морфологическую структуру, соответствующую предложению. Такая лексико-морфологическая структура может содержать для каждого слова в предложении на естественном языке одно или более лексических значений и одно или более грамматических значений слова на естественном языке. В некоторых вариантах осуществления лексические и грамматические значения могут группироваться в одну или более пар <грамматическое значение - лексическое значение>.

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

[00039] Отсутствующие в словаре слова (например, именованные сущности) могут быть связаны с заранее определенным семантическим классом (например, UNKNOWN). Грамматические значения токена, отсутствующего в словаре, могут быть определены с помощью псевдолемматизации (то есть восстановления возможной канонической формы несловарного токена), анализа контекста (например, двух и более слов на естественном языке, окружающих несловарный токен в предложении), капитализации одной или более букв несловарного токена т.д.

[00040] Каждое лексическое значение может занимать определенное положение в лексико-семантической иерархии, которое отражает иерархические отношения между лексическими значениями и независимыми от языка семантическими классами. Лексико-семантическая иерархия может определять для каждого лексического значения поверхностную (синтаксическую) модель, которая в свою очередь может быть связана с глубинной (семантической) моделью. Лексическое значение может наследовать семантический класс и (или) другие свойства родителя, таким образом уточняя его семантическую модель, как более подробно описано ниже со ссылкой на Фиг. 8.

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

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

[00043] В блоке 120 вычислительная система может выполнить синтаксический анализ одного или более предложений исходного текста на естественном языке. В некоторых вариантах реализации изобретения синтаксический анализ может включать этап грубого синтаксического анализа и этап точного синтаксического анализа, как более подробно будет описано ниже со ссылкой на Фиг. 3.

[00044] Синтаксический анализ может включать применение одной или более поверхностных моделей к каждому предложению текста на естественном языке. Поверхностная модель может быть представлена набором синтаксических форм («синтформ»), используемых для определения возможных синтаксических структур предложения. Поверхностная модель может содержать множество поверхностных позиций дочерних элементов, описаний линейного порядка и (или) описаний диатез, как более подробно описано ниже в этом документе. Термин «диатеза» в этом документе означает определенное отношение между поверхностной позицией, глубинной позицией и их семантическим значением. В качестве иллюстративного примера диатеза может определять залог глагола: активный залог в ситуации, когда некоторая сущность активно выполняет некоторое действие, и пассивный залог, когда сущность является объектом действия.

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

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

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

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

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

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

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

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

[00053] В блоке 130 вычислительная система может выполнять семантический анализ текста на естественном языке для получения для каждого предложения на естественном языке соответствующей независимой от языка семантической структуры, представляющей предложение. Семантические структуры отражают семантические классы, связанные с каждым словом предложения, семантемы, глубинные позиции, диатезы кореферентные и анафорические связи и т.д., как более подробно описано ниже на фиг. 3-13.

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

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

[00056] В блоке 140 вычислительная система может использовать один или более способов распознавания именованных сущностей для определения в тексте на естественном языке именованных сущностей одной или более категорий именованных сущностей. Эти категории могут быть представлены концептами заранее определенной или динамически выстраиваемой онтологии.

[00057] «Онтология» в настоящем документе означает модель, которая представляет объекты, относящиеся к определенной области знаний (предметной области), и отношения между данными объектами. Онтология может включать определения некого множества классов, где каждый класс соответствует концепту предметной области. Каждое определение класса может включать определения одного или более отнесенных к данному классу объектов. Согласно общепринятой терминологии класс может также называться концептом онтологии, а принадлежащий классу объект может называться экземпляром данного концепта. Определение информационного объекта может представлять материальный реальный объект (например, человека или предмет) или определенные характеристики, связанные с одним или более реальными объектами (например, числовой атрибут или качество). В некоторых вариантах реализации информационный объект может быть ассоциирован с двумя или более классами.

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

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

[00060] В блоке 150 вычислительная система может также использовать один или более способов извлечения фактов для выявления в тексте на естественном языке одного или более фактов, связанных с определенным информационным объектом.

[00061] После распознавания именованных сущностей и других информационных объектов в тексте на естественном языке вычислительная система может перейти к разрешению кореференций и анафорических связей между токенами естественного текста (каждый токен может содержать одно или более слов). «Кореференция» в настоящем документе означает конструкцию естественного языка, содержащую два или более токенов естественного языка, которые относятся к одной сущности (например, одному и тому же лицу, вещи, месту или организации).

[00062] После определения кореференций вычислительная система может перейти к выявлению отношений между выявленными информационными объектами и (или) другими информационными объектами. Примерами таких отношений могут быть работа лица X в организационном подразделении Y, расположение объекта X в геопозиционировании Y, приобретение организационной единицей X организационной единицы Y и т.д. Подобные отношения могут быть выражены фрагментами на естественном языке, которые могут содержать множество слов из одного или более предложений.

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

[00064] В блоке 160 вычислительная система может сохранить и/или вывести размеченный текст в определенном формате, например, на расширяемом языке разметки (XML), совместимом с заранее определенной или изменяемой пользователем схемой. Выводимый текст может содержать множество символических идентификаторов одного или более атрибутов, причем каждый атрибут связан (например, тегом XML) с соответствующей частью текста на естественном языке.

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

[00066] В некоторых вариантах осуществления в выходном тексте могут быть представлены все значения атрибутов, полученные при лексико-морфологическом и семантическом анализах. В иллюстративном примере для отдельных слов, токенов и т.д. могут быть указаны альтернативные значения некоторых атрибутов текста на естественном языке. Такие альтернативные значения могут быть квалифицированы по степени ассоциации значения атрибута с соответствующим элементом текста на естественном языке. Например, слово «play» в исходном предложении может быть определено как существительное с вероятностью 40% и как глагол с вероятностью 60%. Аналогично, альтернативные значения могут быть указаны для семантических классов, глубинных позиций, категорий именованных сущностей и (или) других параметров, полученных в результате лексико-морфологического, синтаксического и (или) семантического анализа исходного текста на естественном языке.

[00067] Пример размеченного текста схематически проиллюстрирован на Фиг. 2. В примере на Фиг. 2 открывающие и закрывающие теги <PER> и </PER> используются для определения токенов, которые относятся к персонам, открывающие и закрывающие теги <LOC> и </LOC> используются для определения токенов, которые относятся к геолокации, открывающие и закрывающие теги <EVENT> и </EVENT> используются для указания токенов, относящихся к событиям, а открывающие и закрывающие теги <DAY> и </DAY> используются для определения токенов, которые относятся к календарным датам. Для описания токенов, ссылающихся на объекты, связанные с другими категориями именованных сущностей, могут использоваться другие теги.

[00068] В некоторых вариантах осуществления изобретения для определения подкатегорий именованных сущностей могут использоваться дополнительные квалифицирующие теги. В одном из иллюстративных примеров объект, ссылающийся на тег <EVENT>, может быть дополнительно квалифицирован с помощью дополнительных тегов как спортивное событ