СОЗДАНИЕ ОНТОЛОГИЙ НА ОСНОВЕ АНАЛИЗА ТЕКСТОВ НА ЕСТЕСТВЕННОМ ЯЗЫКЕ
CREATION OF ONTOLOGIES BASED ON NATURAL LANGUAGE TEXTS ANALYSIS

ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящее изобретение в целом относится к вычислительным системам, а точнее - к системам и способам обработки естественного языка.
УРОВЕНЬ ТЕХНИКИ
[0002] Интерпретацию неструктурированной информации, представленной текстами на естественном языке, может затруднять многозначность, которая является неотъемлемой чертой естественных языков. Решению задачи интерпретации текстов на естественном языке может способствовать поиск семантически похожих языковых конструкций, их сравнение и определение степени подобия.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0003] В соответствии с одним или более аспектами настоящего изобретения пример способа может включать: получение множества семантических структур, соотнесенных с текстовым корпусом; идентификацию, с помощью устройства обработки, первой семантической структуры и второй семантической структуры, где первая семантическая структура включает первую подструктуру и вторую подструктуру, а вторая семантическая структура включает третью подструктуру и четвертую подструктуру, и где первая подструктура подобна третьей подструктуре по первому критерию подобия; и в случае определения того, что вторая подструктура подобна четвертой подструктуре по второму критерию подобия - соотнесение объектов, представленных второй подструктурой и четвертой подструктурой, с определенным концептом онтологии, соотнесенной с текстовым корпусом.
[0004] В соответствии с одним или более аспектами настоящего изобретения пример системы может включать: память и процессор, соединенный с памятью, причем этот процессор настроен на: получение множества семантических структур, соотнесенных с текстовым корпусом; установление первой семантической структуры и второй семантической структуры, где первая семантическая структура включает первую подструктуру и вторую подструктуру, а вторая семантическая структура включает третью подструктуру и четвертую подструктуру и где первая подструктура подобна третьей подструктуре по первому критерию подобия; и в случае определения того, что вторая подструктура подобна четвертой подструктуре по второму критерию подобия, - соотнесение объектов, представленных второй подструктурой и четвертой подструктурой, с определенным концептом онтологии, соотнесенной с текстовым корпусом.
[0005] В соответствии с одним или более аспектами настоящего изобретения пример постоянного машиночитаемого носителя данных может включать исполняемые команды, которые при исполнении их вычислительным устройством приводят к выполнению вычислительным устройством операций, включающих в себя: получение множества семантических структур, соотнесенных с текстовым корпусом; установление первой семантической структуры и второй семантической структуры, где первая семантическая структура включает первую подструктуру и вторую подструктуру, а вторая семантическая структура включает третью подструктуру и четвертую подструктуру и где первая подструктура подобна третьей подструктуре по первому критерию подобия; и в случае определения того, что вторая подструктура подобна четвертой подструктуре по второму критерию подобия, - соотнесение объектов, представленных второй подструктурой и четвертой подструктурой, с определенным концептом онтологии, соотнесенной с текстовым корпусом.
Технический результат от внедрения изобретения состоит в предоставлении конечному пользователю возможности, используя технологию глубинного семантического анализа на основе исчерпывающих языковых описаний, создавать и пополнять онтологии посредством автоматического сопоставления семантических значений предложений и их частей независимо от способа их синтаксического выражения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0006] Настоящее изобретение иллюстрируется с помощью примеров, а не путем ограничений. Для более полного его понимания приведенное ниже описание предпочтительных вариантов реализации следует рассматривать в сочетании с чертежами, на которых:
[0007] На Фиг. 1 приведена блок-схема одного иллюстративного примера способа создания онтологий на основе анализа текстов на естественном языке в соответствии с одним или более аспектами настоящего изобретения;
[0008] На Фиг. 2 приведена блок-схема одного иллюстративного примера способа (200) проведения семантико-синтаксического анализа предложения на естественном языке (212) в соответствии с одним или более аспектами настоящего изобретения;
[0009] На Фиг. 3 схематически иллюстрируется пример лексико-морфологической структуры предложения в соответствии с одним или более аспектами настоящего изобретения;
[00010] Фиг. 4 схематически иллюстрирует языковые описания, представляющие модель естественного языка в соответствии с одним или более аспектами настоящего изобретения;
[00011] На Фиг. 5 схематически показаны примеры морфологических описаний в соответствии с одним или более аспектами настоящего изобретения;
[00012] На Фиг. 6 схематически показаны примеры синтаксических описаний в соответствии с одним или более аспектами настоящего изобретения;
[00013] На Фиг. 7 схематически показаны примеры семантических описаний в соответствии с одним или более аспектами настоящего изобретения;
[00014] На Фиг. 8 схематически показаны примеры лексических описаний в соответствии с одним или более аспектами настоящего изобретения;
[00015] На Фиг. 9 схематически показаны примеры структур данных, которые могут быть использованы в рамках одного или более способов, реализованных в соответствии с одним или более аспектами настоящего изобретения;
[00016] Фиг. 10 схематически иллюстрирует пример графа обобщенных составляющих в соответствии с одним или более аспектами настоящего изобретения;
[00017] На Фиг. 11 приводится пример синтаксической структуры, соответствующей предложению, приведенному на Фиг. 10;
[00018] На Фиг. 12 приводится семантическая структура, соответствующая синтаксической структуре на Фиг. 11;
[00019] На Фиг. 13 схематически иллюстрируется класс онтологии в соответствии с одним или более аспектами настоящего изобретения;
[00020] На Фиг. 14 схематически иллюстрируется пара семантических структур, определенных способом создания онтологий на основе анализа текстов на естественном языке, в соответствии с одним или более аспектами настоящего изобретения;
[00021] На Фиг. 15-17 приведены примеры семантических структур, соответствующих примеру предложения, проанализированного способом создания онтологий на основе анализа текстов на естественном языке, в соответствии с одним или более аспектами настоящего изобретения; а также
[00022] На Фиг. 18 изображена схема примера вычислительного устройства, осуществляющего методы настоящего изобретения.
ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ РЕАЛИЗАЦИИ
[00023] В настоящем документе описываются способы и системы создания онтологий на основе анализа текстов на естественном языке.
[00024] "Онтология" означает модель, которая представляет собой объекты, относящиеся к определенной области знаний (предметной области), и отношения между данными объектами. Онтология может включать определения некого множества классов, где каждый класс соответствует концепту предметной области. Каждое определение класса может включать определения одного или более отнесенных к данному классу объектов. Согласно общепринятой терминологии класс онтологии может также означать концепт, а принадлежащий классу объект может означать экземпляр данного концепта.
[00025] В качестве иллюстративного примера класс "Person" (Человек) может быть соотнесен с одним или более объектами, соответствующими определенным лицам. Определение каждого класса может далее включать одно или несколько определений отношений одного или более отнесенных к данному классу объектов. Определение каждого класса может далее включать одно или несколько ограничений, устанавливающих определенные свойства объектов класса. В определенных вариантах осуществления класс может являться предком или потомком другого класса.
[00026] Определение объекта может представлять собой материальный объект реального мира (как, например, человек или вещь) либо некое понятие, соотнесенное с одним или более объектами реального мира (как, например, число или слово). В определенных вариантах осуществления объект может быть соотнесен с двумя или более классами. Онтология может являться предком или (и) потомком другой онтологии, в случае чего концепты и свойства онтологии-предка также относятся к онтологии-потомку.
[00027] В настоящем раскрытии изобретения описываются системы и способы установления с помощью вычислительного устройства альтернативных семантических структур, представляющих похожие или совпадающие объекты, факты, черты и явления, и соотнесения установленных семантических структур с соответствующими классами и объектами онтологии, соотнесенной с анализируемым полем текста на естественном языке.
[00028] В настоящем документе термин "вычислительное устройство" означает устройство обработки данных, оснащенное универсальным процессором, памятью и по меньшей мере одним интерфейсом связи. Примерами вычислительных устройств, которые могут использовать описанные в этом документе способы, являются, помимо прочего, настольные компьютеры, портативные компьютеры, планшетные компьютеры и смартфоны.
[00029] В соответствии с одним или более аспектами настоящего изобретения вычислительное устройство, осуществляющее данный способ, может проводить синтаксический и семантический анализ множества текстов на естественном языке, принадлежащих некоторому текстовому корпусу, формируя множество независимых от языка семантических структур.
[00030] Затем в рамках множества семантических структур вычислительное устройство может установить первую семантическую структуру и вторую семантическую структуру, причем первая семантическая структура включает первую подструктуру, подобную по определенному критерию подобия второй подструктуре, входящей во вторую семантическую структуру. Критерий подобия может предполагать по крайней мере частичную эквивалентность двух подструктур. Таким образом, в различных иллюстративных примерах данные две схожие подструктуры могут считаться эквивалентными. В качестве иллюстративного примера каждая из подобных подструктур может состоять из двух частей (именуемых "левый контекст" и "правый контекст" с целью указания на то, что они окружают соответствующие оставшиеся подструктуры первой семантической структуры и второй семантической структуры).
[00031] В случае идентификации двух семантических структур, включающих подобные подструктуры, вычислительное устройство может выдвинуть гипотезу о подобии соответствующих внутренних контекстов первой семантической структуры и второй семантической структуры (где каждый внутренний контекст окружен соответствующими левым и правым контекстами). Затем гипотеза может быть подвергнута проверке, например, путем поиска и идентификации в рамках одного и того же текстового корпуса двух семантических структур, отличающихся от первой семантической структуры и второй семантической структуры и включающих подструктуры, семантическое подобие которых подвергается проверке (т.е. третья подструктура и четвертая подструктура, представляющие соответствующие внутренние контексты), при том что оставшиеся части только что установленных семантических структур являются подобными (например, в точки зрения того же критерия подобия, который был применен для установления схожести первой подструктуры и второй подструктуры). При подтверждении гипотезы вычислительное устройство может определить объекты, представленные соответствующими внутренними контекстами двух семантических структур (т.е. третья подструктура и четвертая подструктура) как экземпляры определенного концепта онтологии, соотнесенной с определенной областью знаний.
[00032] Различные аспекты упомянутых выше способов и систем подробно описаны ниже в этом документе с помощью примеров, а не способом ограничения.
[00033] На Фиг. 1 приведена блок-схема одного иллюстративного примера способа (100) создания онтологий на основе анализа текстов на естественном языке в соответствии с одним или более аспектами настоящего изобретения. Способ (100) и (или) каждая из его отдельных функций, стандартных программ, подпрограмм или операций может выполняться с помощью одного или более процессоров вычислительного устройства (например, вычислительного устройства (100) на Фиг. 1), реализующего данный способ. В некоторых вариантах осуществления способ (100) может выполняться в одном потоке обработки. При альтернативном подходе способ (100) может быть реализован с помощью двух или более потоков обработки, при этом каждый поток выполняет одну или несколько отдельных функций, стандартных программ, подпрограмм или операций данного способа. В качестве иллюстративного примера потоки обработки, реализующие способ (100), могут быть синхронизованы (например, с использованием семафоров, критических секций и (или) других механизмов синхронизации потоков). При альтернативном подходе потоки обработки, реализующие способ (100), могут выполняться асинхронно по отношению друг к другу.
[00034] В блоке (120) вычислительное устройство, реализующее данный способ, может проводить семантико-синтаксический анализ исходного корпуса текстов (110) для получения множества независимых от языка семантических структур (более подробное описание см. ниже в настоящем документе).
[00035] В блоке (130) вычислительное устройство может создавать индекс множества семантических структур (более подробное описание см. ниже в настоящем документе). Данный индекс может использоваться для установления определенных элементов в составе семантических структур и тем самым способствовать идентификации семантических структур, определенным образом связанных друг с другом (например, структуры, схожие по определенному критерию подобия).
[00036] В блоке (140) вычислительное устройство может устанавливать две семантические структуры, где первая семантическая структура включает первую подструктуру, которая с точки зрения определенного критерия схожести является сходной со второй подструктурой, входящей в состав второй установленной семантической структуры. Критерий подобия может предполагать по меньшей мере частичную эквивалентность двух подструктур (более подробное описание см. ниже в настоящем документе).
[00037] В качестве иллюстративного примера каждая из установленных подобных подструктур может состоять из двух частей (именуемых "левый контекст" и "правый контекст" с целью указания на то, что они окружают соответствующие оставшиеся подструктуры первой семантической структуры и второй семантической структуры).
[00038] В блоке (150) вычислительное устройство может определить, что соответствующие внутренние контексты первой семантической структуры и второй семантической структуры (где каждый внутренний контекст окружен соответствующими левым и правым контекстами) являются подобными по определенному критерию подобия.
[00039] В блоке 160 вычислительное устройство может отмечать слова или словосочетания, соответствующие внутренним контекстам двух семантических структур, как семантически подобные или эквивалентные.
[00040] В блоке (170) вычислительное устройство может определять объекты, представленные соответствующими внутренними контекстами двух семантических структур (например, третья подструктура и четвертая подструктура) как экземпляры определенного концепта онтологии, соотнесенной с текстовым корпусом (более подробное описание см. ниже в настоящем документе), после чего способ может вернуться к выполнению блока (140).
[00041] На Фиг. 2 приведена блок-схема одного иллюстративного примера способа (200) проведения семантико-синтаксического анализа предложения на естественном языке (212) в соответствии с одним или более аспектами настоящего изобретения. Способ (200) может быть применен к одной или более синтаксическим единицам (например, предложениям), включенным в определенный текстовый корпус, для формирования множества семантико-синтаксических деревьев, соответствующих синтаксическим единицам. В различных иллюстративных примерах предложения на естественном языке, подлежащие обработке способом (200), могут извлекаться из одного или более электронных документов, которые могут создаваться путем сканирования (или другим способом получения изображений бумажных документов) и оптического распознавания символов (OCR), для формирования текстов, соотнесенных с данными документами. Предложения на естественном языке также могут извлекаться из других различных источников, включая сообщения, отправляемые по электронной почте, тексты из социальных сетей, файлы с цифровым содержимым, обработанные с использованием способов распознавания речи и т.д.
[00042] В блоке (214) вычислительное устройство, реализующее данный способ, может проводить лексико-морфологический анализ предложения (212) для установления морфологических значений слов, входящих в состав предложения. В настоящем документе "морфологическое значение" слова означает одну или несколько лемм (т.е. канонических или словарных форм), соответствующих слову, и соответствующий набор значений грамматических признаков, которые определяют грамматическое значение слова. В число таких грамматических признаков могут входить лексическая категория (часть речи) слова и один или более морфологических и/или грамматических признаков (например, падеж, род, число, спряжение и т.д.). Ввиду омонимии и (или) совпадающих грамматических форм, соответствующих разным лексико-морфологическим значениям определенного слова, для данного слова может быть установлено два или более морфологических значений. Более подробное описание иллюстративного примера проведения лексико-морфологического анализа предложения приведено ниже в настоящем документе со ссылкой на Фиг. 3.
[00043] В блоке (215) вычислительное устройство может проводить грубый синтаксический анализ предложения (212). Грубый синтаксический анализ может включать применение одной или нескольких синтаксических моделей, которые могут быть соотнесены с элементами предложения (212), с последующим установлением поверхностных (т.е. синтаксических) связей в рамках предложения (212) для получения графа обобщенных составляющих. В настоящем документе "составляющая" означает группу соседних слов исходного предложения, функционирующую как одна грамматическая сущность. Составляющая включает в себя ядро в виде одного или более слов и может также включать одну или несколько дочерних составляющих на более низких уровнях. Дочерняя составляющая является зависимой составляющей, которая может быть соотнесена с одной или несколькими родительскими составляющими.
[00044] В блоке (216) вычислительное устройство может проводить точный синтаксический анализ предложения (212) для формирования одного или более синтаксических деревьев предложения. Причиной многообразия возможных синтаксических деревьев, соответствующих какому-либо данному исходному предложению, может быть омонимия и (или) совпадающие грамматические формы, соответствующие разным лексико-морфологическим значениям одного или более слов в составе исходного предложения. Среди различных синтаксических деревьев на основе определенной функции оценки с учетом совместимости лексических значений слов исходного предложения, поверхностных отношений, глубинных отношений и т.д. может быть отобрано одно или несколько лучших синтаксических деревьев, соответствующих предложению (212).
[00045] В блоке (217) вычислительное устройство может обрабатывать синтаксические деревья для формирования семантической структуры (218), соответствующей предложению (212). Семантическая структура (218) может включать множество узлов, соответствующих семантическим классам и также может включать множество дуг, соответствующих семантическим отношениям (более подробное описание см. ниже в настоящем документе).
[00046] На Фиг. 3 схематически иллюстрируется пример лексико-морфологической структуры предложения в соответствии с одним или более аспектами настоящего изобретения. Пример лексико-морфологической структуры (300) может включать множество пар "лексическое значение - грамматическое значение" для примера предложения (320). В качестве иллюстративного примера, "ll" может быть соотнесено с лексическим значением "shall" (312) и "will" (314). Грамматическим значением, соотнесенным с лексическим значением (312), является <Verb, GTVerbModal, ZeroType, Present, Nonnegative, Composite II>. Грамматическим значением, соотнесенным с лексическим значением (314), является <Verb, GTVerbModal, ZeroType, Present, Nonnegative, Irregular, Composite II>.
[00047] Фиг. 4 схематически иллюстрирует используемые языковые описания (410), в том числе морфологические описания (101), лексические описания (103), синтаксические описания (102) и семантические описания (104), а также отношения между ними. Среди них морфологические описания (101), лексические описания (103) и синтаксические описания (102) зависят от языка. Набор языковых описаний (210) представляет собой модель определенного естественного языка.
[00048] В качестве иллюстративного примера определенное лексическое значение в лексических описаниях (203) может быть соотнесено с одной или несколькими поверхностными моделями синтаксических описаний (202), соответствующих данному лексическому значению. Определенная поверхностная модель синтаксических описаний (202) может быть соотнесена с глубинной моделью семантических описаний (204).
[00049] На Фиг. 5 схематически иллюстрируются несколько примеров морфологических описаний. В число компонентов морфологических описаний (201) могут входить: описания словоизменения (310), грамматическая система (320), описания словообразования (330) и другие. Грамматическая система (320) включает набор грамматических категорий, таких как часть речи, падеж, род, число, лицо, возвратность, время, вид и их значения (так называемые "граммемы"), в том числе, например, прилагательное, существительное или глагол; именительный, винительный или родительный падеж; женский, мужской или средний род и т.д. Соответствующие граммемы могут использоваться для составления описания словоизменения (310) и описания словообразования (330).
[00050] Описание словоизменения (310) определяет формы данного слова в зависимости от его грамматических категорий (например, падеж, род, число, время и т.д.) и в широком смысле включает в себя или описывает различные возможные формы слова. Описание словообразования 330 определяет, какие новые слова могут быть образованы от данного слова (например, сложные слова).
[00051] В соответствии с одним из аспектов настоящего изобретения при установлении синтаксических отношений между элементами исходного предложения могут использоваться модели составляющих. Составляющая представляет собой группу соседних слов в предложении, ведущих себя как единое целое. Ядром составляющей является слово, она также может содержать дочерние составляющие более низких уровней. Дочерняя составляющая является зависимой составляющей и может быть прикреплена к другим составляющим (родительским) для построения синтаксических описаний (102) исходного предложения.
[00052] На Фиг. 6 приведены примеры синтаксических описаний. В число компонентов синтаксических описаний (202) могут входить, среди прочего, поверхностные модели (410), описания поверхностных позиций (420), описание референциального и структурного контроля (456), описание управления и согласования (440), описание недревесного синтаксиса (450) и правила анализа (460). Синтаксические описания (102) могут использоваться для построения возможных синтаксических структур исходного предложения на заданном естественном языке с учетом свободного линейного порядка слов, недревесных синтаксических явлений (например, согласование, эллипсис и т.д.), референциальных отношений и других факторов.
[00053] Поверхностные модели 410 могут быть представлены в виде совокупностей одной или нескольких синтаксических форм («синтформ» (412)) для описания возможных синтаксических структур предложений, входящих в состав синтаксического описания (102). В целом, лексическое значение слова на естественном языке может быть связано с поверхностными (синтаксическими) моделями (410). Поверхностная модель может представлять собой составляющие, которые возможны, если лексическое значение выступает в роли "ядра". Поверхностная модель может включать набор поверхностных позиций дочерних элементов, описание линейного порядка и (или) диатезу. В настоящем документе "диатеза" означает определенное отношение между поверхностными и глубинными позициями и их семантическими ролями, выражаемыми посредством глубинных позиций.
[00054] В модели составляющих может использоваться множество поверхностных позиций (415) дочерних составляющих и описаний их линейного порядка (416) для описания грамматических значений (414) возможных заполнителей этих поверхностных позиций. Диатезы (417) представляют собой соответствия между поверхностными позициями (415) и глубинными позициями (514) (как показано на Фиг. 7). Коммуникативные описания (480) описывают коммуникативный порядок в предложении.
[00055] Описание линейного порядка (416) может быть представлено в виде выражений линейного порядка, отражающих последовательность, в которой различные поверхностные позиции (415) могут встречаться в предложении. В число выражений линейного порядка могут входить наименования переменных, имена поверхностных позиций, круглые скобки, граммемы, оператор «or» (или) и т.д. В качестве иллюстративного примера описание линейного порядка простого предложения "Boys play football" можно представить в виде "Subject Core Object_Direct" (Подлежащее - Ядро - Прямое дополнение), где Subject (Подлежащее), Core (Ядро) и Object_Direct (Прямое дополнение) представляют собой имена поверхностных позиций (415), соответствующих порядку слов.
[00056] Коммуникативные описания (480) могут описывать порядок слов в синтформе (412) с точки зрения коммуникативных актов, представленных в виде коммуникативных выражений порядка, которые похожи на выражения линейного порядка. Описание управления и согласования (440) может включать правила и ограничения на грамматические значения присоединяемых составляющих, которые используются во время синтаксического анализа.
[00057] Описания недревесного синтаксиса (450) могут создаваться для отражения различных языковых явлений, таких как эллипсис и согласование, они используются при трансформациях синтаксических структур, которые создаются на различных этапах анализа в различных вариантах реализации изобретения. Описания не древесного синтаксиса (450) могут, среди прочего, включать описание эллипсиса (452), описание согласования (454), а также описание референциального и структурного контроля (430).
[00058] Правила анализа (460) могут описывать свойства конкретного языка и использоваться в рамках семантического анализа (150). Правила анализа (460) могут включать правила вычисления семантем (462) и правила нормализации (464). Правила нормализации (464) могут использоваться для описания трансформаций семантических структур, которые могут отличаться в разных языках.
[00059] На Фиг. 7 приведен пример семантических описаний. Компоненты семантических описаний (104) не зависят от языка и могут, среди прочего, включать семантическую иерархию (510), описания глубинных позиций (520), систему семантем (530) и прагматические описания (540).
[00060] Ядро семантических описаний может быть представлено семантической иерархией (510), в которую могут входить семантические понятия (семантические сущности), также называемые семантическими классами. Последние могут быть упорядочены в иерархическую структуру, отражающую отношения "родитель-потомок". В целом, дочерний семантический класс может унаследовать одно или более свойств своего прямого родителя и других семантических классов-предков. В качестве иллюстративного примера семантический класс SUBSTANCE (Вещество) является дочерним семантическим классом класса ENTITY (Сущность) и родительским семантическим классом для классов GAS, (Газ), LIQUID (Жидкость), METAL (Металл), WOOD_MATERIAL (Древесина) и т.д.
[00061] Каждый семантический класс в семантической иерархии (510) может сопровождаться глубинной моделью (512). Глубинная модель (512) семантического класса может включать множество глубинных позиций (514), которые могут отражать семантические роли дочерних составляющих в различных предложениях с объектами данного семантического класса в качестве ядра родительской составляющей. Глубинная модель (512) также может включать возможные семантические классы, выступающие в роли заполнителей глубинных позиций. Глубинные позиции (514) могут выражать семантические отношения, в том числе, например, "agent" (агент), "addressee" (адресат), "instrument" (инструмент), "quantity" (количество) и т.д. Дочерний семантический класс может наследовать и уточнять глубинную модель своего непосредственного родительского семантического класса.
[00062] Описания глубинных позиций (520) отражают семантические роли дочерних составляющих в глубинных моделях (512) и могут использоваться для описания общих свойств глубинных позиций (514). Описания глубинных позиций (520) также могут содержать грамматические и семантические ограничения в отношении заполнителей глубинных позиций (514). Свойства и ограничения, связанные с глубинными позициями (514) и их возможными заполнителями в различных языках, могут быть в значительной степени подобными и зачастую идентичными. Таким образом, глубинные позиции (514) не зависят от языка.
[00063] Набор семантем (530) может представлять собой множество семантических категорий и семантем, которые представляют значения семантических категорий. В качестве иллюстративного примера семантическая категория "DegreeOfComparison" (Степень сравнения) может использоваться для описания степени сравнения прилагательных и включать следующие семантемы: "Positive" (Положительная), "ComparativeHigherDegree" (Сравнительная степень сравнения), "SuperlativeHighestDegree" (Превосходная степень сравнения) и другие. В качестве еще одного иллюстративного примера семантическая категория "RelationToReferencePoint" (Отношение к точке) может использоваться для описания порядка (пространственного или временного в широком смысле анализируемых слов), как, например, до или после точки или события, и включать семантемы "Previous" (Предыдущий) и "Subsequent" (Последующий). В качестве еще одного иллюстративного примера семантическая категория "EvaluationObjective" (Оценка) может использоваться для описания объективной оценки, как, например, "Bad" (Плохой), "Good" (Хороший) и т.д.
[00064] Система семантем (530) может включать независимые от языка семантические атрибуты, которые могут выражать не только семантические характеристики, но и стилистические, прагматические и коммуникативные характеристики. Некоторые семантемы могут использоваться для выражения атомарного значения, которое находит регулярное грамматическое и (или) лексическое выражение в естественном языке. По своему целевому назначению и использованию системы семантем могут разделяться на категории, например, грамматические семантемы (532), лексические семантемы (534) и классифицирующие грамматические (дифференцирующие) семантемы (536).
[00065] Грамматические семантемы (532) могут использоваться для описания грамматических свойств составляющих при преобразовании синтаксического дерева в семантическую структуру. Лексические семантемы (534) могут описывать конкретные свойства объектов (например, "being flat" (быть плоским) или "being liquid" (являться жидкостью)) и использоваться в описаниях глубинных позиций (520) как ограничение заполнителей глубинных позиций (например, для глаголов "face (with)" (облицовывать) и "flood" (заливать), соответственно). Классифицирующие грамматические (дифференцирующие) семантемы (536) могут выражать дифференциальные свойства объектов внутри одного семантического класса. В качестве иллюстративного примера в семантическом классе HAIRDRESSER (ПАРИКМАХЕР) семантема «RelatedToMen» (Относится к мужчинам) присваивается лексическому значению "barber" в отличие от других лексических значений, которые также относятся к этому классу, например, «hairdresser», «hairstylist» и т.д. Используя данные независимые от языка семантические свойства, которые могут быть выражены в виде элементов семантического описания, в том числе семантических классов, глубинных позиций и семантем, можно извлекать семантическую информацию в соответствии с одним или более аспектами настоящего изобретения.
[00066] Прагматические описания (540) позволяют назначать определенную тему, стиль или жанр с текстам и объектам семантической иерархии (510) (например, «Экономическая политика», «Внешняя политика», «Юриспруденция», «Законодательство», «Торговля», «Финансы» и т.д.). Прагматические свойства также могут выражаться семантемами. В качестве иллюстративного примера прагматический контекст может приниматься во внимание при семантическом анализе.
[00067] На Фиг. 8 приведен пример лексических описаний. Лексические описания (203) представляют собой множество лексических значений (612) конкретного естественного языка. Для каждого лексического значения (612) имеется связь (602) с его независимым от языка семантическим родителем для того, чтобы указать положение какого-либо заданного лексического значения в семантической иерархии (510).
[00068] Лексическое значение (612) в лексико-семантической иерархии (510) может быть соотнесено с поверхностной моделью (410), которая в свою очередь через одну или несколько диатез (417) может быть соотнесена с соответствующей глубинной моделью (512). Лексическое значение (612) может наследовать семантический класс своего родителя и уточнять свою глубинную модель (512).
[00069] Поверхностная модель (410) лексического значения может включать одну или несколько синтаксических форм (412). Синтформа (412) поверхностной модели (410) может включать одну или несколько поверхностных позиций (415), в том числе соответствующие описания их линейного порядка (416), одно или несколько грамматических значений (414), выраженных в виде набора грамматических категорий (граммем), одно или несколько семантических ограничений, соотнесенных с заполнителями поверхностных позиций, и одну или несколько диатез (417). Семантические ограничения, соотнесенные с определенным заполнителем поверхностной позиции, могут быть представлены в виде одного или более семантических классов, объекты которых могут заполнить эту поверхностную позицию.
[00070] На Фиг. 9 схематически иллюстрируются примеры структур данных, которые могут быть использованы в рамках одного или более методов настоящего изобретения. Снова ссылаясь на Фиг. 2, в блоке (214) вычислительное устройство, реализующее данный способ, может проводить лексико-морфологический анализ предложения (212) для построения лексико-морфологической структуры (722) согласно Фиг. 9. Лексико-морфологическая структура (722) может включать множество соответствий лексического и грамматического значений для каждой лексической единицы (например, слова) исходного предложения. На Фиг. 3 схематически иллюстрируется пример лексико-морфологической структуры.
[00071] В блоке 215 вычислительное устройство может проводить грубый синтаксический анализ исходного предложения (212) для построения графа обобщенных составляющих (732) согласно Фиг. 9. Грубый синтаксический анализ предполагает применение одной или нескольких возможных синтаксических моделей возможных лексических значений к каждому элементу множества элементов лексико-морфологической структуры (722), с тем чтобы установить множество потенциальных синтаксических отношений в составе исходного предложения (212), представленных графом обобщенных составляющих (732).
[00072] Граф обобщенных составляющих (732) может быть представлен ациклическим графом, включающим множество узлов, соответствующих обобщенным составляющим исходного предложения (212) и включающим множество дуг, соответствующих поверхностным (синтаксическим) позициям, которые могут выражать различные типы отношений между обобщенными лексическими значениями. В рамках данного способа может применяться множество потенциально применимых синтаксических моделей для каждого элемента множества элементов лексико-морфологических структур исходного предложения (212) для формирования набора составляющих исходного предложения (212). Затем в рамках способа может рассматриваться множество возможных составляющих исходного предложения (212) для построения графа обобщенных составляющих (732) на основе набора составляющих. Граф обобщенных составляющих (732) на уровне поверхностной модели может отражать множество потенциальных связей между словами исходного предложения (212). Поскольку количество возможных синтаксических структур может быть относительно большим, граф обобщенных составляющих (732) может, в общем случае, включать избыточную информацию, в том числе относительно большое число лексических значений по определенным узлам и (или) поверхностных позиций по определенным дугам графа.
[00073] Граф обобщенных составляющих (732) может изначально строиться в виде дерева, начиная с концевых узлов (листьев) и двигаясь далее к корню, путем добавления дочерних составляющих, заполняющих поверхностные позиции (415) множества родительских составляющих, с тем чтобы были охвачены все лексические единицы исходного предложения (212).
[00074] В определенных вариантах осуществления корень графа обобщенных составляющих (732) представляет собой предикат. В ходе описанного выше процесса дерево может стать графом, так как определенные составляющие более низкого уровня могут быть включены в одну или несколько составляющих верхнего уровня. Множество составляющих, которые представляют определенные элементы лексико-морфологической структуры, затем может быть обобщено для получения обобщенных составляющих. Составляющие могут быть обобщены на основе их лексических значений или грамматических значений (414), например, на основе частей речи и отношений между ними. На Фиг. 10 схематически иллюстрируется пример графа обобщенных составляющих.
[00075] В блоке (216) вычислительное устройство может проводить точный синтаксический анализ предложения (212) для формирования одного или более синтаксических деревьев (742) согласно Фиг. 9 на основе графа обобщенных составляющих (732). Для каждого синтаксического дерева вычислительное устройство может определить интегральную оценку на основе априорных и вычисляемых оценок. Дерево с наилучшей оценкой может быть выбрано для построения наилучшей синтаксической структуры (746) исходного предложения (212).
[00076] В ходе построения синтаксической структуры (746) на основе выбранного синтаксического дерева вычислительное устройство может установить одну или несколько недревесных связей (например, путем создания дополнительной связи среди, как минимум, двух узлов графа). Если этот процесс заканчивается неудачей, вычислительное устройство может выбрать синтаксическое дерево с условно оптимальной оценкой, наиболее близкой к оптимальной, и производится попытка установить одну или несколько недревесных связей в дереве. Наконец, в результате точного синтаксического анализа создается синтаксическая структура (746), которая представляет собой лучшую синтаксическую структуру, соответствующую исходному предложению (212). Фактически в результате отбора лучшей синтаксической структуры (746) определяются лучшие лексические значения (240) для элементов исходного предложения (212).
[00077] В блоке (217) вычислительное устройство может обрабатывать синтаксические деревья для формирования семантической структуры (218), соответствующей предложению (212). Семантическая структура (218) может отражать передаваемую исходным предложением семантику в независимых от языка терминах. Семантическая структура (218) может быть представлена в виде ациклического графа (например, дерево, возможно, дополненное одной или более не древесной связью (дугой графа). Слова исходного предложения представлены узлами с соответствующими независимыми от языка семантическими классами семантической иерархии (510). Дуги графа представляют глубинные (семантические) отношения между элементами предложения. Переход к семантической структуре (218) может осуществляться с помощью правил анализа (460) и предполагает соотнесение одного или более атрибутов (отражающих лексические, синтаксические и (или) семантические свойства слов исходного предложения (212)) с каждым семантическим классом.
[00078] На Фиг. 11 приводятся примеры синтаксической структуры, соответствующей предложению, приведенному на Фиг. 10. Узел (901) соответствует лексическому элементу "life" (жизнь) (906) в исходном предложении (212). Применяя способ описанного в настоящем документе синтактико-семантического анализа, вычислительное устройство может установить, что лексический элемент "life" (жизнь) (906) представляет одну из лексем производной формы "live" (жить) (902), соотнесенной с семантическим классом "LIVE" (ЖИТЬ) (904) и заполняет поверхностную позицию $Adjunctr_Locative (905) в родительской составляющей, представленной управляющим узлом Verb:succeed:succeed:TO_SUCCEED (907).
[00079] На Фиг. 12 приводится семантическая структура, соответствующая синтаксической структуре на Фиг. 11. В отношении вышеупомянутого лексического элемента "life" (жизнь) (906) на Фиг. 11 семантическая структура включает лексические и семантические классы (1010) и (1030), подобные представленным на Фиг. 11, однако вместо поверхностной позиции (905) семантическая структура включает глубинную позицию "Sphere" (сфера деятельности) (1020).
[00080] Как отмечено выше в настоящем документе, в качестве "онтологии" может выступать модель, которая представляет собой объекты, относящиеся к определенной области знаний (предметной области), и отношения между данными объектами. Таким образом, онтология отличается от семантической иерархии, несмотря на то что она может быть соотнесена с элементами семантической иерархии через определенные отношения (также называемые "якоря"). Онтология может включать определения некого множества классов, где каждый класс соответствует концепту предметной области. Каждое определение класса может включать определения одного или более отнесенных к данному классу объектов. Согласно общепринятой терминологии класс онтологии может также означать концепт, а принадлежащий классу объект может означать экземпляр данного концепта.
[00081] В соответствии с одним или более аспектами настоящего изобретения вычислительное устройство, реализующее методы настоящего изобретения, может индексировать один или более параметров, полученных в результате семантико-синтаксического анализа. Таким образом, методы настоящего изобретения позволяют рассматривать не только множество слов в составе исходного текстового корпуса, но и множества лексических значений данных слов, храня и индексируя всю синтаксическую и семантическую информацию, полученную в ходе синтаксического и семантического анализа каждого предложения исходного текстового корпуса. Такая информация может дополнительно включать данные, полученные в ходе промежуточных этапов анализа, а также результаты лексического выбора, в том числе результаты, полученные в ходе разрешения неоднозначностей, вызванных омонимией и (или) совпадающими грамматическими формами, соответствующими различным лексико-морфологическим значениям определенных слов исходного языка.
[00082] Для каждого текста, корпуса текстов или множества корпусов может быть создан один или более индексов. Индекс может быть представлен в виде структуры данных памяти, такой как таблица, состоящая из множества записей. Каждая запись может представлять собой установление соответствия между определенным элементом или параметром описания (например, одно или несколько слов, лексическое значение, синтаксическое отношение, морфологическое, синтаксическое или семантическое свойство или синтаксическая или семантическая структура) и одним или более идентификаторами (или адресами) случаев употребления данного элемента семантической в исходном тексте или корпусе.
[00083] В определенных вариантах осуществления индекс может включать одно или несколько значений морфологических, синтаксических, лексических и (или) семантических параметров. Данные значения могут быть получены в процессе двухэтапного семантического анализа (более подробное описание см. в настоящем документе). Индекс может использоваться для выполнения различных задач обработки естественного языка, в том числе выполнения семантического поиска.
[00084] Вычислительное устройство, реализующее данный способ, может извлекать широкий спектр лексических, грамматических, синтаксических, прагматических и (или) семантических характеристик в ходе проведения синтактико-семантического анализа и построения семантических структур. В качестве иллюстративного примера система может извлекать и хранить определенную лексическую информацию, данные о принадлежности определенных лексических единиц семантическим классам, информацию касательно грамматических форм и линейном порядке, информацию касательно использования определенных форм, аспектов, тональности (например, положительная или отрицательная), глубинных позиций, недревесных связей, семантем и т.д.
[00085] Вычислительное устройство, реализующее методы настоящего изобретения, может, применяя один или более описанных в настоящем документе методов текстового анализа, создавать и индексировать любой из одного или более параметров языковых описаний, в том числе лексических значений, семантических классов, граммем, семантем и т.д. Индексация семантических классов может применяться при выполнении различных задач обработки естественного языка, включая семантический поиск, классификацию, кластеризацию, фильтрацию текста и т.д. Индексация лексических значений (в отличие от индексации слов) позволяет искать не только слова и формы слов, но и лексические значения, т.е. слова с определенными лексическими значениями. Вычислительное устройство, реализующее методы настоящего изобретения, также может хранить, индексировать и искать синтаксические и семантические структуры, полученные одним или более описанными в настоящем документе методами текстового анализа, для использования данных структур и (или) индексов при проведении семантического поиска, классификации, кластеризации и фильтрации документов.
[00086] В различных вариантах осуществления вычислительное устройство, реализующее методы настоящего изобретения, может использовать индексы, в состав которых входит одно или несколько целых чисел, для индексирования различных синтаксических, семантических и других параметров. В качестве иллюстративного примера поверхностные или глубинные позиции могут индексироваться с использованием комбинаций из двух целых чисел, где целые числа обозначают "координаты", соответствующие определенной позиции слова в тексте. Так, применительно к примеру семантической структуры на Фиг. 12 глубинная позиция "Sphere" (сфера_деятельности) (1010) связывает лексическое значение "succeed:TO_SUCCEED" (1020) с лексическим значением "life:LIVE" (1030). Более конкретно, лексическое значение "life:LIVE" заполняет глубинную позицию "Sphere" глагола "succeed:TO_SUCCEED". В ходе построения индекса лексических значений вычислительное устройство может соотносить данные лексические значения с координатами их соответствующих расположений в исходном тексте, например, N1 и N2. В ходе построения индекса глубинных позиций вычислительное устройство может соотносить каждую глубинную позицию с идентификатором ее положения в исходном тексте. Так, индекс глубинных позиций будет соотносить глубинную позицию "Sphere" со значением идентификаторов (N1, N2) и другими ее вхождениями.
[00087] Аналогичные способы могут применяться для индексирования не только слов, но и лексических значений, семантических классов, синтаксических и семантических отношений и (или) других элементов синтаксических и семантических структур, применяемых и создаваемых в рамках методов настоящего изобретения. Индексы могут облегчать поиск и распознавание определенных контекстов не только по ключевым словам, но и контекстов, заданных определенными лексическими значениями, соотнесенными с определенными семантическими классами, синтаксическими и (или) семантическими свойствами, морфологическими свойствами или их сочетаниями.
[00088] Вычислительное устройство, реализующее методы настоящего изобретения, также может осуществлять поиск определенных фрагментов синтаксических или семантических структур. Результатами такого поиска могут стать предложения, абзацы и другие текстовые фрагменты согласно параметрам поиска.
[00089] Вычислительное устройство, реализующее методы настоящего изобретения, может анализировать множество предложений, входящих в исходный текстовый корпус, и хранить результаты синтаксического и семантического анализа данных предложений. Следовательно, вычислительное устройство может быть запрограммировано на сравнение синтаксических и семантических структур, а также их классификацию, кластеризацию и (или) другой вид обработки, в том числе создание их соответствующих визуальных представлений с помощью устройства с графическим интерфейсом пользователя.
[00090] Возвратимся к Фиг. 1. В блоке 140 вычислительное устройство, реализующее данный способ, устанавливает две схожие семантические структуры, с тем чтобы установить семантически близкие или эквивалентные слова или словосочетания. В качестве иллюстративного примера вычислительное устройство может устанавливать первую семантическую структуру и вторую семантическую структуру, где первая семантическая структура включает первую подструктуру, которая по определенному критерию подобия является подобной второй подструктуре, входящей в состав второй установленной семантической структуры. Критерий подобия может предполагать по меньшей мере частичную эквивалентность двух подструктур (более подробное описание см. ниже в настоящем документе). В качестве иллюстративного примера каждая из установленных подобных подструктур может состоять из двух частей (именуемых "левый контекст" и "правый контекст" с целью указания на то, что они окружают соответствующие оставшиеся подструктуры первой семантической структуры и второй семантической структуры).
[00091] В различных вариантах осуществления вычислительное устройство, реализующее настоящий способ, может использовать различные индексы для идентификации подобных семантических структур. В качестве иллюстративного примера вычислительное устройство может использовать индексы лексических значений, индексы поверхностных позиций и (или) индексы глубинных позиций. В качестве еще одного иллюстративного примера вычислительное устройство может использовать индексы N-грамм, т.е. индексы N последовательностей элементов, элементы которых могут быть представлены лексическими значениями, поверхностными позициями и т.д.
[00092] В качестве иллюстративного примера исходный текстовый корпус может включать множество юридических документов. Такие документы обычно содержат относительно большое количество предложений, имеющих похожую семантическую структуру. В настоящем документе иллюстративный пример описывает с создание концепта онтологии и (или) добавление экземпляров концепта, связанных с различными вариантами термина "прекращение трудовых отношений" в различных контекстах, в том числе "увольнение по инициативе работодателя", "увольнение по собственному желанию", "увольнение со службы", "увольнение должностного лица", а также семантически близкие "освобождение от должности", "расторжение трудового договора" и т.д. Вычислительное устройство, реализующее данный способ, может выбрать определенные классы структур определенного вида, например, описывающие именную группу, или факт (субъект, предикат, объект), или содержащие определенную глубинную позицию, или семантический класс и т.д.
[00093] Термин "Увольнение" может быть представлен соответствующим классом онтологии, как схематически показано на Фиг. 13. Вычислительное устройство, реализующее методы настоящего изобретения, может обрабатывать исходный текстовый корпус и (или) его индексы для установления семантически близких или эквивалентных терминов, подлежащих добавлению в класс онтологии. В различных иллюстративных примерах такие термины как "увольнение работника"; "увольнение лица"; "увольнение сотрудника"; "увольнение с работы" могут быть определены вычислительным устройством как принадлежащие к классу онтологии "Увольнение сотрудника = расторжение трудового договора".
[00094] Способ по Фиг. 1 основан на допущении, что семантически близкие или эквивалентные слова или выражения могут употребляться в текстовом корпусе два или более раз, и что по меньшей мере в некоторых из таких случаев употребления будут использоваться семантически близкие или эквивалентные слова или выражения в близких или эквивалентных контекстах.
[00095] В качестве иллюстративного примера в рамках данного способа могут обрабатываться следующие два предложения:
[00096] (а) При рассмотрении дела о восстановлении на работе лица, трудовой договор с которым расторгнут по инициативе работодателя, обязанность доказать наличие законного основания увольнения возлагается на работодателя; и
[00097] (b) При рассмотрении дела о восстановлении на работе лица, трудовой договор с которым расторгнут по инициативе работодателя, обязанность доказать наличие законного основания расторжения трудового договора возлагается на работодателя.
[00098] Как схематически показано на Фиг. 14, данные два предложения содержат одинаковые левый "При рассмотрении дела о восстановлении на работе лица, трудовой договор с которым расторгнут по инициативе работодателя, обязанность доказать наличие законного основания", (1101) и (1102), и правый "возлагается на работодателя" контексты (1103) и (1104), соответственно. Эквивалентность контекстов может быть установлена путем текстуального сравнения текстов или, если контексты близки семантически, но различны текстуально - сравнением их семантических структур. Семантические структуры (1510) и (1520), соответствующие предложениям (а) и (b) схематически показаны на Фиг. 15 и 16.
[00099] Для сокращения перебора множество семантико-синтаксических структур, представляющих исходный текстовый корпус, может быть подвергнуто предварительной кластеризации или классификации, либо фильтрации (например, на основе определенных семантических классов). Далее, для сокращения перебора и получения более точного результата, выделенные в подмножества семантико-синтаксические структуры (классы или кластеры) могут быть сопоставлены попарно. В определенных вариантах осуществления вычислительное устройство может быть настроено на установление двух или более структур, имеющих эквивалентные подструктуры, включающие левый и правый контексты, таких как упомянутые выше исходные предложения (а) и (b). Такие подструктуры могут не вполне совпадать текстуально, но иметь совпадающие семантические структуры. Под совпадением может пониматься, например, наличие одних и тех же семантических классов в узлах семантических структур, наличие набора одних и тех же семантем при них и одинаковых глубинных позиций. Набор совпадающих семантем может быть предварительно ограничен некоторым выделенным набором, например, дифференцирующих семантем. Таким образом, технология глубинного анализа позволяет сопоставлять семантические значения предложений и их частей независимо от способа их синтаксического выражения.
[000100] Вычислительное устройство, реализующее данный способ, затем может выдвинуть гипотезу о том, что оставшиеся после исключения установленных совпадающих подструктур (например, соответствующие левые и правые контексты) части предложений являются семантически подобными или эквивалентными. В иллюстративном примере на Фиг. 15-16 вычислительное устройство может выдвинуть гипотезу о том, что термины "увольнение" и "расторжение трудового договора" являются семантически подобными или эквивалентными, даже если их соответствующие семантические подструктуры (1210) и (1220) различаются.
[000101] Вычислительное устройство, реализующее данный способ, затем может осуществить проверку выдвигаемой гипотезы, например, используя аналогичный или тот же корпус текстов, исключив указанные предложения. В определенных вариантах осуществления гипотеза может проверяться путем нахождения в рамках того же или подобного текстового корпуса других предложений, содержащих термины, семантическое подобие или эквивалентность которых подвергается проверке (например, "увольнение" и "расторжение трудового договора"). В качестве иллюстративного примера вычислительное устройство, реализующее данный способ, может установить две подобные или эквивалентные семантические структуры, отличные от двух установленных ранее семантических структур и включающие подструктуры, содержащие термины, семантическое подобие или эквивалентность которых подвергается проверке, тогда как остающиеся части вновь установленных структур являются семантически подобными или эквивалентными (например, по тому же критерию подобия, который был использован для установления подобия первых двух семантических структур).
[000102] В определенных вариантах осуществления требования к эквивалентности левых и правых контекстов, окружающих подструктуру-кандидата, могут быть снижены, так чтобы левый и правый контексты могли быть подобными по определенному критерию подобия, тогда как значение метрики подобия должно превышать определенное пороговое значение.
[000103] В качестве иллюстративного примера в рамках данного способа могут обрабатываться следующие два предложения:
[000104] (а) При рассмотрении дела о восстановлении на работе лица, трудовой договор с которым расторгнут по инициативе работодателя, обязанность доказать наличие законного основания увольнения возлагается на работодателя; и
[000105] (с) В процессе рассмотрения дела о восстановлении на работе лица, трудовой договор с которым расторгнут по инициативе работодателя, обязанность доказать наличие законного основания расторжения трудового договора возлагается на работодателя.
[000106] Семантические структуры, соответствующие предложениям (а) и (с) схематически показаны на Фиг. 15 и 17, соответственно. Семантические структуры (1230) и (1240), соответствующие выделенным частям предложений, а именно: "При рассмотрении дела" и "В процессе рассмотрения дела" могут рассматриваться как по существу подобные по определенному критерию подобия и, таким образом, обладают эквивалентными семантическими значениями.
[000107] Подобие семантических структур может оцениваться с помощью интегральной метрики подобия. В зависимости от требований в отношении точности и (или) сложности вычислений метрика может учитывать различные факторы, в том числе: структурное подобие семантических структур; наличие идентичных глубинных позиций или позиций, соотнесенных с тем же семантическим классом; наличие идентичных лексических или семантических классов в узлах семантических структур; наличие отношений родитель-потомок между классами в соответствующих узлах семантических структур, так чтобы родитель и потомок были разделены не более, чем определенным числом уровней семантической иерархии; наличие общего предка по определенным семантическим классам и расстояния между узлами, представляющими данные классы. Если обнаруживается, что определенные семантические классы являются эквивалентными или в сущности подобными, метрика может далее принять во внимание наличие или отсутствие определенных дифференцирующих семантем и (или) другие факторы.
[000108] В определенных вариантах осуществления между семантическими структурами может задаваться отношение частичного порядка. В качестве иллюстративного примера, предложения и их соответствующие семантические структуры могут располагаться по степени абстрактности, например, от менее общих (более конкретных) к более общим (менее конкретным) утверждениям. В определенных вариантах осуществления каждая семантическая структура может соотноситься с определенной оценкой, отражающей отношение частичного порядка.
[000109] Снова ссылаясь на Фиг. 1, в блоке 150 вычислительное устройство, реализующее данный способ, может определить, что соответствующие внутренние контексты первой семантической структуры и второй семантической структуры (где каждый внутренний контекст окружен соответствующим левым и правым контекстами) являются подобными по определенному критерию подобия.
[000110] В блоке 160 вычислительное устройство может обозначать слова или словосочетания, соответствующие внутренним контекстам двух семантических структур, как семантически подобные или эквивалентные.
[000111] В блоке 170 вычислительное устройство может определить объекты, представленные соответствующими внутренними контекстами двух семантических структур (т.е. третья подструктура и четвертая подструктура) как экземпляры определенного концепта онтологии, соотнесенной с текстовым корпусом или областью знаний.
[000112] В других вариантах осуществления данного способа на Фиг. 1 вычислительное устройство может устанавливать слова и группы слов, которые находятся в отношении "общее - частное" и поэтому могут принадлежать к классу онтологии и его подклассу либо классу онтологии в качестве его экземпляров.
[000113] Важным преимуществом способа, показанного на Фиг. 1, является то, что экземпляры, добавляемые в онтологию, создаются в результате синтактико-семантического анализа соответствующих семантических структур, в результате которого также были получены свойства объектов, соответствующих вновь добавленным экземплярам онтологии. Следовательно, данные свойства экземпляров могут храниться с экземплярами онтологии и использоваться в будущем для выполнения различных задач обработки языка.
[000114] Еще одним важным преимуществом способа, указанного на Фиг. 1, является то, что вновь добавленные экземпляры онтологии могут быть соотнесены с соответствующими элементами семантической иерархии, что, таким образом, позволяет использовать связанную с ними синтаксическую и семантическую информацию для выполнения различных задач обработки языка и поиска.
[000115] На Фиг. 18 показан иллюстративный приме вычислительного устройства (1000), которое может исполнять набор команд, которые вызывают выполнение вычислительным устройством любого отдельно взятого или нескольких способов настоящего изобретения. Вычислительное устройство может подключаться к другому вычислительному устройству по локальной сети, корпоративной сети, сети экстранет или сети Интернет. Вычислительное устройство может работать в качестве сервера или клиентского вычислительного устройства в сетевой среде "клиент/сервер" либо в качестве однорангового вычислительного устройства в одноранговой (или распределенной) сетевой среде. Вычислительное устройство может быть представлено персональным компьютером (ПК), планшетным ПК, телевизионной приставкой (STB), карманным ПК (PDA), сотовым телефоном или любым вычислительным устройством, способным выполнять набор команд (последовательно или иным образом), определяющих операции, которые должны быть выполнены этим вычислительным устройством. Кроме того, в то время как показано только одно вычислительное устройство, следует принять, что термин «вычислительное устройство» также может включать любую совокупность вычислительных устройств, которые отдельно или совместно выполняют набор (или несколько наборов) команд для выполнения одной или нескольких методик, описанных в настоящем документе.
[000116] Пример вычислительного устройства (1000) включает процессор (502), основную память (504) (например, постоянное запоминающее устройство (ПЗУ) или динамическую оперативную память (DRAM)) и устройство хранения данных (518), которые взаимодействуют друг с другом по шине (530).
[000117] Процессор (502) может быть представлен одним или более универсальными вычислительными устройствами, например, микропроцессором, центральным процессором и т.д. В частности, процессор (502) может представлять собой микропроцессор с полным набором команд (CISC), микропроцессор с сокращенным набором команд (RISC), микропроцессор с командными словами сверхбольшой длины (VLIW), процессор, реализующий другой набор команд, или процессоры, реализующие комбинацию наборов команд. Процессор (502) также может представлять собой одно или несколько вычислительных устройств специального назначения, например, заказную интегральную микросхему (ASIC), программируемую пользователем вентильную матрицу (FPGA), процессор цифровых сигналов (DSP), сетевой процессор и т.п. Процессор (502) настроен на выполнение команд (526) для осуществления рассмотренных в настоящем документе операций и функций.
[000118] Вычислительное устройство (1000) может дополнительно включать устройство сетевого интерфейса (522), устройство визуального отображения (510), устройство ввода символов (512) (например, клавиатуру), и устройство ввода - сенсорный экран (514).
[000119] Устройство хранения данных (518) может содержать машиночитаемый носитель данных (524), в котором хранится один или более наборов команд (526), и в котором реализован один или более из методов или функций настоящего изобретения. Команды (526) также могут находиться полностью или по меньшей мере частично в основной памяти (504) и/или в процессоре (502) во время выполнения их в вычислительном устройстве (1000), при этом оперативная память (504) и процессор (502) также составляют машиночитаемый носитель данных. Команды (526) дополнительно могут передаваться или приниматься по сети (516) через устройство сетевого интерфейса (522).
[000120] В некоторых вариантах осуществления команды (526) могут включать в себя команды способа (800) на создание онтологий на основе анализа текстов на естественном языке. В то время как машиночитаемый носитель данных (524), показанный на примере на Фиг. 4, является единым носителем, термин «машиночитаемый носитель» должен включать один носитель или несколько носителей (например, централизованную или распределенную базу данных, и/или соответствующие кэши и серверы), в которых хранится один или более наборов команд. Термин "машиночитаемый носитель данных" также следует рассматривать как термин, включающий любой носитель, который способен хранить, кодировать или переносить набор команд для выполнения машиной, который заставляет эту машину выполнять любую одну или несколько из методик, описанных в настоящем раскрытии изобретения. Таким образом, термин «машиночитаемый носитель данных», помимо прочего, также относится к твердотельной памяти и оптическим и магнитным носителям.
[000121] Описанные в документе способы, компоненты и функции могут быть реализованы дискретными аппаратными компонентами, либо они могут быть интегрированы в функции других аппаратных компонентов, таких как ASICS, FPGA, DSP или подобных устройств. Кроме того, способы, компоненты и функции могут быть реализованы с помощью модулей встроенного программного обеспечения или функциональных схем аппаратных устройств. Способы, компоненты и функции также могут быть реализованы с помощью любой комбинации вычислительных средств и программных компонентов, либо исключительно с помощью программного обеспечения.
[000122] В приведенном выше описании изложены многочисленные детали. Однако специалисту в этой области техники благодаря этому описанию очевидно, что настоящее изобретение может быть реализовано на практике без этих конкретных деталей. В некоторых случаях хорошо известные структуры и устройства показаны в виде блок-схемы, а не детально, чтобы не усложнять описание настоящего изобретения.
[000123] Некоторые части описания предпочтительных вариантов реализации представлены в виде алгоритмов и символического представления операций с битами данных в памяти компьютера. Такие описания и представления алгоритмов представляют собой средства, используемые специалистами в области обработки данных, чтобы наиболее эффективно передавать сущность своей работы другим специалистам в данной области. В настоящем документе и в целом алгоритмом называется самосогласованная последовательность операций, приводящих к требуемому результату. Операции требуют физических манипуляций с физическими величинами. Обычно, хотя и не обязательно, эти величины принимают форму электрических или магнитных сигналов, которые можно хранить, передавать, комбинировать, сравнивать и подвергать другим манипуляциям. Оказалось, что прежде всего для обычного использования удобно описывать эти сигналы в виде битов, значений, элементов, символов, членов, цифр и т.д.
[000124] Однако следует иметь в виду, что все эти и подобные термины должны быть связаны с соответствующими физическими величинами, и что они представляют собой просто удобные метки, применяемые к этим величинам. Если иное специально и недвусмысленно не указано в нижеследующем обсуждении, следует принимать, что везде по тексту такие термины как "определение", "вычисление", "расчет", "вычисление", "получение", "установление", "изменение" и т.п., относятся к действиям и процессам вычислительного устройства или аналогичного электронного вычислительного устройства, которое работает с данными и преобразует данные, представленные в виде физических (например, электронных) величин в регистрах и памяти вычислительного устройства, в другие данные, аналогичным образом представленные в виде физических величин в памяти или регистрах вычислительного устройства, либо других подобных устройствах хранения, передачи или отображения информации.
[000125] Настоящее изобретение также относится к устройству для выполнения операций, описанных в настоящем документе. Такое устройство может быть специально сконструировано для требуемых целей или оно может содержать универсальный компьютер, который избирательно активируется или реконфигурируется с помощью компьютерной программы, хранящейся в компьютере. Такая компьютерная программа может храниться на машиночитаемом носителе данных, таком как, в числе прочих, диск любого рода, в том числе дискеты, оптические диски, компакт-диски, магнитно-оптические диски, постоянные запоминающие устройства (ПЗУ), оперативные запоминающие устройства (ОЗУ), СППЗУ, ЭППЗУ, магнитные или оптические карты и другие виды носителей данных, подходящие для хранения электронных команд.
[000126] Следует понимать, что вышеприведенное описание носит иллюстративный, а не ограничительный характер. Различные другие варианты осуществления станут очевидны специалистам в данной области техники после прочтения и понимания приведенного выше описания. Поэтому объем раскрытия должен определяться со ссылкой на прилагаемую формулу изобретения наряду с полным объемом эквивалентов, на которые такие требования предоставляют право.