RU2563148C2 - System and method for semantic search - Google Patents
System and method for semantic search Download PDFInfo
- Publication number
- RU2563148C2 RU2563148C2 RU2013132622/08A RU2013132622A RU2563148C2 RU 2563148 C2 RU2563148 C2 RU 2563148C2 RU 2013132622/08 A RU2013132622/08 A RU 2013132622/08A RU 2013132622 A RU2013132622 A RU 2013132622A RU 2563148 C2 RU2563148 C2 RU 2563148C2
- Authority
- RU
- Russia
- Prior art keywords
- semantic
- lexical
- syntactic
- sentence
- search
- Prior art date
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
Description
ОБЛАСТЬ ИЗОБРЕТЕНИЯFIELD OF THE INVENTION
Настоящее изобретение относится к технологиям поиска, в частности, реализация данного изобретения имеет отношение к поиску доступного электронного контента, например, в интернете и других электронных ресурсах, таких как текстовые корпуса, словари, глоссарии, энциклопедии и т.д.The present invention relates to search technologies, in particular, the implementation of this invention relates to the search for accessible electronic content, for example, on the Internet and other electronic resources such as text corpuses, dictionaries, glossaries, encyclopedias, etc.
УРОВЕНЬ ТЕХНИКИBACKGROUND
Широко известны поисковые технологии, которые позволяют генерировать результат поиска, основываясь на ключевых словах, вводимых пользователем в составе поискового запроса.Search technologies are widely known that allow you to generate a search result based on keywords entered by the user as part of a search query.
Однако, из-за омонимии и омографии, имеющейся в естественных языках, результат поиска, основанный на поиске по ключевым словам, может включать значительное количество нерелевантной и малорелевантной информации. Например, если пользователь ищет тексты, содержащие слово "page" в смысле "паж" (придворная должность), он получит множество нерелевантной информации, где "page" относится к интернет-страницам, страницам газет, журналов, страницам устройств памяти и т.д. Это происходит потому, что эти значения гораздо более частотны, чем "page" в лексическом значении "паж". Аналогично в русском языке по ключевому слову "стекло" можно получить все тексты, содержащие глагол "течь" во всевозможных словоформах.However, due to the homonymy and homography available in natural languages, a search result based on a keyword search may include a significant amount of irrelevant and unrelated information. For example, if a user searches for texts containing the word "page" in the sense of "page" (court position), he will receive a lot of irrelevant information, where "page" refers to web pages, pages of newspapers, magazines, pages of memory devices, etc. . This is because these values are much more frequent than the "page" in the lexical meaning "page". Similarly, in the Russian language for the keyword "glass" you can get all the texts containing the verb "flow" in all kinds of word forms.
Существующие системы позволяют использовать простые языки запросов для поиска документов, которые содержат, или не содержат слова или слово, указанные пользователем. Однако пользователь не имеет возможности указать, должны ли эти слова находиться в одном предложении или нет. Также, пользователь не может формулировать свой запрос сразу для некоторого множества слов, принадлежащих некоторому классу или обладающих некоторыми свойствами или характеристиками. Как правило, эти системы не позволяют формулировать запрос в виде обычного вопроса на естественном языке. И наконец, существующие системы поиска не позволяют пользователям искать предложения с заданными синтаксическими и/или семантическими свойствами, например, иллюстрирующие заданное семантическое отношение (связь), не позволяют создавать запросы, основанные на грамматических значениях, семантических и/или семантических позициях (связях), синтаксических моделях, стилистических и/или семантических особенностях. Такие типы поиска могут быть особенно полезны лексикографам, филологам, лингвистам, студентам и преподавателям родного или иностранного языка, а также многим обычным пользователям. Данное изобретение является развитием решений, изложенных ранее в Патентных заявках США №13/173,649 и 13/173,369, поданных 30 июня 2011, а также №12/983,220, поданной 31 декабря 2010 и частично использует технологию анализа, также запатентованную в США (Патент №8,078,450).Existing systems allow the use of simple query languages to search for documents that contain or do not contain words or a word specified by the user. However, the user is not able to specify whether these words should be in the same sentence or not. Also, the user cannot formulate his query immediately for a certain set of words belonging to a certain class or possessing some properties or characteristics. As a rule, these systems do not allow to formulate a request in the form of a common question in a natural language. And finally, existing search systems do not allow users to search for sentences with specified syntactic and / or semantic properties, for example, illustrating a given semantic relation (connection), and do not allow creating queries based on grammatical values, semantic and / or semantic positions (relationships), syntactic models, stylistic and / or semantic features. Such types of searches can be especially useful to lexicographers, philologists, linguists, students and teachers of their native or foreign language, as well as to many ordinary users. This invention is a development of the solutions set forth previously in US Patent Applications No. 13 / 173,649 and 13 / 173,369, filed June 30, 2011, as well as No. 12 / 983,220, filed December 31, 2010 and partially uses analysis technology also patented in the United States (Patent No. 8,078,450).
Наиболее близким решением является решение по Патентной заявке США №12/601901, в которой описан способ организации поиска на множестве электронных документов для компьютерной системы, заключающийся в том, что комбинируют результат поиска по ключевым словам с результатами семантического поиска и предъявляют пользователю результат такого комбинированного поиска.The closest solution is the solution for US Patent Application No. 12/601901, which describes a method of organizing a search on a variety of electronic documents for a computer system, which consists in combining the search result with keywords with the results of semantic search and presenting the user with the result of such a combined search .
Однако известный способ имеет недостатки. Семантический поиск, как он описан в этой заявке не делает различий между "словом" и множеством его лексических значений, и сам имеет ограниченный характер - фактически в качестве семантической информации используются только метаданные - некоторые внешние метки, тэги, которыми, автоматически или вручную, снабжаются документы. Он не позволяет искать слова в выбранном значении. Используемое дополнительно хранилище триплетов (triplestore) хранит информацию только об отношениях между объектами в виде "троек" вида {субъект, отношение, объект}.However, the known method has disadvantages. The semantic search, as described in this application, makes no distinction between a "word" and the set of its lexical meanings, and it has a limited character - in fact, only metadata is used as semantic information - some external tags, tags, which, automatically or manually, are supplied documents. It does not allow you to search for words in the selected meaning. The triplestore used additionally stores information only about relations between objects in the form of "triples" of the form {subject, relation, object}.
Технический результат от использования настоящего изобретения может состоять в следующем. В отличие от указанного прототипа, способ настоящего изобретения предполагает компьютерный поиск не просто слов, но слов в определенных лексических значениях, поскольку включает исчерпывающий семантико-синтаксический анализ корпуса текстов с извлечением всего спектра лексических, морфологических, синтаксических и семантических параметров предложений и построением их семантических структур. А последующее индексирование семантических структур обеспечивает возможность поиска не только "троек", но предложений любой заданной структуры, в том числе, возможность формулирования запроса на естественном языке.The technical result from the use of the present invention may consist in the following. Unlike the specified prototype, the method of the present invention involves a computer search of not just words, but words in certain lexical meanings, since it includes an exhaustive semantic-syntactic analysis of the corpus of texts with the extraction of the entire range of lexical, morphological, syntactic and semantic parameters of sentences and the construction of their semantic structures . And subsequent indexing of semantic structures provides the ability to search not only "triples", but sentences of any given structure, including the ability to formulate a query in a natural language.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION
Настоящее изобретение представляет собой способ организации информационного поиска в корпусах электронных текстов для компьютерной системы, заключающийся в том, что, по меньшей мере, один раз производят следующую последовательность действий: предварительно осуществляют семантико-синтаксический анализ корпуса текстов с определением значений лингвистических параметров предложений, их сохранением в памяти и построением семантических структур предложений, составляющих тексты корпуса текстов, и их последующим индексированием и сохранением индексов, затем, осуществляют поиск фрагментов в предварительно проиндексированных корпусах электронных текстов, удовлетворяющих запросу, производят оценку релевантности результатов, ранжируют результаты поиска в соответствии со степенью релевантности для показа их пользователю.The present invention is a method of organizing an information search in electronic text cases for a computer system, which consists in the following sequence of actions being performed at least once: semantic-syntactic analysis of the text body is carried out with determination of the values of the linguistic parameters of sentences, their preservation in memory and the construction of semantic sentence structures that make up the texts of the corpus of texts, and their subsequent indexing and storage HAND indices, then, is searched fragments in pre-indexed housings of electronic texts, satisfying the request, shall assess the relevance of the results, ranking the search results according to the degree of relevance to display them to the user.
Указанный исчерпывающий семантико-синтаксический анализ корпуса текстов проводится с использованием широкого спектра языковых описаний, и для каждого предложения корпуса текстов включает: генерацию всех потенциальных связей между элементами предложения и их сохранение в памяти, построение графа обобщенных составляющих, генерацию из графа обобщенных составляющих, по крайней мере, одного синтаксического дерева, установление недревесных связей и построение на основе синтаксического дерева синтаксической структуры предложения и ее сохранение в памяти, генерацию универсальной семантической структуры предложения на основе его синтаксической структуры и ее сохранении в памяти. Указанный семантико-синтаксический анализ корпуса текстов также включает лексический выбор, который, в одной из реализаций, состоит в выборе наиболее вероятного лексического значения слова из множества возможных лексических значений этого слова с учетом априорных и вычисляемых интегральных оценок. В еще одной реализации, лексический выбор может состоять в приписывании слову некоторого множества возможных лексических значений, каждый с соответствующей оценкой вероятности вхождения этого лексического значения в предложение. Дополнительно, семантико-синтаксический анализ корпуса текстов включает определение и извлечение значений морфологических, лексических, синтаксических и семантических параметров элементов корпуса текстов и выбор лучшей синтаксической структуры предложения.The specified comprehensive semantic and syntactic analysis of the text corpus is carried out using a wide range of language descriptions, and for each sentence of the text corpus includes: generating all potential relationships between sentence elements and storing them in memory, constructing a graph of generalized components, generating from the graph of generalized components, at least at least one syntax tree, the establishment of non-wood links and the construction of the syntactic structure of the sentence on the basis of the syntax tree and its storing in the memory, the generation of a universal semantic structure of the sentence on the basis of its syntactic structure and its preservation in memory. The indicated semantic-syntactic analysis of the corpus of texts also includes a lexical choice, which, in one of the implementations, consists in choosing the most probable lexical meaning of a word from the set of possible lexical meanings of this word, taking into account a priori and calculated integral estimates. In yet another implementation, the lexical choice may consist in attributing to the word a certain set of possible lexical meanings, each with a corresponding estimate of the probability of occurrence of this lexical meaning in the sentence. Additionally, the semantic-syntactic analysis of the text corpus includes the definition and extraction of the values of the morphological, lexical, syntactic and semantic parameters of the text corpus elements and the choice of the best syntactic structure of the sentence.
Также, дополнительно указанный семантико-синтаксический анализ корпуса текстов может сопровождаться атрибутированием элементов корпуса текстов понятиями модели предметной области (онтологии) и восстановлением референциальных связей между предложениями.Also, the additionally indicated semantic-syntactic analysis of the text corpus can be accompanied by attribution of the text corpus elements by the concepts of the domain model (ontology) and the restoration of referential relations between sentences.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS
Фиг.1 иллюстрирует обитую схему метода глубинного анализа корпуса текстов и построения индексов согласно одной из реализаций данного изобретения.Figure 1 illustrates the upholstered scheme of the method of deep analysis of the corpus of texts and the construction of indices according to one implementation of the present invention.
Фиг.1A содержит пример фрагмента текста с референциальными связями.Figa contains an example of a fragment of text with referential connections.
Фиг.2 иллюстрирует последовательность структур, строящихся в процессе анализа предложения согласно одной или нескольким реализациям изобретения.Figure 2 illustrates the sequence of structures built in the process of analysis of the proposal according to one or more implementations of the invention.
Фиг.3 иллюстрирует пример синтаксического дерева, полученного в результате точного синтаксического анализа английского предложения "This boy is smart, he'll succeed in life".Figure 3 illustrates an example of a syntax tree obtained by accurate parsing of the English sentence "This boy is smart, he'll succeed in life".
Фиг.4 иллюстрирует схему семантической структуры, полученной в результате анализа предложения "This boy is smart, he'll succeed in life."Figure 4 illustrates a diagram of the semantic structure obtained by analyzing the sentence "This boy is smart, he'll succeed in life."
Фиг.5A-5D иллюстрируют фрагмент семантической иерархии, согласно одной или нескольким реализациям данного изобретения.5A-5D illustrate a fragment of a semantic hierarchy, according to one or more implementations of the present invention.
Фиг.6 представляет собой схему, иллюстрирующую языковые описания 610, согласно одной из возможных реализаций изобретения.6 is a diagram illustrating
Фиг.7 представляет собой схему, иллюстрирующую морфологические описания, согласно одной из возможных реализаций изобретения.7 is a diagram illustrating morphological descriptions, according to one possible implementation of the invention.
Фиг.8 иллюстрирует синтаксические описания, согласно одной из возможных реализаций изобретения.FIG. 8 illustrates syntax descriptions in accordance with one possible implementation of the invention.
Фиг.9 иллюстрирует семантические описания, согласно одной из возможных реализаций изобретения.Figure 9 illustrates semantic descriptions, according to one possible implementation of the invention.
Фиг.10 является схемой, иллюстрирующей лексические описания, согласно одной или нескольким реализациям данного изобретения.10 is a diagram illustrating lexical descriptions, according to one or more implementations of the present invention.
Фиг.11 и Фиг.11B иллюстрирует пример пользовательского графического интерфейса поисковой системы, который позволяет пользователю формулировать запросы с выбором лексических значений.11 and 11B illustrate an example user interface of a search engine that allows a user to formulate queries with a choice of lexical values.
Фиг.11C и Фиг.11D иллюстрируют результаты семантического запроса.11C and 11D illustrate the results of a semantic query.
Фиг.12A иллюстрирует один из примеров семантического запроса.12A illustrates one example of a semantic query.
Фиг.12B иллюстрирует еще один пример семантического запроса.12B illustrates another example of a semantic query.
Фиг.12C иллюстрирует еще один пример семантического запроса.12C illustrates another example of a semantic query.
Фиг.13 иллюстрирует пример семантического запроса с "лакуной".13 illustrates an example of a semantic query with a “gap”.
Фиг.14 иллюстрирует примерную схему действий, осуществляемых при выполнении семантического запроса согласно одной из реализаций данного изобретения.Fig. 14 illustrates an exemplary flowchart for executing a semantic query according to one implementation of the present invention.
Фиг.14A иллюстрирует пример семантического запроса с выбором объектов онтологии.14A illustrates an example of a semantic query with a selection of ontology objects.
Фиг.15 иллюстрирует пример схемы аппаратного обеспечения.15 illustrates an example hardware diagram.
ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯDESCRIPTION OF PREFERRED EMBODIMENTS
Реализация данного изобретения раскрывает методы индексирования и систему для индексирования текстов на естественном языке. Также, изложены методы и система семантического поиска.An embodiment of the present invention discloses indexing methods and a system for indexing natural language texts. Also, the methods and system of semantic search are described.
В общих чертах, предлагаемый метод создания индекса включает выполнение исчерпывающего синтаксического и семантического анализа тексов на естественном языке для построения, по меньшей мере, одного индекса для каждого текста или текстового корпуса. При этом рассматриваются множества не просто слов, но множества лексических значений всех встречающихся в тексте (корпусе) слов, и вся лексическая, синтаксическая и семантическая информация о каждом предложении, получаемая в процессе синтаксического и семантического анализа, сохраняется и индексируется. Сохраняемая информация может включать также данные, получаемые на промежуточных этапах разбора, результаты лексического выбора, включая результаты, полученные в процессе разрешения неоднозначностей. Полученный таким образом индекс используется для организации семантического поиска как описано ниже.In general terms, the proposed method for creating an index involves performing comprehensive syntactic and semantic analysis of texes in natural language to construct at least one index for each text or text corpus. At the same time, sets of not just words are considered, but sets of lexical meanings of all words found in the text (corpus), and all lexical, syntactic and semantic information about each sentence obtained in the process of syntactic and semantic analysis is stored and indexed. The stored information may also include data obtained at the intermediate stages of analysis, the results of lexical selection, including the results obtained in the process of resolving ambiguities. The index obtained in this way is used to organize semantic search as described below.
Существующие системы используют простые языки запросов для поиска документов, которые содержат, или не содержат слова или слово, указанные пользователем. Однако пользователь не имеет возможности указать, в каком именно из своих значений должно быть найдено слово, должны ли указанные слова находиться в одном предложении или нет. Также, пользователь не может формулировать свой запрос сразу для некоторого множества слов, принадлежащего некоторому классу или обладающих некоторыми свойствами или характеристиками. Как правило, эти системы не позволяют формулировать запрос в виде обычного вопроса на естественном языке. И, наконец, существующие системы поиска не позволяют пользователям искать предложения с заданными синтаксическими и/или семантическими свойствами, например, иллюстрирующие заданное семантическое отношение (связь), не позволяют создавать запросы, основанные на грамматических значениях, семантических и/или семантических позициях (связях), синтаксических моделях, стилистических и/или семантических особенностях.Existing systems use simple query languages to search for documents that contain or do not contain words or words specified by the user. However, the user is not able to indicate in which of his meanings the word should be found, whether the indicated words should be in the same sentence or not. Also, the user cannot formulate his query right away for a certain set of words belonging to a certain class or possessing some properties or characteristics. As a rule, these systems do not allow to formulate a request in the form of a common question in a natural language. And, finally, existing search systems do not allow users to search for sentences with specified syntactic and / or semantic properties, for example, illustrating a given semantic relation (connection), and do not allow creating queries based on grammatical values, semantic and / or semantic positions (relationships) , syntactic models, stylistic and / or semantic features.
Проблемы существующих поисковых систем полностью или частично решаются методами, описанными ниже.The problems of existing search engines are fully or partially solved by the methods described below.
Осуществление изобретения позволяет пользователю искать и находить релевантную информацию, используя семантический запрос, который формулируется либо на специальном языке семантических запросов, а также, возможно, на естественном языке. Тот же самый анализатор используется для анализа запроса на естественном языке, для распознавания его синтаксической структуры и построения семантической структуры и, таким образом, и "понимания" системой смысла запроса. Поиск реализуется в соответствии с синтаксисом и семантической информацией, которая сохранена в ресурсе, допускающем такие типы поиска. Таким образом, пользователь может получить только релевантные результаты запроса.The implementation of the invention allows the user to search and find relevant information using a semantic query, which is formulated either in a special language of semantic queries, and also, possibly, in a natural language. The same analyzer is used to analyze a query in natural language, to recognize its syntactic structure and build a semantic structure and, thus, the system “understands” the meaning of the request. The search is implemented in accordance with the syntax and semantic information that is stored in a resource that allows these types of searches. Thus, the user can get only relevant query results.
Кроме того, поскольку поисковый запрос может быть сформулирован или транслирован в универсальных, независимых от языка, семантических терминах, поиск может осуществляться в корпусах, включающих документы на разных языках. Таким образом, пользователь может получать информацию, представленную в различных ресурсах независимо от языка, на котором сформулирован запрос на поиск. Результаты поиска могут быть предъявлены пользователю как на языке ресурса, в оригинальном виде, как это найдено в документе, так и могут быть переведены на язык запроса при помощи системы машинного перевода.In addition, since the search query can be formulated or translated in universal, language-independent, semantic terms, the search can be carried out in cases that include documents in different languages. Thus, the user can receive information presented in various resources regardless of the language in which the search request is formulated. Search results can be presented to the user both in the language of the resource, in the original form, as found in the document, and can be translated into the query language using the machine translation system.
В Патенте США U.S. Patent 8,078,450 описан метод, включающий глубинный синтаксический и семантический анализ текстов на естественном языке, основанный на исчерпывающих лингвистических описаниях. Этот метод может быть использован на этапе анализа описываемого метода построения индексов. Метод использует широкий спектр лингвистических описаний, как универсальных семантических механизмов, так относящихся к конкретному языку, что позволяет отразить все реальные сложности языка без упрощения и искусственных ограничений, не опасаясь при этом комбинаторного взрыва, неуправляемого роста сложности. Сверх того, указанные способы анализа основаны на принципах целостного и целенаправленного распознавания, т.е. гипотезы о структуре части предложения верифицируются в рамках проверки гипотезы о структуре всего предложения. Это позволяет избежать анализа большого множества аномалий и вариантов.U.S. Patent U.S. Patent 8,078,450 describes a method that includes in-depth syntactic and semantic analysis of texts in natural language, based on exhaustive linguistic descriptions. This method can be used at the stage of analysis of the described method of constructing indexes. The method uses a wide range of linguistic descriptions, as universal semantic mechanisms that relate to a specific language, which allows you to reflect all the real complexities of the language without simplification and artificial restrictions, without fear of a combinatorial explosion, uncontrolled growth of complexity. Moreover, these analysis methods are based on the principles of holistic and targeted recognition, i.e. hypotheses about the structure of a part of a proposal are verified as part of a test of the hypothesis about the structure of the whole proposal. This avoids the analysis of a large number of anomalies and variations.
Глубинный анализ включает лексико-морфологический, синтаксический и семантический анализ каждого предложения корпуса текстов, в результате которых строятся семантические структуры, независимые от языка (language-independent semantic structures), в которых каждому слову текста сопоставлен соответствующий семантический класс. Фиг.1 иллюстрирует общую схему метода глубинного анализа и построения индексов согласно одной из реализаций данного изобретения. Корпус текстов 105 подвергается исчерпывающему семантико-синтаксическому анализу 106 с использованием лингвистических описаний, как исходного языка, так и универсальных семантических описаний, что позволяет анализировать не только поверхностную синтаксическую структуру, но и глубинную, семантическую, выражающую смысл высказывания, содержащегося в каждом предложении, а также связи между предложениями или фрагментами текста. Лингвистические описания могут включать лексические описания 101, морфологические описания 102, синтаксические описания 103 и семантические описания 104. Анализ 106 включает синтаксический анализ, реализованный в виде двухэтапного алгоритма (грубого синтаксического анализа и точного синтаксического анализа), использующий лингвистические модели и информацию различных уровней для вычисления вероятностей и генерации наиболее вероятной («лучшей») синтаксической структуры. Фиг.2 иллюстрирует последовательность структур, строящихся в процессе анализа предложения согласно одной или нескольким реализациям изобретения.An in-depth analysis includes lexical-morphological, syntactic and semantic analysis of each sentence of the corpus of texts, as a result of which semantic structures are independent of the language (language-independent semantic structures), in which each word of the text is associated with a corresponding semantic class. Figure 1 illustrates the General scheme of the method of depth analysis and construction of indices according to one implementation of the present invention. The corpus of texts 105 is subjected to an exhaustive semantic-syntactic analysis 106 using linguistic descriptions of both the source language and universal semantic descriptions, which allows us to analyze not only the surface syntactic structure, but also the deep, semantic, expressing the meaning of the statement contained in each sentence, and also links between sentences or text fragments. Linguistic descriptions may include
Затем строится независимая от языка семантическая структура (language-independent semantic structure) 107, которая представляет смысл исходного предложения. Этот этап может включать также восстановление референциальных связей между предложениями. Примером референциальной связи является анафора - использование языковых конструкций, которые могут быть проинтерпретированы лишь с учетом другого, как правило, предшествующего, фрагмента текста. Фиг.1A иллюстрирует фрагмент текста с референциальными связями между предложениями. Эти связи на уровне соответствующих семантических структур устанавливаются на этапе 107. В частности, для последующего индексирования личные, указательные местоимения, а также другие объекты, между которыми устанавливаются референциальные связи, индексируются с учетом связи с их антецедентом. Т.е. для фрагмента текста, показанного на Фиг.1A, будет установлена идентичность объектов "David Cameron", "Prime Minister of the United Kingdom", "he", "his", "Prime Minister" в рамках данного фрагмента или всего текста. Восстановление референциальных связей выполняется на семантических структурах с помощью специальных правил.Then, a language-independent semantic structure 107, which represents the meaning of the original sentence, is constructed. This stage may also include the restoration of referential relations between offers. An example of a referential connection is anaphora - the use of linguistic constructions that can only be interpreted taking into account another, usually the previous, fragment of the text. 1A illustrates a text fragment with referential connections between sentences. These relations at the level of the corresponding semantic structures are established at step 107. In particular, for subsequent indexing, personal, demonstrative pronouns, as well as other objects between which reference relationships are established, are indexed taking into account the connection with their antecedent. Those. for the text fragment shown in Fig. 1A, the identity of the objects "David Cameron", "Prime Minister of the United Kingdom", "he", "his", "Prime Minister" within the given fragment or the whole text will be established. The restoration of referential connections is performed on semantic structures using special rules.
Затем исходное предложение, синтаксическая структура исходного предложения и независимая от языка семантическая структура индексируются 108. Результатом является набор коллекций индексов 109. Индекс обычно может быть представлен в виде таблицы, где каждому значению текстовой характеристики (например, слову, выражению или фразе, отношению между элементами предложения, морфологическое, лексическое, синтаксическое или семантическое свойство, а также и синтаксические и семантические структуры) в документе сопоставлен список адресов их вхождений в этот документ. Согласно одной из реализаций данного изобретения, морфологические, синтаксические, лексические и семантические характеристики, а также структуры и фрагменты структур могут индексироваться так же, как индексируется слово в документе.Then, the original sentence, the syntactic structure of the original sentence, and the language-independent semantic structure are indexed 108. The result is a collection of index collections 109. An index can usually be presented in the form of a table, where each value of a text characteristic (for example, a word, expression or phrase, the relation between elements sentences, morphological, lexical, syntactic or semantic property, as well as syntactic and semantic structures) the list of addresses of their entries is compared in the document tions in this document. According to one implementation of the present invention, morphological, syntactic, lexical and semantic characteristics, as well as structures and fragments of structures, can be indexed in the same way as a word is indexed in a document.
В одной из реализаций данного изобретения индексы могут включать все или, по крайней мере, одно значение морфологических, синтаксических, лексических и семантических характеристик (параметров). Эти значения или параметры генерируются во время двухэтапного семантического анализа, далее описанного более детально. Индексы могут использоваться во многих задачах обработки естественного языка, в частности, для организации семантического поиска. Согласно одной из реализаций данного изобретения, морфологические, синтаксические, лексические и семантические описания структурированы и сохраняются в базе данных. Это множество описаний может включать, по крайней мере, морфологическую модель языка, модели синтаксических конструкций языка, лексико-семантические модели. Согласно одной из реализаций данного изобретения, для анализа сложных языковых структур, распознавания смысла предложения и корректной передачи заключенной в нем информации используется интегральная модель для описания синтаксиса и семантики.In one implementation of the invention, indices may include all or at least one value of morphological, syntactic, lexical, and semantic characteristics (parameters). These values or parameters are generated during the two-stage semantic analysis, which is described in more detail below. Indexes can be used in many tasks of natural language processing, in particular, for organizing semantic search. According to one implementation of the present invention, morphological, syntactic, lexical and semantic descriptions are structured and stored in a database. This set of descriptions may include at least a morphological model of the language, models of syntactic constructions of the language, lexical-semantic models. According to one implementation of the present invention, an integral model is used to describe syntax and semantics for analyzing complex language structures, recognizing the meaning of a sentence and correctly conveying the information contained in it.
Фиг.2 иллюстрирует детальную схему метода анализа предложения согласно одной или нескольким реализациям изобретения. Ссылаясь на Фиг.1 и Фиг.2, лексико-морфологическая структура 222 определяется на этапе анализа 106 исходного предложения 105. Затем производится синтаксический анализ, реализованный в виде двухэтапного алгоритма (грубого синтаксического анализа и точного синтаксического анализа), использующий лингвистические модели и информацию различных уровней для вычисления вероятностей и генерации наиболее вероятной («лучшей») синтаксической структуры.Figure 2 illustrates a detailed diagram of a proposal analysis method according to one or more implementations of the invention. Referring to FIGS. 1 and 2, a lexical-
Грубый синтаксический анализ применяется к исходному предложению и включает, в частности, генерацию всех потенциально возможных лексических значений слов, образующих предложение или словосочетание, всех потенциально возможных отношений между ними, всех потенциально возможных составляющих. Применяются все вероятные поверхностные синтаксические модели для каждого элемента лексико-морфологической структуры, затем строятся и обобщаются все возможные составляющие так, чтобы были представлены все возможные варианты синтаксического разбора предложения. В результате формируется граф обобщенных составляющих 232 для последующего точного синтаксического анализа. Граф обобщенных составляющих 232 включает все потенциально возможные связи в предложении. За грубым синтаксическим анализом следует точный синтаксический анализ на графе обобщенных составляющих, в результате которого из него "извлекаются" одно или несколько синтаксических деревьев 242, представляющих структуру исходного предложения. Построение синтаксического дерева 242 включает лексический выбор для вершин графа и выбор отношений между вершинами графа. Множество априорных и статистических оценок может быть использовано при выборе лексических вариантов и при выборе отношений из графа. Априорные и статистические оценки могут также быть использованы как для оценивания частей графа, так и для оценивания всего дерева. В одной из реализаций одно или несколько синтаксических деревьев строятся или упорядочиваются по убыванию оценки. Таким образом, лучшее синтаксическое дерево может быть построено первым. В этот момент также проверяются и строятся недревесные связи. Если первое синтаксическое дерево оказывается неподходящим, например, из-за невозможности установить необходимые недревесные связи, в качестве лучше рассматривается второе синтаксическое дерево и т.д.Rough parsing is applied to the original sentence and includes, in particular, the generation of all potential lexical meanings of the words that make up the sentence or phrase, all potential possible relationships between them, all potential components. All possible surface syntactic models are applied for each element of the lexical-morphological structure, then all possible components are constructed and generalized so that all possible variants of the syntactic analysis of the sentence are presented. As a result, a graph of
Поскольку упомянутый лексический выбор для вершин графа и выбор отношений между вершинами графа производится на основе априорных и статистических оценок, в одной из реализаций метода не только рассматриваются и оцениваются все варианты, но эти варианты также запоминаются и индексируются на этапе 108 с учетом их интегральных оценок. Т.е. в индексе 109 содержатся не только высоковероятные варианты разбора предложения, но и маловероятные с соответствующим весом, если такой разбор закончился успешно. Веса вариантов разбора используются впоследствии при вычислении оценки релевантности результата поиска.Since the mentioned lexical choice for the vertices of the graph and the choice of relations between the vertices of the graph are made on the basis of a priori and statistical estimates, in one of the implementations of the method not only all options are considered and evaluated, but these options are also stored and indexed at step 108, taking into account their integral estimates. Those. index 109 contains not only highly probable options for parsing a sentence, but also unlikely with an appropriate weight if such a parsing ended successfully. The weights of the parsing options are subsequently used in calculating the relevance score of the search result.
Широкий спектр лексических, грамматических, синтаксических, прагматических, семантических характеристик извлекается на этом этапе анализа 106 и построения семантических структур 107. Например, система может извлекать и хранить лексическую информацию и информацию о принадлежности лексических единиц семантическим классам, информацию о грамматических формах и линейном порядке, о синтаксических отношениях и поверхностных позициях, использовании определенных форм, аспектов, тональностей, таких как, положительная и негативная тональность, глубинных позиций, недревесных связей, семантем и т.д.A wide range of lexical, grammatical, syntactic, pragmatic, semantic characteristics is extracted at this stage of the analysis 106 and the construction of semantic structures 107. For example, the system can extract and store lexical information and information about the lexical units belonging to semantic classes, information about grammatical forms and linear order, about syntactic relations and superficial positions, the use of certain forms, aspects, tonality, such as positive and negative tonality, Lubin products, non-timber connections, semantics, etc.
Также, дополнительно, на этапе 107 может проводиться онтологический анализ с целью извлечения знаний о предметной области, извлечения онтообъектов и онтофактов. Извлечение онтообъектов и онтофактов и фиксация отношений между ними производится, например, с помощью специального вида правил, правил логического вывода и других средств. Эта информация фиксируется в онтологиях 110. Например, возвращаясь к примеру, представленному на Фиг.1A, в онтологии, сохраняется информация о том, что Дэвид Кэмерон является премьер-министром Великобритании, что его адрес - 10 Downing Street, что он выступал на Social Impact Investment Forum, который имел место быть 6 июня 2012 года в Лондоне.Also, at step 107, an ontological analysis can be carried out with the aim of extracting knowledge about the subject area, extracting ontobjects and ontofacts. The extraction of ontobjects and ontofacts and fixing the relations between them is carried out, for example, using a special type of rules, inference rules, and other means. This information is recorded in ontologies 110. For example, returning to the example presented in Fig. 1A, the ontology stores information that David Cameron is the Prime Minister of Great Britain, that his address is 10 Downing Street, that he spoke at Social Impact Investment Forum, which took place on June 6, 2012 in London.
Информация из онтологии привлекается в процессе построения индексов 108. Это позволяет затем, в процессе поиска, находить информацию об объекте, даже если в она выражена в корпусе текстов неявно. Например, информация из фрагмента, представленного на Фиг.1A, если она занесена в онтологию, позволяет дать ответ на вопрос, на какой улице находится резиденция премьер-министра Великобритании, или когда в Великобритании работало коалиционное правительство.Information from the ontology is involved in the process of constructing indexes 108. This then allows, in the search process, to find information about the object, even if it is expressed implicitly in the body of texts. For example, the information from the fragment shown in FIG. 1A, if it is included in the ontology, allows us to answer the question on which street the residence of the British Prime Minister is located, or when the coalition government worked in the UK.
Фиг.3 иллюстрирует пример синтаксического дерева 300, полученного в результате точного синтаксического анализа английского предложения "This boy is smart, he'll succeed in life". Дерево содержит достаточно полную синтаксическую информацию, такую как лексические значения, части речи, синтаксические роли, грамматические значения, синтаксические отношения (позиции), синтаксические модели, типы недревесных связей и т.д. Например, местоимение «he» определяется относящимся к существительному «boy» как субъект анафорической связи 310. "Boy" определяется субъектом 320 глагола "be." "Не" - субъектом 330 глагола "succeed." Прилагательное "smart" оказывается относящимся к существительному "boy" с отношением "control - complement" 340.Figure 3 illustrates an example of a
Ссылаясь на Фиг.2, этот подход двухэтапного синтаксического анализа обеспечивает построение лучшей синтаксической структуры 246 исходного предложения, выбранной из одной или нескольких синтаксических структур. Фиг.3 иллюстрирует схему лучшей синтаксической структуры, полученной в результате синтаксического анализа предложения "This boy is smart, he'll succeed in life." Подход двухэтапного анализа следует принципу целостного и целенаправленного распознавания, то есть гипотезы о структуре части предложения проверяются с помощью доступных лингвистических описаний в рамках структуры всего предложения. При этом подходе отсутствует необходимость анализировать множество тупиковых вариантов разбора. В большинстве случаях такой подход позволяет существенно сократить количество вычислительных ресурсов, необходимых для анализа предложения.Referring to FIG. 2, this two-step parsing approach provides the construction of a
Предложенные методы анализа обеспечивают достижение максимальной точности понимания смысла предложения. Фиг.4 иллюстрирует схему семантической структуры, полученной в результате анализа предложения "This boy is smart, he'll succeed in life." Эта структура содержит всю синтаксическую и семантическую информацию, такую как семантические классы, семантемы (которые не показаны на рисунке), семантические отношения (глубинные позиции), недревесные связи и т.д.The proposed analysis methods ensure maximum accuracy in understanding the meaning of the proposal. Figure 4 illustrates a diagram of the semantic structure obtained by analyzing the sentence "This boy is smart, he'll succeed in life." This structure contains all syntactic and semantic information, such as semantic classes, semantems (which are not shown in the figure), semantic relations (deep positions), non-wood communications, etc.
Независимая от языка семантическая структура предложения представляется в виде ациклического графа (дерева, дополненного недревесными связями), где каждое слово определенного языка заменено универсальными (независимыми от языка) семантическими сущностями, называемыми здесь семантическими классами. Семантический класс - одна из самых важных семантических характеристик, которая может быть извлечена и использована для решения задач семантического поиска, классификации, кластеризации и фильтрации документов, написанных на одном или нескольких языках. Кроме того, информацию в независимых от языка структурах могут быть использованы семантемы, отражающие не только семантическую, но и синтаксическую, грамматическую и пр. зависимую от языка информацию.The language-independent semantic structure of the sentence is represented in the form of an acyclic graph (a tree supplemented by non-wood connections), where each word of a certain language is replaced by universal (language-independent) semantic entities, called here semantic classes. The semantic class is one of the most important semantic characteristics that can be extracted and used to solve the problems of semantic search, classification, clustering and filtering of documents written in one or several languages. In addition, information in language-independent structures can be used semantems that reflect not only semantic, but also syntactic, grammatical and other language-dependent information.
Семантические классы могут быть упорядочены в семантическую иерархию, где "дочерний" семантический класс и его "потомки" наследуют значительную часть свойств "родительского" и всех предшествующих семантических классов ("предков"). Например, семантический класс SUBSTANCE (вещество) является дочерним классом достаточно широкого класса ENTITY (сущность), и в то же время он является "родителем" для семантических классов GAS (газ), LIQUID (жидкость), METAL (металл), WOOD_MATERIAL (дерево как материал), и т.д. Каждый семантический класс в семантической иерархии снабжен глубинной (семантической) моделью. Глубинная модель представляет собой множество глубинных позиций (типов семантических отношений в предложениях). Глубинные позиции отражают семантические роли дочерних составляющих (структурных единиц предложения) в различных предложениях с объектами данного семантического класса в качестве ядра родительской составляющей и возможные семантические классы в качестве заполнителей позиций. Эти глубинные позиции выражают семантические отношения между составляющими, например, "agent" (агенс), "addressee" (адресат), "instrument" (инструмент), "яиапгку"(количество), и т.д. Дочерний класс наследует и подстраивает глубинную модель родительского класса.Semantic classes can be ordered into a semantic hierarchy, where the "child" semantic class and its "descendants" inherit a significant part of the properties of the "parent" and all previous semantic classes ("ancestors"). For example, the semantic class SUBSTANCE (substance) is a daughter class of a fairly wide class ENTITY (entity), and at the same time it is the "parent" for the semantic classes GAS (gas), LIQUID (liquid), METAL (metal), WOOD_MATERIAL (wood as material), etc. Each semantic class in the semantic hierarchy is equipped with a deep (semantic) model. The deep model is a set of deep positions (types of semantic relationships in sentences). Deep positions reflect the semantic roles of child components (structural units of a sentence) in various sentences with objects of a given semantic class as the core of the parent component and possible semantic classes as placeholders. These deep positions express semantic relations between components, for example, "agent" (agent), "addressee" (addressee), "instrument" (instrument), "and" (quantity), etc. The child class inherits and adjusts the deep model of the parent class.
Фиг.5A-5D иллюстрируют фрагмент семантической иерархии, согласно одной или нескольким реализациям данного изобретения. Семантическая иерархия устроена таким образом, что более общие понятия находятся на верхних уровнях иерархии. Например, в случае документов, типы которых проиллюстрированы Фиг.5B и Фиг.5C, семантические классы - PRTNTED_MATTER (печатное издание, 502), SCIENTIFIC_AND_LITERARY_WORK (научные труды и литература, 504), TEXT_AS_PART_OF_CREATIVE_WORK (творческие тексты, 505) и другие являются потомками класса TEXT_OBJECTS_AND_DOCUMENTS (текстовые объекты и документы, 501), а класс PRINTED_MATTER (печатное издание, 502), в свою очередь, является родительским для семантического класса EDITION_AS_TEXT (издание как текста, 503), содержащего классы PERIODICAL (периодические издания) и NONPERIODICAL (непериодические издания), где PERIODICAL (периодические издания) - родительский класс для классов ISSUE (выпуск), MAGAZINE (журнал), NEWSPAPER (газета) и т.д. Подход к делению на классы может отличаться. Данное изобретение в первую очередь основано на использовании понятий, не зависящих от языка.5A-5D illustrate a fragment of a semantic hierarchy, according to one or more implementations of the present invention. The semantic hierarchy is structured in such a way that more general concepts are at the upper levels of the hierarchy. For example, in the case of documents whose types are illustrated in Fig. 5B and Fig. 5C, the semantic classes are PRTNTED_MATTER (print, 502), SCIENTIFIC_AND_LITERARY_WORK (scientific works and literature, 504), TEXT_AS_PART_OF_CREATIVE_WORK (other text classes and others), then TEXT_OBJECTS_AND_DOCUMENTS (text objects and documents, 501), and the class PRINTED_MATTER (print, 502), in turn, is the parent for the semantic class EDITION_AS_TEXT (edition as text, 503), containing the classes PERIODICAL (periodicals) and NONPERIODICAL (non-period) ), where PERIODICAL (periodic Editions) - the parent class for the ISSUE (issue), MAGAZINE (magazine), NEWSPAPER (newspaper), etc. classes. The approach to dividing into classes may vary. This invention is primarily based on the use of concepts that are independent of the language.
Фиг.6 представляет собой схему, иллюстрирующую языковые описания 610, согласно одной из возможных реализаций изобретения. Языковые описания 610 включают морфологические описания 101, синтаксические описания 102, лексические описания, 103 и семантические описания 104. Языковые описания 610 объединены в общее понятие. Фиг.7 представляет собой схему, иллюстрирующую морфологические описания, согласно одной из возможных реализаций изобретения. Фиг.8 иллюстрирует синтаксические описания, согласно одной из возможных реализаций изобретения. Фиг.9 иллюстрирует семантические описания, согласно одной из возможных реализаций изобретения.6 is a diagram illustrating
Ссылаясь на Фиг.6 и Фиг.9, являясь частью семантических описаний 104, семантическая иерархия 910 является характеристикой языковых описаний 610, которая объединяет независимые от языка семантические описания 104 и зависимые от языка лексические описания 103, как отмечено двойной стрелкой 623, и морфологические описания 101 и синтаксические описания 102, как отмечено двойной стрелкой 624. Семантическая иерархия может быть создана единовременно, а затем может быть заполнена для каждого определенного языка. Семантический класс в определенном языке включает лексические значения с соответствующими моделями. Семантические описания 104 не зависят от языка. Семантические описания 104 могут содержать описания глубинных составляющих и могут содержать семантическую иерархию, описания глубинных позиций, систему семантем и прагматических описаний.Referring to Fig.6 and Fig.9, as part of the
Ссылаясь на Фиг.6, в одной из возможных реализаций изобретения морфологические описания 101, лексические описания 103, синтаксические описания 102 и семантические описания 104 связаны. Лексическое значение может иметь несколько поверхностных (синтаксических) моделей, обусловленных семантемами и прагматическими характеристиками. Синтаксические описания 102 и семантические описания 104 также связаны. Например, диатеза синтаксических описаний 102 может рассматриваться как "интерфейс" между зависимыми от языка поверхностными моделями и независимыми от языка глубинными моделями семантического описания 104.Referring to FIG. 6, in one possible implementation of the invention,
Фиг.7 иллюстрирует пример морфологических описаний 101. Как показано, составляющие морфологических описаний 101 включают, но не ограничиваются описаниями словоизменения 710, грамматической системой (граммемами) 720, и описаниями словообразования 730. В одной из возможных реализаций изобретения грамматическая система 720 включает набор грамматических категорий, таких как «Часть речи», «Падеж», «Род», «Число», «Лицо», «Возвратность», «Время», «Вид» и их значения, здесь и далее называемые граммемами. Например, граммемы, означающие части речи, могут включать прилагательное, существительное, глагол и т.д.; граммемы падежа могут включать «Именительный», «Родительный», «Дательный» и т.д.; граммемы рода могут включать «Мужской», «Женский», «Средний» и т.д. Ссылаясь на Фиг.7, описания словоизменения 710 описывают, как начальная форма слова может изменяться в зависимости от падежа, рода, числа, времени и т.д. и включают в широком смысле все возможные формы данного слова. Описания словообразования 730 описывают, какие новые слова могут быть построены с использованием данного слова. Граммемы - единицы грамматической системы 720 и, как показывает ссылка 722 и ссылка 724, граммемы могут быть использованы для построения описаний словоизменения 710 и описаний словообразования 730.7 illustrates an example of
Фиг.8 иллюстрирует синтаксические описания 102. Компоненты синтаксических описаний 102 могут содержать поверхностные модели 810, описания поверхностных позиций 820, описания референциального и структурного управления 856, описания управления и согласования 840, недревесные описания 850 и правила анализа 860. Синтаксические описания 302 используются для построения возможных синтаксических структур предложения для данного исходного языка, учитывая порядок слов, недревесные синтаксические явления (например, согласование, эллипсис и т.д.), референциальный контроль (управление) и другие явления.8 illustrates
Фиг.9 иллюстрирует семантические описания 104 согласно одной из возможных реализаций изобретения. В то время как поверхностные позиции 820 отражают синтаксические отношения и способы их реализации в конкретном языке, глубинные позиции 914 отражают семантические роли дочерних (зависимых) составляющих в глубинных моделях 912. Потому описания поверхностных позиций, и шире - поверхностные модели, могут быть специфичными для каждого конкретного языка. Описания глубинных моделей 920 содержат грамматические и семантические ограничения для заполнителей этих позиций. Свойства и ограничения глубинных позиций 914 и их заполнители в глубинных моделях 912 очень похожи и часто идентичны для различных языков.9 illustrates
Система семантем 930 представляет множество семантических категорий. Семантемы могут отражать лексические, грамматические свойства и атрибуты, а также дифференциальные свойства и стилистические, прагматические и коммуникативные характеристики. Для примера, семантическая категория "DegreeOfComparison" (степень сравнения) может быть использована для описания степеней сравнения, выраженных разными формами прилагательных, например, "easy", "easier" and "easiest". Так, семантическая категория "DegreeOfComparison" может включать семантемы, например "Positive", "ComparativeHigherDegree", "SuperlativeHighestDegree". В качестве другого примера, семантическая категория "RelationToReferencePoint" может быть использована для описания того, в каком линейном порядке - до или после объекта или события находится в предложении ссылка на него, и ее семантемами являются "Previous", "Subsequent". Еще один пример - семантическая категория "EvaluationObjective" может фиксировать наличие объективной оценки, такой как "Bad", "Good" и т.д. Лексические семантемы могут описывать специфические свойства объектов, например "быть плоским" ("being flat") или "быть жидким" ("being liquid") и используются в ограничениях на заполнители глубинных позиций. Классифицирующие дифференциальные семантемы используются для выражения дифференциальных свойств внутри одного семантического класса. Например, в английском языке "парикмахер" для мужчин переводится как "barber", и ему в семантическом классе "HAIRDRESSER" будет приписана семантема "RelatedToMen", в то время как в том же семантическом классе есть "hairdresser" и "hairstylist" и др.The
Прагматические описания 940 служат для того, чтобы в процессе анализа текста фиксировать соответствующую тему, стиль или жанр текста, а также возможно приписать соответствующие характеристики объектам семантической иерархии. Например, "Economic Policy", "Foreign Policy", "Justice", "Legislation", "Trade", "Finance", etc.The
Фиг.10 является схемой, иллюстрирующей лексические описания 103, согласно одной или нескольким реализациям данного изобретения. Лексические описания 103 включают лексико-семантический словарь 1004, который включает в себя набор лексических значений 1012, образующих вместе со своими семантическими классами семантическую иерархию, где каждое лексическое значение может включать, но не ограничивается своей глубинной моделью 912, поверхностной моделью 810, грамматическим значением 1008 и семантическим значением 1010. Лексическое значение может объединять различные дериваты (например, слова, выражения, фразы), выражающие смысл с помощью различных частей речи, различных форм слова, однокоренных слов и пр. В свою очередь, семантический класс объединяет лексические значения близких по смыслу слов и выражений на разных языках.10 is a diagram illustrating
Любой параметр языкового описания 610 - лексические значения, семантические классы, граммемы, семантемы и многое другое извлекается во время исчерпывающего анализа текста, и любой параметр может быть проиндексирован (создан индекс характеристики). Индексация семантических классов востребована во многих задачах, связанных с анализом текстов на естественном языке, таких как семантический поиск, классификация, кластеризация, фильтрация текстов и многие другие. Индексация лексических значений (в отличие от индексации просто слов) позволяет искать не просто слова или словоформы, но лексические значения, т.е. слова в определенном смысловом значении. Синтаксические структуры и семантические структуры также могут индексироваться и сохраняться для использования в семантическом поиске, классификации, кластеризации и фильтрации документов.Any parameter of the 610 language description - lexical meanings, semantic classes, grammes, semanthemes and much more is extracted during exhaustive analysis of the text, and any parameter can be indexed (a characteristic index is created). Indexing of semantic classes is in demand in many tasks related to the analysis of natural language texts, such as semantic search, classification, clustering, text filtering and many others. Indexing lexical meanings (as opposed to indexing just words) allows you to search not just words or word forms, but lexical meanings, i.e. words in a certain semantic meaning. Syntactic structures and semantic structures can also be indexed and stored for use in semantic search, classification, clustering and filtering of documents.
Возвращаясь к Фиг.1, после того как построены универсальная семантическая структура для каждого предложения каждого текста в корпусе текстов, синтаксические и семантические структуры индексируются. Индексируются лексические значения как результат лексического выбора в каждой вершине семантической структуры, каждый параметр морфологических, синтаксических, лексических и семантических описаний может индексироваться таким же образом, как обычные слова. Индекс слов в документе обычно включает, по меньшей мере, одну таблицу, где каждое слово (лексема или словоформа), встретившееся в документе, сопровождается списком номеров или адресов позиций в этом документе. Согласно реализации данного изобретения, индекс строится для всех лексических значений, всех семантических классов, для любых значений морфологических, синтаксических, лексических и семантических параметров. Эти значения параметров генерируются в процессе двухступенчатого синтактико-семантического анализа, и полученные индексы могут быть использованы для достижения более высокой точности и релевантности семантического поиска в корпусах текстов на естественных языках. Например, пользователь может формулировать свой запрос с возможностью поиска предложений с существительными, имеющими свойство "being flat" или "being liquid" или предложений содержащих слова (существительные и/или глаголы), обозначающие какой-либо процесс, например, производства, разрушения, перемещения и т.п.Returning to FIG. 1, after a universal semantic structure is constructed for each sentence of each text in the body of texts, syntactic and semantic structures are indexed. Lexical values are indexed as a result of lexical choice at each vertex of the semantic structure, each parameter of morphological, syntactic, lexical and semantic descriptions can be indexed in the same way as ordinary words. An index of words in a document usually includes at least one table, where each word (token or word form) that appears in the document is accompanied by a list of numbers or addresses of positions in this document. According to the implementation of this invention, the index is built for all lexical values, all semantic classes, for any values of morphological, syntactic, lexical and semantic parameters. These parameter values are generated during a two-stage syntactic-semantic analysis, and the resulting indices can be used to achieve higher accuracy and relevance of the semantic search in cases of texts in natural languages. For example, a user can formulate his request with the ability to search for sentences with nouns that have the property “being flat” or “being liquid” or sentences containing words (nouns and / or verbs) that indicate a process, for example, production, destruction, movement etc.
В одной из возможных реализаций способа изобретения, комбинация из двух, трех или, вообще говоря, N чисел может быть использована для индексирования различных синтаксических, семантических или других параметров. Например, чтобы индексировать поверхностные или глубинные позиции могут быть использованы комбинации из двух чисел - номеров слов, которые в тексте связаны отношением, соответствующим данной позиции. Например, для семантической структуры предложения "This boy is smart, he'll succeed in life", представленной на Фиг.4, глубинная позиция 'Sphere' (450) соотносит лексическое значение "succeed: TO_SUCCEED" (460) с лексическим значением "life:LIVE (470)". Более конкретно, лексическое значение "life:LIVE" заполняет глубинную 'Sphere' глагола "succeed:TO_SUCCEED". Когда строится индекс лексических значений, в соответствии с методом данного изобретения, вхождениям данных лексических значений присваиваются номера в соответствии с их положением в тексте, например, N1 и N2. Когда строится индекс глубинных позиций, каждой глубинной позиции ставится в соответствие список ее встречаемости в документе. Для примера, индекс глубинной позиции 'Sphere' будет, среди прочих, включать пару (N1, N2).In one possible implementation of the method of the invention, a combination of two, three or, generally speaking, N numbers can be used to index various syntactic, semantic or other parameters. For example, in order to index surface or deep positions, combinations of two numbers can be used - word numbers, which in the text are related by the relation corresponding to this position. For example, for the semantic structure of the sentence "This boy is smart, he'll succeed in life" shown in Figure 4, the deep position 'Sphere' (450) correlates the lexical meaning "succeed: TO_SUCCEED" (460) with the lexical meaning "life : LIVE (470). " More specifically, the lexical meaning “life: LIVE” fills the deep “Sphere” of the verb “succeed: TO_SUCCEED”. When the index of lexical values is constructed, in accordance with the method of the present invention, the occurrences of these lexical values are assigned numbers in accordance with their position in the text, for example, N1 and N2. When the index of deep positions is built, each deep position is assigned a list of its occurrences in the document. For example, the 'Sphere' deep position index will, among others, include a pair (N1, N2).
Т.к. индексируются не только слова, но их лексические значения, семантические классы, синтаксические и семантические отношения, любые другие элементы синтаксических и семантических структур, становится возможным искать контекст не только по ключевым словам, но также контекст, содержащий лексические значения, значения, принадлежащие определенным семантическим классам, контекст, включающий элементы с определенными синтаксическими и/или семантическими свойствами и/или морфологическими свойствами или наборами (комбинациями) таких свойств. Также, могут быть найдены предложения с недревесными синтаксическими явлениями, например, эллипсис, сочинение и др. Т.к. можно искать семантические классы, становится возможным искать семантически связанные слова и понятия.Because not only words are indexed, but their lexical meanings, semantic classes, syntactic and semantic relations, any other elements of syntactic and semantic structures, it becomes possible to search for a context not only by keywords, but also a context containing lexical meanings, meanings belonging to certain semantic classes , a context that includes elements with certain syntactic and / or semantic properties and / or morphological properties or sets (combinations) of such properties. Also, sentences with non-wood syntactic phenomena, for example, ellipsis, composition, etc. can be found. you can search for semantic classes, it becomes possible to search for semantically related words and concepts.
Также, может осуществляться поиск фрагментов синтаксических и/или семантических структур. Результатом поиска могут быть предложения или абзацы, или другие фрагменты, в зависимости от выбора пользователем соответствующей опции. Т.к. все предложения в каждом корпусе анализируются, и затем сохраняются вместе с результатами их синтаксического и семантического анализа, синтаксические и семантические структуры могут быть предъявлены пользователю также и в графическом виде.Also, fragments of syntactic and / or semantic structures can be searched. The search result may be sentences or paragraphs, or other fragments, depending on the user's choice of the corresponding option. Because all sentences in each case are analyzed and then stored together with the results of their syntactic and semantic analysis, syntactic and semantic structures can also be presented to the user in graphical form.
Наиболее распространенным том поиска в обычных поисковых системах является поиск по ключевым словам. Но возникает проблема, если одно или несколько ключевых слов являются многозначными, например, в английском языке "bank" может означать 1) финансовое учреждение, банк; 2) хранилище, репозиторий; 3) берег реки или озера. Есть и другие, менее частотные значения "bank". В таком случае, в ответ на запрос по такому ключевому слову пользователь получает множество ненужных ему результатов, т.к. у пользователя нет возможности сообщить поисковой системе, какое именно из возможных значений его интересует. Например, большинство найденных результатов обычного поиска по ключевому слову "apple" относятся к названию компьютерной корпорации, поскольку она гораздо чаще встречается в интернет ресурсах, и практически невозможно найти документы с упоминанием "apple" как фрукт (они окажутся на самых дальних страницах) без добавления дополнительных слов (например, "fruit") в запрос или исключения специальным образом компьютерного лексикона. В реализации данного изобретения пользователь может для ключевого слова указать одно из возможных лексических значений. Например, на Фиг.11A показан интерфейс пользователя поисковой системы, содержащий окно запроса 1101 и кнопку "Найти" 1102, и кроме того, показано всплывающее окно 1103 со списком лексических значений слова "центр", которые показываются пользователю для выбора подходящего значения при наведении курсора на слово. Пользователь может увидеть, что слово "центр" имеет несколько значений, находящихся в разных семантических классах, и для выбора релевантного в поле запроса требуется на нужном кликнуть кнопкой мыши. Существуют разные способы специфицировать лексическое значение, например, при помощи указания семантического класса. Другой способ состоит в снабжении каждого лексического значения толкованием, по типу статьи в толковом словаре, как показано на Фиг.11A, или указание наиболее близких к данному значению синонимов.The most common search volume in regular search engines is keyword search. But a problem arises if one or more keywords are ambiguous, for example, in English, “bank” can mean 1) a financial institution, a bank; 2) storage, repository; 3) the shore of a river or lake. There are other, less frequent, bank values. In this case, in response to a request for such a keyword, the user receives many unnecessary results, because the user does not have the opportunity to tell the search engine which of the possible values he is interested in. For example, most of the results of a regular search for the keyword "apple" refer to the name of a computer corporation, since it is much more common in Internet resources, and it is almost impossible to find documents mentioning "apple" as a fruit (they will appear on the farthest pages) without adding additional words (for example, "fruit") in a request or exceptions in a special way of a computer vocabulary. In the implementation of the present invention, the user can specify one of the possible lexical meanings for the keyword. For example, FIG. 11A shows a search engine user interface comprising a
Пользователь может выбрать любое возможное лексическое значение слова для поиска, это значение становится выбранным и помечается, например, как показано на Фиг.11B. Если запрос включает несколько слов, для любого из них или для всех могут быть указаны лексические значения из соответствующих семантических классов.The user can select any possible lexical meaning of the word to search, this value becomes selected and marked, for example, as shown in Fig.11B. If the query includes several words, lexical meanings from the corresponding semantic classes can be indicated for any of them or for all.
Независимо от того, специфицирует ли пользователь слова запроса, пользователь может в найденном фрагменте, например, по клику на правую кнопку мыши, увидеть, в каком лексическом значении встречается слово в найденном фрагменте, его семантический класс, а также некоторые другие параметры, например, синонимы, синтаксическую модель, сочетаемость, примеры словосочетаний с данным словом и т.д. Пример такого запроса показан на Фиг.11C.Regardless of whether the user specifies the query words, the user can in the found fragment, for example, by clicking on the right mouse button, see in what lexical meaning the word occurs in the found fragment, its semantic class, as well as some other parameters, for example, synonyms , syntactic model, compatibility, examples of phrases with a given word, etc. An example of such a request is shown in FIG. 11C.
Используя для поиска ключевые слова в обычных поисковых системах, пользователь явно или неявно может использовать булевские операторы, такие как AND(и), OR(или) и NOT(не) для создания своего запроса. Однако он не может выбрать, в каком лексическом значении следует искать заданное слово. Метод настоящего изобретения позволяет пользователю применять указанные булевские операторы AND(и), OR(или) и NOT(не) к лексическим значениям, т.е. ключевым словам, для которых указаны соответствующие семантические классы.Using search keywords in conventional search engines, the user can explicitly or implicitly use Boolean operators such as AND (and), OR (or) and NOT (not) to create their own query. However, he cannot choose in which lexical meaning the given word should be sought. The method of the present invention allows the user to apply the indicated Boolean operators AND (and), OR (or) and NOT (not) to lexical values, i.e. keywords for which the corresponding semantic classes are indicated.
Порядок слов может быть существенен или нет в соответствии с выбранной пользователем опцией, предоставляемой пользователю в списке опций, например, 1104. Другая опция, выбираемая пользователем, позволяет ограничивать расстояние между объектами запроса. Например, пользователь может использовать оператор W/n для поиска документов, содержащих не более n слов между объектами запроса. В одной из реализаций пользователь может использовать его явно, в других - выбрать расстояние в качестве опции.The word order can be significant or not in accordance with the option selected by the user provided to the user in the list of options, for example, 1104. Another option selected by the user allows you to limit the distance between the objects of the request. For example, a user can use the W / n operator to search for documents containing no more than n words between query objects. In one implementation, the user can use it explicitly, in others - choose the distance as an option.
Дополнительная возможность, присущая семантическому поиску в отличие от обычного поиска по ключевым словам, состоит в поиске по синонимам. Синонимы - э то слова, имеющие тот же или очень близкий смысл. В семантической иерархии, где все синонимичные лексические значения, например, "food", "meal", "alimentary" находятся в одном семантическом классе и имеют те же или близкие семантические характеристики - семантемы. Тогда, если пользователь включает опцию "Искать синонимы" (1104), и хочет найти "food", то сначала определяется его лексическое значение, семантический класс, и как результат, могут быть найдены документы, где встречаются "meal" или "alimentary" или, возможно, другие наиболее репрезентативные представители семантического класса FOOD. В таких случаях, результаты поиска могут быть более или менее релевантны, более или менее близки к искомому результату. Может быть введена мера релевантности, например, основанная на оценке "близости" лексического значения из запроса к найденному синониму, и, принимая во внимание контекст, порядок слов и другие факторы, она может быть распространена на предложение, фрагмент и т.п.An additional feature inherent in semantic search, in contrast to the usual keyword search, is to search by synonyms. Synonyms are words that have the same or very close meaning. In the semantic hierarchy, where all synonymous lexical meanings, for example, "food", "meal", "alimentary" are in the same semantic class and have the same or similar semantic characteristics - semantems. Then, if the user turns on the option “Search for synonyms” (1104) and wants to find “food”, then its lexical meaning, semantic class is determined first, and as a result, documents can be found where “meal” or “alimentary” or perhaps the other most representative representatives of the semantic class FOOD. In such cases, the search results may be more or less relevant, more or less close to the desired result. A measure of relevance can be introduced, for example, based on an assessment of the "proximity" of the lexical meaning from the query to the found synonym, and, taking into account the context, word order and other factors, it can be extended to a sentence, fragment, etc.
Еще один способ специфицировать лексические значения слов, участвующих в запросе, в случае, если запрос представлен связной фразой или предложением - его полный синтаксический и семантический анализ. Многие слова в языке имеют несколько различающихся смыслов, значений. Некоторые слова в запросе тоже могут иметь различные смыслы, выражаемые в различных лексических значениях. Чтобы определить, в каком именно лексическом значении следует искать слово, представленное в запросе, выполняют полный синтаксический и семантический анализ запроса, представленного предложением или словосочетанием, чтобы определить лексические значения слов, составляющих запрос. Исчерпывающий синтаксический анализ включает грубый и точный анализ. Во время грубого анализа определяются все потенциально возможные значения для каждого слова, во время точного анализа, основываясь на лингвистических описаниях, правилах языка, сочетаемости, на анализе контекста, статистике и др. факторах, выбираются наиболее релевантные лексические значения. Таким образом, как результат лексического выбора во время точного анализа, для каждого слова в запросе пользователя определяется его семантический класс. Фиг.11D иллюстрирует пример интерфейса с запросом пользователя в форме фразы, где пользователь может проверить, в каком именно лексическом значении слова будет искаться в документах корпуса текстов. Найденные документы могут содержать все (или большинство) слов запроса в выбранных значениях. Порядок слов может быть существенен или нет в соответствии с выбранной пользователем опцией. В одной из реализаций порядок слов может быть обязательным по умолчанию. Поисковая система также может искать документы с произвольным порядком слов запроса, а также с указанием максимальной дистанции между ними, но в таком случае оценка релевантности для найденного документа может быть ниже. В другой реализации пользователю предоставляется выбор опции поиска - принимать во внимание порядок слов или нет.Another way to specify the lexical meanings of the words involved in a query, if the query is represented by a coherent phrase or sentence, is its full syntactic and semantic analysis. Many words in a language have several different meanings and meanings. Some words in the query can also have different meanings, expressed in different lexical meanings. To determine in which lexical meaning the word represented in the query should be searched, a complete syntactic and semantic analysis of the query represented by the sentence or phrase is performed to determine the lexical meaning of the words making up the query. Comprehensive parsing includes crude and accurate parsing. During a crude analysis, all potential meanings for each word are determined, during an accurate analysis, based on linguistic descriptions, language rules, compatibility, context analysis, statistics and other factors, the most relevant lexical meanings are selected. Thus, as a result of lexical choice during accurate analysis, for each word in the user's query, its semantic class is determined. 11D illustrates an example of an interface with a user request in the form of a phrase, where the user can check which lexical meaning of the word will be searched in the documents of the text corpus. Documents found can contain all (or most) of the query words in the selected values. The word order can be significant or not in accordance with the option selected by the user. In one implementation, the word order may be required by default. The search system can also search for documents with an arbitrary word order of the query, as well as indicating the maximum distance between them, but in this case, the relevance score for the found document may be lower. In another implementation, the user is given the choice of search option - to take into account the word order or not.
На Фиг.12A-12C показаны примеры пользовательских запросов, сформулированных в виде вопросов на естественном языке. На Фиг.12A показан пример запроса, отвечающего на вопрос "What countries were discovered?" (Какие страны были открыты?). Запрос на естественном языке анализируется тем же анализатором, что и тексты корпуса, и транслируется в семантический запрос. В окне запроса 1210 показан запрос на естественном языке, а в терминах семантических классов и отношений он выглядит, например, как "discover [Object:"COUNTRY"]", и означает, что система семантического поиска ищет предложения с английским глаголом "discover" и объектом, принадлежащим семантическому классу COUNTRY. Результаты поиска показаны в окне 1220.12A-12C show examples of user queries formulated as questions in a natural language. 12A shows an example of a query that answers the question "What countries were discovered?" (Which countries were open?). The query in natural language is analyzed by the same analyzer as the texts of the corpus, and is translated into a semantic query. The
Другой пример семантического запроса показан на Фиг.12B, он отвечает на вопрос "What can be made from milk?" (Что можно приготовить из молока?). Он также сформулирован на естественном языке и транслируется в семантический запрос "CREATION_VERBS [Object:<Noun>, Fabricative: milk]", где "CREATION_VERBS" - семантический класс глаголов, обозначающих процесс создания, таких "to make" (делать), "to produce" (производить), "to manufacture" (изготовлять), "to confect" (изготовлять) и др. Любой из этих глаголов, принадлежащих семантическому классу "CREATION_VERBS" может быть найден в текстах корпуса. "Fabricative" означает глубинную (семантическую) позицию "raw material" (сырье), из которого что-то производят, сырьем в данном запросе является "milk" (молоко). Таким образом, результатом должно быть существительное (<Noun>), заполняющее семантическую позицию "Object" (Объект) в предложении. Результаты поиска показаны в окне 1220.Another example of a semantic query is shown in Fig. 12B, it answers the question "What can be made from milk?" (What can be prepared from milk?). It is also formulated in natural language and translated into the semantic query "CREATION_VERBS [Object: <Noun>, Fabricative: milk]", where "CREATION_VERBS" is a semantic class of verbs that indicate the creation process, such "to make" (to do), "to produce "," to manufacture "," to confect ", etc. Any of these verbs belonging to the semantic class" CREATION_VERBS "can be found in the body texts. "Fabricative" means the deep (semantic) position of the "raw material" from which something is produced; the raw material in this query is "milk". Thus, the result should be a noun (<Noun>) filling in the semantic position of "Object" in the sentence. Search results are shown in
Еще один пример запроса к системе семантического поиска показан на Фиг.12C. Содержательно, запрос означает "What do the people collect?" (Что коллекционируют люди?). В терминах семантического запроса, показанный в окне 1310 запрос выглядит так: "collect[$Subject:people, $Object_Direct:<Noun>]". Система семантического поиска ищет предложения с глаголом "collect" (коллекционировать) и словом "реор1е"(люди), которое заполняет поверхностную позицию "Subject". Целью поиска являются существительные (noun или nouns) в роли прямого объекта глагола "collect". Результаты поиска показаны в окне 1220. В одной из реализаций изобретения, все морфологические формы слов, указанных в запросе, принимаются во внимание, и все морфологические формы могут быть найдены. Ограничения на морфологические формы могут включаться в запрос в виде ограничений на грамматические значения, и могут быть показаны, например, в угловых скобках <>. Индекс, полученный в соответствии с данными методами, является составной частью системы семантического поиска.Another example of a query to a semantic search system is shown in FIG. 12C. Meaningfully, the query means "What do the people collect?" (What do people collect?). In terms of a semantic query, the query shown in
Различные реализации настоящего изобретения также включают способ семантического поиска, при котором пользователь может формулировать свой вопрос на естественном языке. Тот же анализатор, который используется для синтактико-семантического анализа корпуса текстов, применяется для синтактико-семантического анализа вопроса пользователя, распознается его синтаксическая структура, строится независимая от языка семантическая структура, и таким образом достигается "распознавание" системой смысла предложения. Построенная семантическая структура затем транслируется язык запросов поисковой системы. Например, упомянутые вопросы "What coun tries were discovered?" или "What can be made from milk?" изначально сформулированы пользователем на естественном языке, проанализированы анализатором, и транслированы в семантический запрос. Если запрос формулируется в виде вопросительного предложения, то в результате анализа строится структура предложения, которое может являться потенциальным ответом на заданный вопрос, в этом случае она содержит "лакуны.Various implementations of the present invention also include a semantic search method in which a user can formulate his question in a natural language. The same analyzer, which is used for syntactic-semantic analysis of the corpus of texts, is used for syntactic-semantic analysis of the user's question, its syntactic structure is recognized, a semantic structure independent of the language is built, and in this way the system recognizes the meaning of the sentence. The constructed semantic structure is then translated into the search engine query language. For example, the mentioned questions "What coun tries were discovered?" or "What can be made from milk?" originally formulated by the user in a natural language, analyzed by the analyzer, and translated into a semantic query. If the request is formulated in the form of an interrogative sentence, then as a result of the analysis, the structure of the sentence is constructed, which may be a potential answer to the asked question, in this case it contains "gaps."
Метод настоящего изобретения позволяет создавать индексы синтаксических и семантических структур, хранимых в виде дерева или графа. Искомые структуры описываются в поисковом запросе при помощи одного или более искомых параметров. Один или более параметров могут быть не определены, могут быть заданы при помощи переменных, могут быть заданы как диапазон возможных значений этих переменных. Другими словами, запрос для поиска может быть представлен предложением на естественном языке с "лакунами". Лакуны могут покрываться или включать как отдельные слова, так и словосочетания, фразы, группы слов, образующие связанную составляющую (конституенту), вложенное (придаточное) предложение и т.п. Результатом запроса и поиска являются варианты заполнения этих лакун в текстах, имеющихся в размеченном корпусе текстов. Для показа пользователю они могут быть отсортированы по частоте встречаемости.The method of the present invention allows the creation of indices of syntactic and semantic structures stored in a tree or graph. The desired structures are described in the search query using one or more of the desired parameters. One or more parameters can be undefined, can be set using variables, can be set as a range of possible values of these variables. In other words, a search query can be represented by a natural language sentence with “gaps”. Lacunae can be covered or include both single words and phrases, phrases, groups of words that form a related component (constituent), embedded (subordinate) sentence, etc. The result of the query and search are options for filling these gaps in the texts available in the marked up body of texts. To be shown to the user, they can be sorted by frequency of occurrence.
Фиг.13 демонстрирует один пример запроса, использующего переменную для обозначения лакуны в искомом предложении. Запрос13 shows one example of a query using a variable to indicate a gap in a search term. Inquiry
[$Subject: […[people]]] think[$ Subject: [... [people]]] think
демонстрирует возможность поиска предложений определенной структуры. В данной реализации переменная, например, [$Subject: […[people]]] используется для описания искомого предложения, включающего именную группу с ядром "people", заполняющую синтаксическую (поверхностную) позицию "Subject" и глагол "think" в любой форме.demonstrates the ability to search for proposals of a certain structure. In this implementation, a variable, for example, [$ Subject: [... [people]]] is used to describe the search sentence, including a noun phrase with the core "people" filling in the syntactic (surface) position "Subject" and the verb "think" in any form .
Метод делает возможным поиск широкого спектра сущностей, таких как отношения, недревесные связи, лексические классы, семантические классы и т.д. Эти сущности - слова и словосочетания могут быть найдены по грамматическим признакам, лексическим свойствам, синтаксическим и/или семантическим свойствам. Клозы (предложения) могут быть найдены по любым - лексическим, синтаксическим, семантическим признакам.The method makes it possible to search for a wide range of entities, such as relationships, non-wood relationships, lexical classes, semantic classes, etc. These entities - words and phrases can be found by grammatical characteristics, lexical properties, syntactic and / or semantic properties. Klose (sentences) can be found by any - lexical, syntactic, semantic features.
Используя методы настоящего изобретения, могут быть реализованы очень специфичные типы поиска. Например, можно искать по свойствам узлов синтаксической или семантической структуры - грамматические значения, по суперклассу (классу со всеми потомками), по семантемам (например, "время" безотносительно к форме выражения). Другая возможность поиска состоит в поиске отношений по свойствам. Например, возможен поиск поверхностных или глубинных позиций с проверкой (или без проверки) наследования, анафорических связей, или любого количества узлов с указанными свойствами. Дополнительно, возможно извлечение значений этих признаков в найденных результатах.Using the methods of the present invention, very specific search types can be implemented. For example, you can search by the properties of the nodes of the syntactic or semantic structure - grammatical values, by superclass (a class with all descendants), by semantems (for example, "time" regardless of the form of expression). Another search option is to search for relationships by property. For example, it is possible to search for surface or deep positions with verification (or without verification) of inheritance, anaphoric relationships, or any number of nodes with the specified properties. Additionally, it is possible to extract the values of these characteristics in the results found.
Существенно, что поскольку поисковый запрос может транслироваться в семантическую, независимую от конкретного языка форму, поиск может быть выполнен в текстах на разных языках, на ресурсах, включающих корпуса разных языков. Таким образом, пользователь может получать информацию, представленную на всех ресурсах, независимо от языка запроса. Результат поиска может быть предъявлен пользователю на языке ресурса (как он представлен в оригинале) или результат поиска может быть транслирован на язык запроса при помощи системы машинного перевода.It is significant that since a search query can be translated into a semantic, language-independent form, the search can be performed in texts in different languages, on resources, including corpus of different languages. Thus, the user can receive information presented on all resources, regardless of the language of the request. The search result can be presented to the user in the language of the resource (as presented in the original) or the search result can be translated into the query language using a machine translation system.
В некоторой реализации, для поиска могут быть использованы не только один или более индексов, но и формальные модели, представляющие знания об одной или более предметных областях. Например, онтологии могут использоваться как модели областей. Онтология может включать, среди прочего, множества понятий и сущностей, относящихся к предметной области и отношений между ними. Они используются для моделирования предметной области и логического вывода.In some implementation, not only one or more indices can be used for the search, but also formal models representing knowledge of one or more subject areas. For example, ontologies can be used as models of regions. An ontology may include, among other things, a multitude of concepts and entities related to the subject area and the relationships between them. They are used for domain modeling and inference.
Фиг.14 представляет блок-схему действий поисковой системы при выполнении семантического поиска в размеченном, т.е. подвергнутом исчерпывающему семантико-синтаксическому анализу, корпусе текстов. Запрос на поиск 1410 подвергается исчерпывающему семантико-синтаксическому анализу, аналогично тому, как это делается для каждого предложения корпуса текстов согласно этапам 106 и 107, метода, представленного на Фиг.1. Так, семантико-синтаксический анализ запроса включает лексический анализ с использованием морфологических 101 и лексических 103 описаний, затем производится синтаксический анализ с использованием синтаксических 102 и семантических 104 описаний, в ходе которого, в частности, генерируются все потенциально возможные лексические значения слов, образующих предложение или словосочетание и все потенциально возможные отношений между ними. В результате выбирается наиболее вероятная синтаксическая структура, фиксируются лексические значения и соответствующие и семантические классы всех элементов предложения.FIG. 14 is a flowchart of a search engine performing a semantic search in a markup, i.e. subjected to exhaustive semantic-syntactic analysis, the corpus of texts. The
Строится семантическая структура запроса, которая, наряду с синтаксической структурой предложения может использоваться для формальных заключений с использованием данных, хранящихся в онтологиях 1480. Например, на вопрос "Кто выиграл на римскую Олимпиаду в фехтовании?" должно быть найдено, в частности, предложение "Петров стал Олимпийским чемпионом в фехтовании в 1960 году". Унификация семантических структур производится с помощью трансформационных правил, правил онтологии и сопоставления данных онтологии о том, что "римская Олимпиада была в 1960 году", "в 1960 году Олимпиада проводилась в Риме", "римская Олимпиада" = "Олимпиада в Риме", "выиграть Олимпиаду" = "стать Олимпийским чемпионом". А также, " Олимпиада в Риме" = "летние Олимпийские игры 1960 года".The semantic structure of the query is constructed, which, along with the syntactic structure of the sentence, can be used for formal conclusions using the data stored in the ontologies of 1480. For example, to the question "Who won the Roman fencing Olympiad?" must be found, in particular, the sentence "Petrov became the Olympic champion in fencing in 1960." The unification of semantic structures is carried out with the help of transformational rules, ontology rules and ontology data comparison that "the Roman Olympics were in 1960", "the 1960 Olympics were held in Rome", "Roman Olympics" = "Olympics in Rome", " win the Olympics "=" become an Olympic champion. " And also, "Olympics in Rome" = "1960 Summer Olympics."
Онтология может включать описание, например, сущностей, классов (концептов, понятий), атрибутов, отношений и онтофактов. Например, сущности являются экземплярами или объектами классов, которые представляют собой базовый уровень понятий (объектов). Также, классы могут представлять множества, коллекции, концепты, классы в программировании, типы объектов, виды (сорта) вещей и т.п. Примерами классов могут быть Person (персоны), Geographical Object (географические объекты), Company (компании), Organization (организации), Numerical Value (численные значения) и т.д.An ontology may include a description, for example, of entities, classes (concepts, concepts), attributes, relationships, and ontofacts. For example, entities are instances or objects of classes that represent the basic level of concepts (objects). Also, classes can represent sets, collections, concepts, classes in programming, types of objects, types (types) of things, etc. Examples of classes can be Person (geographic objects), Company (companies), Organization (organizations), Numerical Value (numerical values), etc.
Атрибуты выражают, аспекты, свойства, признаки, характеристики или параметры, которые могут иметь объекты или классы. Отношения есть способ выражения отношений сущностей и классов друг к другу и между собой. Некоторые из событий могут вызывать изменение атрибутов или отношений. Онтологии кодируются с использованием специальных языков онтологии.Attributes express aspects, properties, attributes, characteristics, characteristics or parameters that objects or classes may have. Relations are a way of expressing the relations of entities and classes to each other and to each other. Some of the events may cause a change in attributes or relationships. Ontologies are encoded using special ontology languages.
Упомянутые объекты онтологии - сущности, классы (концепты), атрибуты, отношения, онтофакты могут быть включены в поисковый запрос. Могут быть использованы разные способы для спецификации слов, включенных в запрос, как онтологических объектов. Например, в запросе "Dakota" может означать, по меньшей мере, локацию, персону или организацию. В одной реализации, такие объекты могут быть помечены явно, например, "Dakota%person". В другой реализации, если включена опция "Искать в онтологии", пользователь может увидеть меню для выбора типа онтологического объекта, как показано, например, на Фиг.14A. В еще одной реализации, тип онтологического объекта может быть определен автоматически. Например, на основе анализа запроса, прагматического или контекстного анализа предыдущих запросов, темы корпуса, выбранного для поиска, информации о пользователе и т.д. Например, для запроса "(apple OR НТС) AND NOT litigation" система может проанализировать тематику слов в запросе и сделать вывод, что, с большей вероятностью, для "apple" следует выбрать соответствующее лексическое значение в семантическом классе APPLE_COMPUTER_FIRM, нежели в классах "FRUIT" или "FRUIT_TREE", а если включена опция "Искать в онтологии", то система автоматически выберет тип объекта - Company и пользователь сможет увидеть информацию из онтологии, имеющую отношение к компании Apple. В случае неоднозначности, пользователю может быть задано один-два вопроса для уточнения типа объекта.The mentioned ontology objects - entities, classes (concepts), attributes, relationships, ontofacts can be included in the search query. Different methods can be used to specify the words included in the query as ontological objects. For example, in a query, “Dakota” may mean at least a location, person, or organization. In one implementation, such objects may be marked explicitly, for example, "Dakota% person". In another implementation, if the “Search in ontology” option is enabled, the user can see a menu for selecting the type of ontology object, as shown, for example, in FIG. 14A. In yet another implementation, the type of ontological object can be determined automatically. For example, based on an analysis of a request, a pragmatic or contextual analysis of previous requests, a topic of a corpus selected for search, user information, etc. For example, for the query "(apple OR НТС) AND NOT litigation", the system can analyze the subject matter of the words in the query and conclude that it is more likely that for the "apple" one should choose the corresponding lexical value in the semantic class APPLE_COMPUTER_FIRM than in the classes "FRUIT "or" FRUIT_TREE ", and if the" Search in ontology "option is enabled, the system will automatically select the type of object - Company and the user will be able to see information from the ontology related to Apple. In case of ambiguity, the user may be asked one or two questions to clarify the type of object.
Теперь, учитывая варианты искомых семантических и синтаксических структур и данные полученные из онтологии 1480, системой может быть составлен исчерпывающий семантический запрос к индексам 1460 соответствующего корпуса текстов 1470. Поскольку смысл (семантика) исходного вопроса зафиксирован, системой в процессе поиска 1440 ищутся лексические значения и семантические структуры предложений, содержащих ответ на искомый вопрос с учетом возможных вариантов формулировки вопроса и различных синтаксических и лексических вариантов ответа. Также, поиск производится с учетом анафорических и других референциальных связей между предложениями, устанавливаемых при построении семантических структур анализируемых предложений на этапе 107 (Фиг.1A), так что система находит фрагменты текста, где объект поиска выражен неявно, при помощи отсылок, как-то личные, указательные, относительные местоимения, референтные именные группы, нулевые группы, замещения и т.п.Now, taking into account the variants of the desired semantic and syntactic structures and the data obtained from the
Каждый найденный фрагмент текста может быть формально оценен 1450 по степени релевантности запросу. В частности, в одной из реализаций изобретения, оценка релевантности 1450 учитывает индексирование лексических значений с вероятностью при построении индекса 109, как это было описано при описании этапа 108, изображенного на Фиг.1. Таким образом, результаты поиска 1490 могут быть ранжированы по релевантности и показаны пользователю в соответствующем порядке.Each piece of text found can be formally rated 1450 according to the degree of relevance to the request. In particular, in one implementation of the invention, the
На Фиг.15 приведен возможный пример вычислительного средства 1500, которое может быть использовано для внедрения настоящего изобретения, осуществленного так, как было описано выше. Вычислительное средство 1500 включает в себя, по крайней мере, один процессор 1502, соединенный с памятью 1504. Процессор 1502 может представлять собой один или более процессоров, может содержать одно, два или более вычислительных ядер. Память 1504 может представлять собой оперативную память (ОЗУ), а также содержать любые другие типы и виды памяти, в частности, устройства энергонезависимой памяти (например, флэш-накопители) и постоянные запоминающие устройства, например, жесткие диски и т.д. Кроме того, может считаться, что память 1504 включает в себя аппаратные средства хранения информации, физически размещенные где-либо еще в составе вычислительного средства 1500, например, кэш-память в процессоре 1502, память, используемую в качестве виртуальной и хранимую на внешнем либо внутреннем постоянном запоминающем устройстве 1510.15 is a possible example of computing means 1500 that can be used to implement the present invention, implemented as described above. Computing means 1500 includes at least one
Вычислительное средство 1500 также обычно имеет некоторое количество входов и выходов для передачи информации вовне и получения информации извне. Для взаимодействия с пользователем вычислительное средство 1500 может содержать одно или более устройств ввода (например, клавиатура, мышь, сканер и т.д.) и устройство отображения 1508 (например, жидкокристаллический дисплей). Вычислительное средство 1500 также может иметь одно или более постоянных запоминающих устройств 1510, например, привод оптических дисков (CD, DVD или другой), жесткий диск, ленточный накопитель. Кроме того, вычислительное средство 1500 может иметь интерфейс с одной или более сетями 1512, обеспечивающими соединение с другими сетями и вычислительными устройствами. В частности, это может быть локальная сеть (LAN), беспроводная сеть Wi-Fi, соединенные со всемирной сетью Интернет или нет. Подразумевается, что вычислительное средство 1500 включает подходящие аналоговые и/или цифровые интерфейсы между процессором 1502 и каждым из компонентов 1504, 1506, 1508, 1510 и 1512.Computing means 1500 also typically has a number of inputs and outputs for transmitting information to the outside and receiving information from the outside. To interact with a user, computing means 1500 may comprise one or more input devices (e.g., a keyboard, mouse, scanner, etc.) and a display device 1508 (e.g., a liquid crystal display). Computing means 1500 may also have one or more read-
Вычислительное средство 1500 работает под управлением операционной системы 1514 и выполняет различные приложения, компоненты, программы, объекты, модули и т.д., указанные обобщенно цифрой 1516.Computing tool 1500 is running an
Вообще программы, исполняемые для реализации способов, соответствующих данному изобретению, могут являться частью операционной системы или представлять собой обособленное приложение, компоненту, программу, динамическую библиотеку, модуль, скрипт, либо их комбинацию.In general, programs executed to implement the methods of this invention may be part of the operating system or may be a stand-alone application, component, program, dynamic library, module, script, or a combination thereof.
Настоящее описание излагает основной изобретательский замысел авторов, который не может быть ограничен теми аппаратными устройствами, которые упоминались ранее. Следует отметить, что аппаратные устройства, прежде всего, предназначены для решения узкой задачи. С течением времени и с развитием технического прогресса такая задача усложняется или эволюционирует. Появляются новые средства, которые способны выполнить новые требования. В этом смысле следует рассматривать данные аппаратные устройства с точки зрения класса решаемых ими технических задач, а не чисто технической реализации на некой элементной базе.The present description sets forth the main inventive concept of the authors, which cannot be limited to those hardware devices that were mentioned earlier. It should be noted that hardware devices are primarily designed to solve a narrow problem. Over time and with the development of technological progress, such a task becomes more complicated or evolves. New tools are emerging that are able to fulfill new requirements. In this sense, these hardware devices should be considered from the point of view of the class of technical problems they solve, and not purely technical implementation on a certain elemental base.
Claims (40)
- предварительно осуществляют семантико-синтаксический анализ корпуса текстов с определением значений лингвистических параметров предложений, включая сопоставление, по крайней мере, одному слову предложения некоторого множества возможных лексических значений - каждое с соответствующей оценкой вероятности вхождения этого лексического значения в предложение, их сохранением в памяти и построением семантических структур предложений, составляющих тексты корпуса текстов, и их последующим индексированием и сохранением индексов,
- осуществляют поиск фрагментов в предварительно проиндексированных корпусах электронных текстов, удовлетворяющих запросу,
- производят оценку релевантности результатов,
- ранжируют результаты поиска в соответствии со степенью релевантности.1. The method of organizing a search in electronic text cases for a computer system, which consists in the fact that at least once the following sequence of actions is performed:
- preliminarily carry out a semantic-syntactic analysis of the corpus of texts with determination of the values of the linguistic parameters of sentences, including matching at least one word of a sentence with a certain set of possible lexical meanings - each with a corresponding assessment of the probability of occurrence of this lexical meaning in a sentence, their storage in memory and construction semantic structures of sentences that make up the texts of the corpus of texts, and their subsequent indexing and preservation of indices,
- they search for fragments in pre-indexed cases of electronic texts that satisfy the request,
- evaluate the relevance of the results,
- rank the search results in accordance with the degree of relevance.
- генерацию всех потенциальных связей между элементами предложения и их сохранение в памяти,
- построение графа обобщенных составляющих,
- генерацию из графа обобщенных составляющих, по крайней мере, одного синтаксического дерева,
- установление недревесных связей и построение на основе синтаксического дерева синтаксической структуры предложения и ее сохранение в памяти,
- генерацию универсальной семантической структуры предложения на основе его синтаксической структуры и ее сохранение в памяти.2. The method according to p. 1, where the semantic-syntactic analysis of the corpus of texts for each sentence of the corpus of texts includes:
- the generation of all potential relationships between the elements of the proposal and their preservation in memory,
- construction of a graph of generalized components,
- generation of generalized components from the graph of at least one syntax tree,
- the establishment of non-wood relationships and the construction on the basis of the syntax tree of the syntactic structure of the sentence and its storage in memory,
- the generation of a universal semantic structure of a sentence based on its syntactic structure and its preservation in memory.
- один или более процессоров;
- одно или более устройств памяти;
- программные инструкции для вычислительного устройства, записанные в одно или более устройств памяти, которые при выполнении на одном или более процессорах управляют системой для:
- предварительного осуществления семантико-синтаксического анализа корпуса текстов с определением значений лингвистических параметров предложений, включая сопоставление, по крайней мере, одному слову предложения некоторого множества возможных лексических значений - каждое с соответствующей оценкой вероятности вхождения этого лексического значения в предложение, их сохранением в памяти и построением семантических структур предложений, составляющих тексты корпуса текстов, и их последующим индексированием и сохранением индексов,
- поиска фрагментов в предварительно проиндексированных корпусах электронных текстов, удовлетворяющих запросу,
- оценки релевантности результатов,
- ранжирования результатов поиска в соответствии со степенью релевантности.33. A system for organizing searches in electronic text buildings, including:
- one or more processors;
- one or more memory devices;
- software instructions for a computing device recorded in one or more memory devices that, when executed on one or more processors, control the system for:
- preliminary semantic-syntactic analysis of the corpus of texts with determination of the values of the linguistic parameters of sentences, including matching at least one word of a sentence with a certain set of possible lexical meanings - each with a corresponding assessment of the probability of occurrence of this lexical meaning in a sentence, their storage in memory and construction semantic structures of sentences that make up the texts of the corpus of texts, and their subsequent indexing and preservation of indices,
- search for fragments in pre-indexed cases of electronic texts that satisfy the request,
- assessment of the relevance of the results,
- ranking of search results in accordance with the degree of relevance.
- генерацию всех потенциальных связей между элементами предложения и их сохранение в памяти,
- построение графа обобщенных составляющих,
- генерацию из графа обобщенных составляющих, по крайней мере, одного синтаксического дерева,
- установление недревесных связей и построение на основе синтаксического дерева синтаксической структуры предложения и ее сохранение в памяти,
- генерацию универсальной семантической структуры предложения на основе его синтаксической структуры и ее сохранение в памяти.34. The system of claim 33, wherein the semantic-syntactic analysis of the corpus of texts for each sentence of the corpus of texts includes:
- the generation of all potential relationships between the elements of the proposal and their preservation in memory,
- construction of a graph of generalized components,
- generation of generalized components from the graph of at least one syntax tree,
- the establishment of non-wood relationships and the construction on the basis of the syntax tree of the syntactic structure of the sentence and its storage in memory,
- the generation of a universal semantic structure of a sentence based on its syntactic structure and its preservation in memory.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2013132622/08A RU2563148C2 (en) | 2013-07-15 | 2013-07-15 | System and method for semantic search |
US14/142,701 US9645993B2 (en) | 2006-10-10 | 2013-12-27 | Method and system for semantic searching |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2013132622/08A RU2563148C2 (en) | 2013-07-15 | 2013-07-15 | System and method for semantic search |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2013132622A RU2013132622A (en) | 2015-01-20 |
RU2563148C2 true RU2563148C2 (en) | 2015-09-20 |
Family
ID=53280805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2013132622/08A RU2563148C2 (en) | 2006-10-10 | 2013-07-15 | System and method for semantic search |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2563148C2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2635257C1 (en) * | 2016-07-28 | 2017-11-09 | Общество с ограниченной ответственностью "Аби Продакшн" | Sentiment analysis at level of aspects and creation of reports using machine learning methods |
RU2691836C1 (en) * | 2018-06-07 | 2019-06-18 | Игорь Петрович Рогачев | Method of transforming a structured data array comprising main linguistic-logic entities |
RU2823436C1 (en) * | 2023-12-21 | 2024-07-23 | Федеральное государственное бюджетное учреждение науки Институт системного программирования им. В.П. Иванникова Российской академии наук | System for automatic determination of subject matter of text documents based on explicable artificial intelligence methods |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112052340B (en) * | 2020-08-10 | 2024-06-21 | 深圳数联天下智能科技有限公司 | Data model construction method and device and electronic equipment |
CN116910086B (en) * | 2023-09-13 | 2023-12-01 | 北京理工大学 | Database query method and system based on self-attention syntax sensing |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2480822C2 (en) * | 2007-08-31 | 2013-04-27 | Майкрософт Корпорейшн | Coreference resolution in ambiguity-sensitive natural language processing system |
-
2013
- 2013-07-15 RU RU2013132622/08A patent/RU2563148C2/en active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2480822C2 (en) * | 2007-08-31 | 2013-04-27 | Майкрософт Корпорейшн | Coreference resolution in ambiguity-sensitive natural language processing system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2635257C1 (en) * | 2016-07-28 | 2017-11-09 | Общество с ограниченной ответственностью "Аби Продакшн" | Sentiment analysis at level of aspects and creation of reports using machine learning methods |
RU2691836C1 (en) * | 2018-06-07 | 2019-06-18 | Игорь Петрович Рогачев | Method of transforming a structured data array comprising main linguistic-logic entities |
RU2823436C1 (en) * | 2023-12-21 | 2024-07-23 | Федеральное государственное бюджетное учреждение науки Институт системного программирования им. В.П. Иванникова Российской академии наук | System for automatic determination of subject matter of text documents based on explicable artificial intelligence methods |
Also Published As
Publication number | Publication date |
---|---|
RU2013132622A (en) | 2015-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2564629C1 (en) | Method of clustering of search results depending on semantics | |
US9645993B2 (en) | Method and system for semantic searching | |
US9626358B2 (en) | Creating ontologies by analyzing natural language texts | |
US9069750B2 (en) | Method and system for semantic searching of natural language texts | |
RU2596599C2 (en) | System and method of creating and using user ontology-based patterns for processing user text in natural language | |
RU2686000C1 (en) | Retrieval of information objects using a combination of classifiers analyzing local and non-local signs | |
RU2584457C1 (en) | System and method of creating and using user semantic dictionaries for processing user text in natural language | |
US9098489B2 (en) | Method and system for semantic searching | |
US20160004766A1 (en) | Search technology using synonims and paraphrasing | |
RU2607975C2 (en) | Constructing corpus of comparable documents based on universal measure of similarity | |
RU2626555C2 (en) | Extraction of entities from texts in natural language | |
RU2592395C2 (en) | Resolution semantic ambiguity by statistical analysis | |
RU2579699C2 (en) | Resolution of semantic ambiguity using language-independent semantic structure | |
Mohamed et al. | A hybrid approach for paraphrase identification based on knowledge-enriched semantic heuristics | |
RU2639655C1 (en) | System for creating documents based on text analysis on natural language | |
US9075864B2 (en) | Method and system for semantic searching using syntactic and semantic analysis | |
Wang et al. | NLP-based query-answering system for information extraction from building information models | |
CN111382571B (en) | Information extraction method, system, server and storage medium | |
RU2640297C2 (en) | Definition of confidence degrees related to attribute values of information objects | |
RU2579873C2 (en) | Resolution of semantic ambiguity using semantic classifier | |
Rodrigues et al. | Advanced applications of natural language processing for performing information extraction | |
US20190065453A1 (en) | Reconstructing textual annotations associated with information objects | |
Al-Zoghby et al. | Semantic relations extraction and ontology learning from Arabic texts—a survey | |
RU2563148C2 (en) | System and method for semantic search | |
Ather | The fusion of multilingual semantic search and large language models: A new paradigm for enhanced topic exploration and contextual search |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PC41 | Official registration of the transfer of exclusive right |
Effective date: 20170630 |
|
QB4A | Licence on use of patent |
Free format text: LICENCE FORMERLY AGREED ON 20201211 Effective date: 20201211 |
|
QC41 | Official registration of the termination of the licence agreement or other agreements on the disposal of an exclusive right |
Free format text: LICENCE FORMERLY AGREED ON 20201211 Effective date: 20220311 |