RU2657173C2 - Sentiment analysis at the level of aspects using methods of machine learning - Google Patents
Sentiment analysis at the level of aspects using methods of machine learning Download PDFInfo
- Publication number
- RU2657173C2 RU2657173C2 RU2016131180A RU2016131180A RU2657173C2 RU 2657173 C2 RU2657173 C2 RU 2657173C2 RU 2016131180 A RU2016131180 A RU 2016131180A RU 2016131180 A RU2016131180 A RU 2016131180A RU 2657173 C2 RU2657173 C2 RU 2657173C2
- Authority
- RU
- Russia
- Prior art keywords
- semantic
- syntactic
- natural language
- text
- tonality
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
Abstract
Description
ОБЛАСТЬ ИЗОБРЕТЕНИЯFIELD OF THE INVENTION
[0001] Настоящее изобретение в целом относится к извлечению информации из текстов на естественных языках с использованием вычислительных систем, а точнее - к сентиментному анализу на уровне аспектов с использованием методов машинного обучения.[0001] The present invention generally relates to the extraction of information from texts in natural languages using computer systems, and more specifically to sentimental analysis at the aspect level using machine learning methods.
УРОВЕНЬ ТЕХНИКИBACKGROUND
[0002] Сентиментный анализ является важной операцией при автоматической обработке текстов на естественных языках и имеет множество применений для решения реальных задач. Сентиментный анализ на уровне аспектов (АВSА) может использоваться для автоматической идентификации в текстах на естественном языке аспектов указанных целевых сущностей и сентиментов, выражаемых по отношению к каждому из аспектов.[0002] Sentiment analysis is an important operation in the automatic processing of texts in natural languages and has many uses for solving real problems. Sentiment analysis at the aspect level (ABCA) can be used to automatically identify aspects of the specified target entities and sentiments expressed in relation to each aspect in natural language texts.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION
[0003] В соответствии с одним или несколькими аспектами настоящего изобретения описанный в примере способ сентиментного анализа на уровне аспектов может содержать: выполнение с помощью вычислительной системы семантико-синтаксического анализа по крайней мере части текста на естественном языке для создания множества синтактико-семантических структур, представляющих часть текста на естественном языке; интерпретацию синтактико-семантических структур с помощью набора продукционных правил для обнаружения в части текста на естественном языке по крайней мере одного аспектного термина, представляющего аспект, связанный с целевой сущностью; и оценку, с помощью одной или более характеристик текста, полученных при синтактико-семантическом анализе, функции классификатора для определения тональности, связанной с аспектным термином.[0003] In accordance with one or more aspects of the present invention, the method of sentimental analysis at the aspect level described in the example may comprise: performing, by means of a computer system, semantic-syntactic analysis of at least a portion of the text in natural language to create a plurality of syntactic-semantic structures representing part of the text in natural language; interpretation of syntactic-semantic structures with the help of a set of production rules for detecting in a part of a text in a natural language at least one aspect term representing an aspect related to the target entity; and evaluating, using one or more characteristics of the text obtained by syntactic-semantic analysis, a classifier function to determine the tonality associated with an aspect term.
[0004] В соответствии с одним или несколькими аспектами настоящего изобретения описанная в примере система для сентиментного анализа на уровне аспектов может содержать: память и процессор, работающий с этой памятью, причем этот процессор выполнен с возможностью: выполнять с помощью вычислительной системы семантико-синтаксический анализ по крайней мере части текста на естественном языке для создания множества синтактико-семантических структур, представляющих часть текста на естественном языке; интерпретировать синтактико-семантические структуры с помощью набора продукционных правил для обнаружения в части текста на естественном языке по крайней мере одного аспектного термина, представляющего аспект, связанный с целевой сущностью; и оценивать с помощью одной или более характеристик текста, полученных при синтактико-семантическом анализе, функцию-классификатор для определения тональности, связанной с аспектным термином.[0004] In accordance with one or more aspects of the present invention, the system for sentimental analysis at the aspect level described in the example may include: a memory and a processor operating with this memory, the processor being configured to: perform semantic-syntactic analysis using a computer system at least parts of the text in natural language to create many syntactic-semantic structures that represent part of the text in natural language; interpret syntactic-semantic structures with the help of a set of production rules for detecting at least one aspect term representing a aspect related to the target entity in a part of the text in the natural language; and evaluate using one or more characteristics of the text obtained by syntactic-semantic analysis, a classifier function to determine the tonality associated with an aspect term.
[0005] В соответствии с одним или несколькими аспектами настоящего изобретения пример постоянного машиночитаемого носителя данных может включать исполняемые команды, которые при исполнении их вычислительной системой приводят к выполнению вычислительной системой операций, включающих в себя: выполнение с помощью вычислительной системы семантико-синтаксического анализа по крайней мере части текста на естественном языке для создания множества синтактико-семантических структур, представляющих часть текста на естественном языке; интерпретацию синтактико-семантических структур с помощью набора продукционных правил для обнаружения в части текста на естественном языке по крайней мере одного аспектного термина, представляющего аспект, связанный с целевой сущностью; и оценку с помощью одной или более характеристик текста, полученных при синтактико-семантическом анализе, функции классификатора для определения тональности, связанной с аспектным термином.[0005] In accordance with one or more aspects of the present invention, an example of a permanent computer-readable storage medium may include executable instructions that, when executed by a computing system, result in operations performed by the computing system including: performing at least semantic-syntactic analysis on the computing system at least part of the text in natural language to create many syntactic-semantic structures that represent part of the text in natural language; interpretation of syntactic-semantic structures with the help of a set of production rules for detecting in a part of a text in a natural language at least one aspect term representing an aspect related to the target entity; and evaluating, using one or more characteristics of the text obtained by syntactic-semantic analysis, a classifier function to determine the tonality associated with an aspect term.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS
[0006] Настоящее изобретение иллюстрируется с помощью примеров, а не способом ограничения и может быть лучше понято при рассмотрении приведенного ниже описания предпочтительных вариантов реализации в сочетании с чертежами, на которых:[0006] The present invention is illustrated by way of examples, and not by way of limitation, and can be better understood by considering the following description of preferred embodiments in conjunction with the drawings, in which:
[0007] На Фиг. 1 показана блок-схема описанного в примере способа сентиментного анализа на уровне аспектов в соответствии с одним или несколькими аспектами настоящего изобретения;[0007] In FIG. 1 is a flowchart of an aspect-level sentiment analysis method described in an example in accordance with one or more aspects of the present invention;
[0008] На Фиг. 2 приведен пример текста на естественном языке для использования в примере способа сентиментного анализа на уровне аспектов в соответствии с одним или несколькими аспектами настоящего изобретения;[0008] In FIG. 2 shows an example of a natural language text for use in an example of a sentimental analysis method at the aspect level in accordance with one or more aspects of the present invention;
[0009] На Фиг. 3 приведен пример семантической иерархии, используемой в описанном в примере способе сентиментного анализа на уровне аспектов в соответствии с одним или несколькими аспектами настоящего изобретения;[0009] In FIG. 3 illustrates an example of a semantic hierarchy used in the sentiment analysis method at the aspect level described in the example in accordance with one or more aspects of the present invention;
[00010] На Фиг. 4 схематично показан пример способа интерпретации синтактико-семантических структур с использованием набора продукционных правил в соответствии с одним или несколькими аспектами настоящего изобретения;[00010] In FIG. 4 schematically shows an example of a method for interpreting syntactic-semantic structures using a set of production rules in accordance with one or more aspects of the present invention;
[00011] На Фиг. 5 приведены примеры продукционных правил, используемых в примере способа сентиментного анализа на уровне аспектов для обнаружения аспектных терминов в соответствии с одним или несколькими аспектами настоящего изобретения;[00011] In FIG. 5 shows examples of production rules used in an example of a sentiment analysis method at the aspect level for detecting aspect terms in accordance with one or more aspects of the present invention;
[00012] На Фиг. 6 приведены примеры продукционных правил, используемых в примере способа сентиментного анализа на уровне аспектов для определения тональности аспектного термина в соответствии с одним или несколькими аспектами настоящего изобретения;[00012] In FIG. 6 shows examples of production rules used in an example of a sentimental analysis method at the aspect level to determine the tonality of an aspect term in accordance with one or more aspects of the present invention;
[00013] На Фиг. 7 показана блок-схема примера способа 700 интерактивного сентиментного анализа на уровне аспектов в тексте на естественном языке в соответствии с одним или более аспектами настоящего изобретения.[00013] In FIG. 7 is a flowchart of an example of a
[00014] На Фиг. 8 приведен пример текста на естественном языке для использования в способе сентиментного анализа на уровне аспектов в соответствии с одним или несколькими аспектами настоящего изобретения;[00014] In FIG. 8 shows an example of a natural language text for use in a sentimental analysis method at the aspect level in accordance with one or more aspects of the present invention;
[00015] На Фиг. 9 приведены результаты примера разметки текста, приведенного на Фиг. 8 в соответствии с одним или более аспектами настоящего изобретения;[00015] In FIG. 9 shows the results of the text markup example shown in FIG. 8 in accordance with one or more aspects of the present invention;
[00016] На Фиг. 10 показана блок-схема примера способа выполнения семантико-синтаксического анализа предложения на естественном языке в соответствии с одним или более аспектами настоящего изобретения;[00016] In FIG. 10 is a flowchart of an example method for performing semantic-syntactic analysis of a sentence in a natural language in accordance with one or more aspects of the present invention;
[00017] На Фиг. 11 схематически показан пример лексико-морфологической структуры предложения в соответствии с одним или более аспектами настоящего изобретения;[00017] In FIG. 11 schematically shows an example of the lexical-morphological structure of a sentence in accordance with one or more aspects of the present invention;
[00018] На Фиг. 12 схематически показаны языковые описания, представляющие модель естественного языка в соответствии с одним или более аспектами настоящего изобретения;[00018] In FIG. 12 schematically shows language descriptions representing a natural language model in accordance with one or more aspects of the present invention;
[00019] На Фиг. 13 схематически показаны примеры морфологических описаний в соответствии с одним или более аспектами настоящего изобретения;[00019] In FIG. 13 schematically shows examples of morphological descriptions in accordance with one or more aspects of the present invention;
[00020] На Фиг. 14 схематически показаны примеры синтаксических описаний в соответствии с одним или более аспектами настоящего изобретения;[00020] FIG. 14 schematically shows examples of syntactic descriptions in accordance with one or more aspects of the present invention;
[00021] На Фиг. 15 схематически показаны примеры семантических описаний в соответствии с одним или более аспектами настоящего изобретения;[00021] In FIG. 15 schematically shows examples of semantic descriptions in accordance with one or more aspects of the present invention;
[00022] На Фиг. 16 схематически показаны примеры лексических описаний в соответствии с одним или более аспектами настоящего изобретения;[00022] FIG. 16 schematically shows examples of lexical descriptions in accordance with one or more aspects of the present invention;
[00023] На Фиг. 17 схематически показаны примеры структур данных, которые могут быть использованы в рамках одного или более способов, реализованных в соответствии с одним или несколькими аспектами настоящего изобретения;[00023] In FIG. 17 schematically shows examples of data structures that can be used in one or more methods implemented in accordance with one or more aspects of the present invention;
[00024] На Фиг. 18 схематически показан пример графа обобщенных составляющих в соответствии с одним или более аспектами настоящего изобретения;[00024] FIG. 18 schematically shows an example of a graph of generalized components in accordance with one or more aspects of the present invention;
[00025] На Фиг. 19 показан пример синтаксической структуры, соответствующей предложению, приведенному на Фиг. 18;[00025] In FIG. 19 shows an example of a syntax structure corresponding to the sentence of FIG. eighteen;
[00026] На Фиг. 20 показана семантическая структура, соответствующая синтаксической структуре на Фиг. 19;[00026] In FIG. 20 shows a semantic structure corresponding to the syntax structure in FIG. 19;
[00027] На Фиг. 21 показана схема примера вычислительной системы, реализующей методы настоящего изобретения.[00027] In FIG. 21 is a diagram of an example computer system implementing the methods of the present invention.
ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ РЕАЛИЗАЦИИDESCRIPTION OF PREFERRED EMBODIMENTS
[00028] В настоящем документе описываются способы и системы сентиментного анализа на уровне аспектов. Описанные в настоящем документе системы и способы могут быть использованы в разнообразных приложениях обработки естественного языка, включая машинный перевод, семантическую индексацию, семантический поиск (включая многоязычный семантический поиск), классификацию документов, электронные исследования и др.[00028] This paper describes methods and systems of sentimental analysis at the level of aspects. The systems and methods described herein can be used in a variety of natural language processing applications, including machine translation, semantic indexing, semantic search (including multilingual semantic search), document classification, electronic research, etc.
[00029] В настоящем документе термин «вычислительная система» означает устройство обработки данных, оснащенное универсальным процессором, памятью и по меньшей мере одним коммуникационным интерфейсом. Примерами вычислительных систем, которые могут использовать описанные в этом документе способы, являются, в частности, настольные компьютеры, ноутбуки, планшетные компьютеры и смартфоны.[00029] As used herein, the term "computing system" means a data processing device equipped with a universal processor, memory, and at least one communication interface. Examples of computing systems that can use the methods described in this document are, in particular, desktop computers, laptops, tablet computers and smartphones.
[00030] Слово «Сентимент» в настоящем документе означает вербальное выражение отношения или эмоций автора к некоторой сущности (например, к объекту реального мира или классу объектов реального мира). Определенный текст на естественном языке может выражать сентименты автора к различным аспектам одной или нескольких сущностей. Слово «Аспект» в настоящем документе означает определенное свойство сущности, описываемой в тексте на естественном языке. В различных иллюстративных примерах аспект может определять характеристику, компонент или функцию соответствующей сущности. Словосочетание «Аспектный термин» в настоящем документе означает одно или несколько слов на естественном языке, относящихся к аспекту определенной сущности. Сентимент может быть охарактеризован тональностью, связанной с соответствующим аспектным термином, например, положительной, нейтральной или отрицательной.[00030] The word "Sentiment" in this document means a verbal expression of the author’s attitude or emotions towards a certain entity (for example, an object of the real world or a class of objects of the real world). A certain text in a natural language can express the author's sentiments for various aspects of one or more entities. The word “Aspect” in this document means a specific property of the entity described in the text in a natural language. In various illustrative examples, an aspect may define a characteristic, component, or function of a corresponding entity. The phrase “Aspect term” in this document means one or more words in a natural language related to an aspect of a particular entity. Sentiment can be characterized by the tonality associated with the corresponding aspect term, for example, positive, neutral or negative.
[00031] В иллюстративном примере производитель потребительских товаров или поставщик услуг может интересоваться измерением сентиментов потребителей относительно определенного продукта путем анализа отзывов потребителей в сети, которые могут иметь вид неструктурированных или слабо структурированных текстов. В соответствии с одним или несколькими аспектами настоящего изобретения вычислительная система может анализировать текст на естественном языке, представляющий отзывы потребителей, чтобы выявить аспектные термины, связанные с одной или несколькими целевыми сущностями (например, товарами или услугами), и в дальнейшем найти сентименты, высказанные потребителями относительно каждого из этих аспектов.[00031] In an illustrative example, a consumer goods producer or service provider may be interested in measuring consumer sentiment for a particular product by analyzing customer feedback online, which may be in the form of unstructured or loosely structured texts. In accordance with one or more aspects of the present invention, a computing system may analyze natural language text representing consumer reviews to identify aspect terms related to one or more target entities (e.g., goods or services), and further find sentiment expressed by consumers regarding each of these aspects.
[00032] В некоторых вариантах реализации вычислительная система, реализующая способы, описанные в настоящем документе, может выполнять двухэтапный сентиментный анализ на уровне аспектов, в ходе которого на первом этапе производится определение аспектных терминов, а на втором этапе определяется их тональность.[00032] In some embodiments, a computing system that implements the methods described herein may perform two-stage sentimental analysis at the aspect level, during which the first stage defines the aspect terms and determines the tonality in the second stage.
[00033] На первом этапе процесса может анализироваться текст на естественном языке, который может содержать множество отзывов пользователей об одной или нескольких целевых сущностях (например, потребительских товарах или услугах). Этот анализ может включать набор продукционных правил для интерпретации множества синтактико-семантических структур, полученных в результате синтактико-семантического анализа текста на естественном языке. Продукционные правила могут производить множество объектов данных, представляющих выявленные аспекты целевых сущностей, что более подробно описано ниже в этом документе.[00033] In the first step of the process, natural language text can be analyzed, which can contain many user reviews of one or more target entities (eg, consumer goods or services). This analysis may include a set of production rules for interpreting many syntactic-semantic structures obtained as a result of syntactic-semantic analysis of text in a natural language. Production rules can produce many data objects representing the identified aspects of the target entities, which are described in more detail later in this document.
[00034] На втором этапе процесса определяется тональность, связанная с каждым выявленным аспектным термином. В некоторых реализациях изобретения второй этап может включать вычисление одной или нескольких функций-классификаторов, возвращающих тональность, связанную с данным аспектным термином. Функция-классификатор может реализовывать различные методы машинного обучения, такие как линейные классификаторы, классификаторы на основе дерева прямых потомков, классификаторы на основе случайного леса, классификаторы на основе условных случайных полей (СRF), классификаторы на основе латентного размещения Дирихле (LDА), классификаторы на основе метода опорных векторов (SVМ) и (или) классификаторы на основе нейронных сетей (например, World2Vес), как более подробно описано ниже в этом документе.[00034] In the second step of the process, the tonality associated with each identified aspect term is determined. In some implementations of the invention, the second step may include calculating one or more classifier functions that return the tonality associated with this aspect term. The classifier function can implement various machine learning methods, such as linear classifiers, classifiers based on the tree of direct descendants, classifiers based on a random forest, classifiers based on conditional random fields (CRF), classifiers based on latent Dirichlet placement (LDA), classifiers on based on the support vector method (SVM) and / or classifiers based on neural networks (for example, World2Ves), as described in more detail later in this document.
[00035] Дополнительно или в качестве альтернативного варианта тональность, связанная с заданным аспектным термином, может определяться путем применения набора продукционных правил, которые интерпретируют множество семантико-синтаксических структур, получаемых при синтактико-семантическом анализе текста на естественном языке, как более подробно описано ниже в этом документе.[00035] Additionally or alternatively, tonality associated with a given aspect term can be determined by applying a set of production rules that interpret the many semantic-syntactic structures obtained by syntactic-semantic analysis of natural language text, as described in more detail below in this document.
[00036] Различные аспекты упомянутых выше способов и систем подробно описаны ниже в этом документе с помощью примеров, а не способом ограничения.[00036] Various aspects of the above methods and systems are described in detail later in this document by way of examples, and not by way of limitation.
[00037] На Фиг. 1 показана блок-схема примера способа 100 интерактивного сентиментного анализа на уровне аспектов в тексте на естественном языке в соответствии с одним или более аспектами настоящего изобретения. Способ 100 и (или) каждая из его отдельных функций, процедур, подпрограмм или операций может быть реализована с помощью одного или более процессоров вычислительной системы (например, вычислительной системы 100 на Фиг. 1), в которой реализован этот способ. В некоторых вариантах реализации способ 100 может выполняться в одном потоке обработки. При альтернативном подходе способ 100 может быть реализован с использованием двух или более потоков обработки, при этом в каждом потоке реализована одна или более отдельных функций, процедур, подпрограмм или операций этого способа. В иллюстративном примере потоки обработки, в которых реализован способ 100, могут быть синхронизированы (например, с помощью семафоров, критических секций и (или) других механизмов синхронизации потоков). При альтернативном подходе потоки обработки, в которых реализован способ 100, могут выполняться асинхронно по отношению друг к другу. Таким образом, несмотря на то, что Фиг. 1 и соответствующее описание содержат список операций для способа 100 в определенном порядке, в различных вариантах осуществления способа по крайней мере некоторые из описанных операций могут выполняться параллельно и (или) в случайно выбранном порядке.[00037] In FIG. 1 is a flowchart of an example of an aspect-level interactive
[00038] В блоке 110 вычислительная система, реализующая способ 100, может выполнять синтактико-семантический анализ исходного текста 101 на естественном языке, который может быть представлен, например, одним или несколькими отзывами потребителей об одной или нескольких целевых сущностях (например, потребительских товарах или услугах). На Фиг. 2 приведен пример текста 211 на естественном языке, представляющий отзыв потребителя о смартфоне. В различных иллюстративных примерах отзыв потребителя не обязательно включает идентификатор целевой сущности (например, марку и модель определенного устройства), тем не менее, соответствующую связь можно вывести из метаданных, связанных с отзывом потребителя (например, отзыв может быть связан с категорией, имеющей заголовок, который определяет целевую сущность).[00038] In
[00039] В различных иллюстративных примерах текст на естественном языке может быть представлен неструктурированным (свободное изложение) или слабо структурированным текстом (например, текст, разделенный на несколько разделов, определяемых подзаголовками, такими как «Характеристики продукта», «Преимущества», «Недостатки» и т.д.).[00039] In various illustrative examples, text in natural language can be represented by unstructured (fluent) or poorly structured text (for example, text divided into several sections defined by subheadings, such as “Product Features”, “Benefits”, “Disadvantages” etc.).
[00040] Синтактико-семантический анализ может давать для каждого предложения в тексте на естественном языке по крайней мере одну не зависящую от языка синтактико-семантическую структуру 102, как описано более подробно ниже со ссылками на Фиг. 5-15. В некоторых вариантах реализации изобретения синтактико-семантический анализ может использовать пользовательский словарь, который может содержать список лексем, которые могут использоваться в анализируемом тексте на естественном языке для ссылки на целевые сущности (например, потребительские товары или услуги). В иллюстративном примере пользовательский словарь может содержать список марок автомобилей, включая возможные разговорные вариации, такие как «Шевроле» и «Шеви».[00040] Syntactic-semantic analysis can give at least one language-independent syntactic-
[00041] В некоторых вариантах реализации изобретения пользовательский словарь может быть представлен семантической иерархией. Как схематично показано на Фиг. 3, пример семантической иерархии 310 может содержать определения множества семантических классов, таких, что каждый класс соответствует концепту предметной области. Каждое определение класса может включать определения одного или более объектов, отнесенных к данному классу, включая зависящие от конкретного языка лексические классы.[00041] In some embodiments of the invention, a user dictionary may be represented by a semantic hierarchy. As schematically shown in FIG. 3, an example of a
[00042] Для облегчения идентификации аспектных терминов в анализируемом тексте на естественном языке семантическая иерархия, которая используется при синтактико-семантическом анализе текста на естественном языке, может быть дополнена путем ассоциирования некоторых лексических классов 315 с пользовательскими прагматическими классами 317, указывающими на то, что лексемы, представленные экземплярами этих лексических классов, могут использоваться в качестве аспектных терминов, указывающих на определенный аспект. В некоторых вариантах реализации изобретения пользовательский прагматический класс может иметь несколько подклассов для дополнительного указания на тип аспекта, с которым связаны экземпляры соответствующего лексического класса. В различных иллюстративных примерах подклассы пользовательского прагматического класса могут указывать на то, что лексема, представленная экземпляром соответствующего лексического класса, представляет характеристику, компонент или функцию соответствующей сущности. В другом иллюстративном примере подкласс пользовательского прагматического класса может указывать на то, что лексема, представленная экземпляром соответствующего лексического класса, представляет характеристику, компонент или функцию соответствующей сущности имплицитно, при этом тональность может подразумеваться самим аспектным термином (например, «высокие обороты (RРМ)»). В противном случае, если тональность не определяется аспектным термином и может быть определена только путем анализа контекста аспектного термина, аспектный термин может называться «эксплицитным».[00042] To facilitate the identification of aspectual terms in the analyzed natural language text, the semantic hierarchy that is used in the syntactic-semantic analysis of natural language text can be supplemented by associating some
[00043] В блоке 120 вычислительная система может интерпретировать множество синтактико-семантических структур, используя набор продукционных правил для определения отдельных аспектов целевых сущностей, как подробно описано ниже со ссылкой на Фиг. 4-5.[00043] At
[00044] В блоке 130 вычислительная система может определять тональности выявленных аспектных терминов. В иллюстративном примере тональность может быть отрицательной (-1), нейтральной (0) или положительной (+1). В различных других иллюстративных примерах могут использоваться другие числовые шкалы и/или вербальные обозначения тональностей.[00044] At
[00045] В некоторых вариантах реализации изобретения тональность может определяться путем использования набора продукционных правил для интерпретации множества синтактико-семантических структур, полученных в результате синтактико-семантического анализа текста на естественном языке. На Фиг. 6 приведены примеры продукционных правил, которые могут использоваться для определения тональности аспектного термина в соответствии с одним или несколькими аспектами настоящего описания. Дополнительно или в качестве альтернативного варианта тональность может определяться путем вычисления одной или нескольких функций-классификаторов, возвращающих тональность каждого выявленного аспектного термина, как более подробно описано ниже в настоящем документе.[00045] In some embodiments of the invention, tonality can be determined by using a set of production rules to interpret a variety of syntactic-semantic structures resulting from syntactic-semantic analysis of natural language text. In FIG. 6 provides examples of production rules that can be used to determine the tonality of an aspect term in accordance with one or more aspects of the present description. Additionally or alternatively, tonality can be determined by calculating one or more classifier functions that return the tonality of each identified aspect term, as described in more detail later in this document.
[00046] В блоке 140 вычислительная система может агрегировать извлеченную информацию в форме, подходящей для вывода в графическом интерфейсе пользователя (GUI) и (или) для печати. В иллюстративном примере отчет, созданный системой, может содержать идентификатор целевой сущности (например, электронное устройство) и один или несколько иерархических списков, идентифицирующих компоненты, характеристики и (или) функции целевой сущности. Каждый иерархический список может содержать множество аспектных терминов и соответствующие им тональности. В некоторых вариантах реализации изобретения каждый иерархический список может также содержать количество экземпляров (например, количество отзывов в сети), в которых выявленный аспект характеризуется выявленным аспектным термином и выявленной тональностью. В ответ на завершение описанных со ссылками на блок 140 операций способ может завершиться.[00046] At
[00047] На Фиг. 4 схематично показан пример способа интерпретации семантических структур с использованием набора продукционных правил в соответствии с одним или несколькими аспектами настоящего изобретения. Способ 400 и (или) каждая из его отдельных функций, процедур, подпрограмм или операций может быть реализована с помощью одного или более процессоров вычислительной системы (например, вычислительной системы 400 на Фиг. 4), в которой реализован этот способ. В некоторых вариантах реализации способ 400 может выполняться в одном потоке обработки. При альтернативном подходе способ 400 может быть реализован с помощью двух или более потоков обработки, при этом каждый поток выполняет одну или более отдельных функций, стандартных программ, подпрограмм или операций данного способа. В иллюстративном примере потоки обработки, реализующие способ 400, могут быть синхронизированы (например, с помощью семафоров, критических секций и/или других механизмов синхронизации потоков). В качестве альтернативы, потоки обработки, реализующие способ 400, могут выполняться асинхронно по отношению друг к другу. Поэтому, хотя Фиг. 4 и соответствующее описание содержат операции способа 400 в определенном порядке, различные варианты реализации способа могут выполнять по крайней мере некоторые из перечисленных операций, параллельно и (или) в произвольно выбранном порядке.[00047] FIG. 4 schematically shows an example of a method for interpreting semantic structures using a set of production rules in accordance with one or more aspects of the present invention. The
[00048] В некоторых реализациях изобретения объекты данных, представляющие выявленные аспекты целевых сущностей, могут быть представлены графом RDF-графом (Resource Definition Framework). RDF присваивает уникальный идентификатор каждому информационному объекту и сохраняет информацию о таком объекте в виде триплетов SРО, где S обозначает «субъект» и содержит идентификатор объекта, Р обозначает «предикат» и определяет некоторое свойство этого объекта, а О обозначает «объект» и сохраняет значение этого свойства данного объекта. Это значение может быть как примитивным типом данных (строкой, числом, булевым значением), так и идентификатором другого объекта. В одном из иллюстративных примеров триплет SРО может ассоциировать токен из текста на естественном языке с аспектом целевой сущности.[00048] In some implementations of the invention, data objects representing the identified aspects of the target entities can be represented by a graph RDF graph (Resource Definition Framework). RDF assigns a unique identifier to each information object and stores information about such an object in the form of triplets of SRO, where S stands for “subject” and contains the identifier of an object, P stands for “predicate” and defines some property of this object, and O stands for “object” and stores the value this property of this object. This value can be either a primitive data type (string, number, Boolean value), or the identifier of another object. In one illustrative example, the triplet SRO can associate a token from a text in a natural language with an aspect of the target entity.
[00049] Продукционные правила, которые используются для интерпретации синтактико-семантических структур, могут включать правила интерпретации и правила идентификации. Правило интерпретации может содержать левую сторону, представленную набором логических выражений, определенных в одном или более шаблонах синтактико-семантических структур, и правую сторону, представленную одним или более утверждениями, относящимися к информационным объектам, представляющим сущности, ссылающиеся на текст на естественном языке.[00049] Production rules that are used to interpret syntactic-semantic structures may include interpretation rules and identification rules. An interpretation rule may contain the left side represented by a set of logical expressions defined in one or more templates of syntactic-semantic structures and the right side represented by one or more statements related to information objects representing entities that refer to text in a natural language.
[00050] Шаблон синтактико-семантической структуры может содержать определенные элементы синтактико-семантической структуры (например, проверка на наличие определенной граммемы или семантемы, принадлежности к определенным лексическим/семантическим классам, нахождение в определенной поверхностной или глубинной позиции и т.д.). Отношения между элементами синтактико-семантических структур могут задаваться с помощью одного или более логических выражений (конъюнкция, дизъюнкция и отрицание) и (или) операций, описывающих взаимное расположение узлов в синтактико-семантическом дереве. В качестве иллюстративного примера такая операция может проверять, принадлежит ли узел к поддереву другого узла.[00050] The syntactic-semantic structure template may contain certain elements of the syntactic-semantic structure (for example, checking for the presence of a specific gramme or semantema, belonging to certain lexical / semantic classes, being in a certain surface or deep position, etc.). Relations between elements of syntactic-semantic structures can be specified using one or more logical expressions (conjunction, disjunction, and negation) and (or) operations describing the relative positions of nodes in the syntactic-semantic tree. As an illustrative example, such an operation can check whether a node belongs to a subtree of another node.
[00051] Совпадение шаблона, определенного левой частью продукционного правила синтактико-семантической структуры, с синтактико-семантической структурой, представляющей по крайней мере часть предложения текста на естественном языке, может запускать правую сторону продукционного правила. Правая сторона продукционного правила может связывать один или более признаков (относящихся к лексическим, синтаксическим и (или) семантическим свойствам слов оригинального предложения) с информационными объектами, представленными вершинами. В одном из иллюстративных примеров правая сторона правила интерпретации может содержать утверждение, связывающее токен из текста на естественном языке с аспектом целевой сущности.[00051] The coincidence of the pattern defined by the left side of the production rule of the syntactic-semantic structure with the syntactic-semantic structure representing at least part of the sentence of the text in natural language can trigger the right side of the production rule. The right side of the production rule may associate one or more features (related to the lexical, syntactic and (or) semantic properties of the words of the original sentence) with information objects represented by vertices. In one illustrative example, the right side of the interpretation rule may contain a statement linking a token from a natural language text to an aspect of the target entity.
[00052] Правило идентификации может использоваться для определения связи для пары информационных объектов, которые представляют одну и ту же сущность из реального мира. Правило идентификации представляет собой продукционное правило, левая часть которого содержит одно или более логических выражений, относящихся к узлам семантического дерева, соответствующим информационным объектам. Если пара информационных объектов соответствует условию, определенному логическими выражениями, информационные объекты объединяют в один информационный объект.[00052] An identification rule can be used to determine the relationship for a pair of information objects that represent the same entity from the real world. An identification rule is a production rule, the left part of which contains one or more logical expressions related to the nodes of the semantic tree, corresponding to information objects. If a pair of information objects corresponds to a condition defined by logical expressions, information objects are combined into one information object.
[00053] На Фиг. 4 в блоке 410 вычислительная система, реализующая способ 400, может получать множество синтактико-семантических структур, представляющих анализируемые предложения из текста на естественном языке.[00053] In FIG. 4, at
[00054] В блоке 420 вычислительная система может выявлять множество синтактико-семантических подструктур, соответствующих шаблонам, определенным в левой стороне правил интерпретации, используемых для анализа текста на естественном языке.[00054] At
[00055] В блоках 430-450 вычислительная система может выполнять итерации над выявленными совпадающими экземплярами, которые могут быть организованы в очередь и связаны с классом приоритета (например, на основе класса приоритета, ассоциированного с правилами интерпретации, которые запускают соответствующие совпадающие экземпляры). В блоке 430 вычислительная система может проверить предположение о том, что очередь совпадающих экземпляров пуста, если это так, способ может перейти к блоку 470, в противном случае в блоке 440, вычислительная система может возвратить из очереди совпадающий экземпляр с самым высоким рейтингом.[00055] In blocks 430-450, the computing system can iterate over identified matching instances that can be queued and associated with a priority class (for example, based on a priority class associated with interpretation rules that trigger the corresponding matching instances). At
[00056] В блоке 450 вычислительная система может создать одно или несколько логических выражений, определенных в правой части правил интерпретации, которые переключат совпадающий экземпляр с наивысшим приоритетом, выявленный в блоке 340.[00056] At
[00057] В блоке 460 вычислительная система может добавить логическое выражение в мешок утверждений, ассоциированных с анализируемым текстом на естественном языке. Термин «Мешок утверждений» в настоящем документе означает набор не противоречащих друг другу логических выражений, характеризующих извлеченные информационные объекты и их свойства. Поэтому попытка добавления в мешок утверждений нового утверждения, противоречащего по крайней мере одному утверждению, уже находящемуся в «мешке утверждений», будет неудачной.[00057] At
[00058] После определения в блоке 470 неудачи попытки добавления в «мешок утверждений», связанных с анализируемым текстом на естественном языке, логического выражения, полученного в блоке 450, способ может вернуться к блоку 430; в противном случае способ может вернуться к блоку 420.[00058] After the determination in block 470 of the failure of the attempt to add to the "bag of statements" associated with the analyzed text in natural language, the logical expression obtained in
[00059] В блоке 480,после обнаружения, что очередь совпадающих экземпляров пуста, способ может прекратить работу, объявив мешок утверждений заполненным. Мешок утверждений может определить RDF-граф, представляющий выявленные аспектные термины. В некоторых вариантах реализации вычислительная система может объединить некоторые выявленные аспекты, для обозначения которых в исходном тексте на естественном языке используются различные синонимические конструкции.[00059] At
[00060] На Фиг. 5 приведены примеры продукционных правил, которые могут использоваться для выявления аспектных терминов в соответствии с одним или несколькими аспектами настоящего изобретения. Правило 510 может использоваться для выявления имплицитного аспекта. Правило 520 может использоваться для выявления имплицитного аспекта. Правило 530 может использоваться для слияния эксплицитных аспектов. Правило 540 может использоваться для выявления имплицитного аспекта, отражающего указание потребителя на то, что использование продукта вызывает боль в спине. Правило 550 может использоваться для выявления имплицитного аспекта, отражающего указание потребителя на то, что необходимо заменить часть продукта.[00060] FIG. 5 provides examples of production rules that can be used to identify aspect terms in accordance with one or more aspects of the present invention.
[00061] На Фиг. 6 приведены некоторые примеры продукционных правил, которые могут использоваться для определения тональности аспектного термина в соответствии с одним или несколькими аспектами настоящего изобретения. Правило 610 может использоваться для выявления тональностей, связанных с некоторыми аспектами, относящимися к пассажирским автомобилям.[00061] In FIG. Figure 6 shows some examples of production rules that can be used to determine the tonality of an aspect term in accordance with one or more aspects of the present invention.
[00062] Как отмечено выше в настоящем документе, дополнительно или в качестве альтернативы использованию продукционных правил тональность аспектного термина может быть определена путем оценки одной или нескольких функций-классификаторов. Область определения функции-классификатора может быть представлена вектором значений грамматических, синтаксических и (или) семантических признаков, характеризующих аспектный термин. В качестве базовой составляющей синтактико-семантической структуры, представляющей аспектный термин, может быть выбрана максимальная составляющая синтактико-семантической структуры, ядро которой содержит аспектный термин. Контекст выявленной базовой составляющей может быть представлен родительскими, дочерними и одноуровневыми составляющими.[00062] As noted above in this document, additionally or as an alternative to using production rules, the tonality of an aspect term can be determined by evaluating one or more classifier functions. The scope of the classifier function can be represented by a vector of values of grammatical, syntactic, and (or) semantic features characterizing an aspect term. As the basic component of the syntactic-semantic structure representing the aspect term, the maximum component of the syntactic-semantic structure, the core of which contains the aspect term, can be selected. The context of the identified base component can be represented by parent, child, and sibling components.
[00063] В различных иллюстративных примерах признаки, представляющие область определения функции-классификатора, могут включать:[00063] In various illustrative examples, features representing a scope of a classifier function may include:
[00064] - семантический класс, связанный с выявленной базовой составляющей, представляющей аспектный термин (например, HUMAN, BE, EMOTINOS_AND_TH EMOTIONAL_ATTITUDE, INSIDE_PART);[00064] a semantic class associated with the identified base component representing an aspect term (eg, HUMAN, BE, EMOTINOS_AND_TH EMOTIONAL_ATTITUDE, INSIDE_PART);
[00065] - прагматический класс, связанный с выявленной базовой составляющей, представляющей аспектный термин (например, DigitalNumbers, Person, Positive, NormalPolarityDependence);[00065] - a pragmatic class associated with the identified basic component representing an aspect term (for example, DigitalNumbers, Person, Positive, NormalPolarityDependence);
[00066] - не зависящую от языка глубинную позицию, связанную с выявленной базовой составляющей, представляющей аспектный термин;[00066] a language-independent deep position associated with the identified base component representing an aspect term;
[00067] - зависимую от языка поверхностную позицию, связанную с выявленной базовой составляющей, представляющей аспектный термин;[00067] is a language dependent surface position associated with the identified base component representing an aspect term;
[00068] - синтаксическую парадигму, связанную с выявленной базовой составляющей, представляющей аспектный термин, например множество поверхностных структур, связанных с определенными лексическими значениями (например, частями речи);[00068] - a syntactic paradigm associated with the identified basic component representing an aspect term, for example, many surface structures associated with certain lexical meanings (for example, parts of speech);
[00069] - семантема, связанная с аспектным термином (например, PolarityPlus, NonPolarityMinus);[00069] is a semanthem associated with an aspect term (eg, PolarityPlus, NonPolarityMinus);
[00070] - шаблон капитализации, определяющий использование прописных букв в аспектном термине (например, АаАаА, АААА); и (или)[00070] - a capitalization template that defines the use of capital letters in an aspect term (for example, AaAaA, AAAA); and / or
[00071] - положение выявленной базовой составляющей в синтактико-семантическом дереве (например, является ли базовая составляющая корнем коллокации или ведет происхождение от определенной вершины семантического дерева).[00071] - the position of the identified basic component in the syntactic-semantic tree (for example, whether the basic component is the root of the collocation or originates from a specific vertex of the semantic tree).
[00072] В некоторых реализациях изобретения значения признаков до использования в функции-классификаторе могут быть бинаризованы. В иллюстративном примере процедура бинаризации включает представление N значений заданного признака в виде N бинарных признаков. В некоторых вариантах осуществления полученные бинарные признаки можно фильтровать (например, с помощью точного критерия Фишера или используя энтропию Шеннона), чтобы выбрать наименьшее число из наиболее статистически значимых признаков.[00072] In some implementations of the invention, feature values may be binarized before being used in the classifier function. In an illustrative example, the binarization procedure includes representing N values of a given attribute in the form of N binary signs. In some embodiments, the resulting binary features can be filtered (for example, using Fisher's exact test or using Shannon's entropy) to select the smallest number of the most statistically significant features.
[00073] Определенные параметры этих функций классификатора могут корректироваться с помощью методов машинного обучения, которые используют заранее определенные или динамически созданные наборы данных. Набор подтверждающих данных может содержать один или более текстов на естественном языке, в которых отмечены отдельные аспекты и соответствующие им тональности. В одном из иллюстративных примеров подобный набор подтверждающих данных может создаваться или обновляться с помощью GUI, предназначенного для получения данных от пользователя, который выделяет одно или более смежных слов и ассоциирует их с категорией и тональностью аспектных терминов.[00073] Certain parameters of these classifier functions can be adjusted using machine learning methods that use predefined or dynamically generated data sets. A set of supporting data may contain one or more texts in a natural language, in which certain aspects and corresponding tonality are noted. In one illustrative example, a similar set of supporting data can be created or updated using a GUI designed to receive data from a user who selects one or more adjacent words and associates them with the category and tonality of aspect terms.
[00074] В некоторых вариантах реализации функции-классификаторы могут быть реализованы с помощью классификаторов случайного леса. Классификатор случайного леса создает во время обучения множество деревьев решений и генерирует класс, который является модусом классов предсказания среднего для отдельных деревьев.[00074] In some implementations, classifier functions can be implemented using random forest classifiers. The random forest classifier creates many decision trees during training and generates a class that is a mode of average prediction classes for individual trees.
[00075] В альтернативном варианте реализации функции-классификаторы могут реализовывать различные методы машинного обучения, такие как линейные классификаторы, классификаторы на основе дерева прямых потомков, классификаторы на основе случайного леса, классификаторы на основе условных случайных полей (СRF), классификаторы на основе латентного размещения Дирихле (LDА), классификаторы на основе метода опорных векторов (SVМ) и (или) классификаторы на основе нейронных сетей (например, World2Vес). В одном из иллюстративных примеров классификатор SVМ может создавать одну или несколько разделительных гиперплоскостей в многомерном пространстве. Для определения значений параметров гиперплоскости используется обучающая выборка, так чтобы полученная гиперплоскость имела максимальное удаление от ближайшей точки данных обучения.[00075] In an alternative implementation, classifier functions can implement various machine learning methods, such as linear classifiers, classifiers based on the tree of direct descendants, classifiers based on a random forest, classifiers based on conditional random fields (CRF), classifiers based on latent allocation Dirichlet (LDА), classifiers based on the support vector method (SVM) and (or) classifiers based on neural networks (for example, World2Ves). In one illustrative example, the SVM classifier can create one or more separation hyperplanes in multidimensional space. To determine the values of the hyperplane parameters, a training sample is used so that the obtained hyperplane has a maximum distance from the nearest point of the training data.
[00076] В различных иллюстративных примерах для оценки качества функции-классификатора могут использоваться одна или несколько метрик качества. Эти метрики качества могут быть представлены точностью (положительное прогностическое значение), полнотой (чувствительностью) или F-мерой.[00076] In various illustrative examples, one or more quality metrics can be used to evaluate the quality of the classifier function. These quality metrics can be represented by accuracy (positive predictive value), completeness (sensitivity), or F-measure.
[00077] В некоторых вариантах реализации сентиментный анализ на уровне аспектов, выполняемый в соответствии с одним или несколькими аспектами настоящего изобретения, может быть реализован в виде интерактивного процесса, в ходе которого вводимая пользователем информация используется для предоставления пользовательского словаря различных терминов, связанных с целевыми сущностями (например, товарами и услугами) и для оценки результатов различных операций способа, как более подробно описано ниже со ссылками на Фиг. 7.[00077] In some embodiments, aspect-level sentiment analysis performed in accordance with one or more aspects of the present invention may be implemented as an interactive process in which user input is used to provide a user dictionary of various terms related to target entities (for example, goods and services) and for evaluating the results of various operations of the method, as described in more detail below with reference to FIG. 7.
[00078] На Фиг. 7 показана блок-схема примера способа 700 интерактивного сентиментного анализа на уровне аспектов в тексте на естественном языке в соответствии с одним или более аспектами настоящего изобретения. Способ 700 и (или) каждая из его отдельных функций, стандартных программ, подпрограмм или операций могут выполняться одним или несколькими процессорами вычислительной системы (например, вычислительная система 700 на Фиг. 7), реализующей этот способ. В некоторых реализациях способ 700 может быть реализован в одном потоке обработки. При альтернативном подходе способ 700 может быть реализован двумя или более потоками обработки, при этом в каждом потоке реализована одна или несколько отдельных функций, процедур, подпрограмм или операций этого способа. В иллюстративном примере потоки обработки, реализующие способ 700, могут быть синхронизированы (например, с помощью семафоров, критических секций и/или других механизмов синхронизации потоков). Кроме того, потоки обработки, реализующие способ 700, могут выполняться асинхронно друг относительно друга. Таким образом, несмотря на то что Фиг. 7 и соответствующее описание содержат список операций для способа 700 в определенном порядке, в различных вариантах осуществления способа по крайней мере некоторые из описанных операций могут выполняться параллельно и (или) в случайно выбранном порядке.[00078] In FIG. 7 is a flowchart of an example of a
[00079] В блоке 710 вычислительная система, реализующая способ 700, может получать исходные данные, определяющие одну или несколько лексем, которые могут использоваться в анализируемом тексте на естественном языке по отношению к целевым сущностям (например, потребительским товарам или услугам). В одном из иллюстративных примеров пользовательский словарь может включать список терминов, которые могут использоваться по отношению к конкретной марке или модели определенного устройства (например, «iРhone 6», «iРhone шестого поколения», «iРhone последней модели» и т.д.). Дополнительно или в качестве альтернативного варианта вводимые пользователем данные могут определять одну или несколько лексем, которые могут использоваться в анализируемом тексте на естественном языке для ссылки на аспекты целевых сущностей. Вычислительная система может использовать пользовательский словарь для расширения семантической иерархии, используемой для синтактико-семантического анализа текста на естественном языке, как более подробно описано выше со ссылками на Фиг. 1.[00079] At block 710, a computing system that implements
[00080] В блоке 720 вычислительная система может получать текст на естественном языке, который может представлять, например, один или несколько отзывов потребителей на целевые сущности (например, потребительские товары или услуги).[00080] In block 720, the computing system may receive natural language text, which may represent, for example, one or more consumer reviews of target entities (eg, consumer goods or services).
[00081] В блоке 730 вычислительное устройство может произвести синтактико-семантический анализ полученного текста на естественном языке. Синтактико-семантический анализ может давать для каждого предложения в тексте на естественном языке по крайней мере одну не зависящую от языка семантическую структуру, как описано более подробно ниже со ссылками на Фиг. 5-15.[00081] In block 730, the computing device can perform syntactic-semantic analysis of the received text in a natural language. Syntactic-semantic analysis can give at least one language-independent semantic structure for each sentence in a natural language text, as described in more detail below with reference to FIG. 5-15.
[00082] В блоке 740 вычислительная система может интерпретировать множество синтактико-семантических структур, используя набор продукционных правил для определения отдельных аспектов целевых сущностей, как подробно описано ниже со ссылкой на Фиг. 4-5.[00082] At block 740, the computing system can interpret a variety of syntactic-semantic structures using a set of production rules to determine individual aspects of the target entities, as described in detail below with reference to FIG. 4-5.
[00083] В блоке 750 вычислительная система может получать вводимые пользователем данные, изменяющие набор выявленных аспектов. В одном из иллюстративных примеров вводимые пользователем данные могут удалять отдельные аспектные термины, которые не интересуют пользователя, и (или) отдельные некорректно выявленные аспектные термины. В одном из иллюстративных примеров вводимые пользователем данные могут добавлять отдельные аспектные термины, которые не были выявлены, однако интересуют пользователя. В другом иллюстративном примере вводимые пользователем данные могут объединить некоторые выявленные аспекты, для обозначения которых в исходном тексте на естественном языке используются различные синонимические конструкции. В другом иллюстративном примере вводимые пользователем данные могут изменить иерархические отношения между выявленными аспектами (например, термин «время работы от аккумулятора» может быть связан с аккумулятором, а не с самим смартфоном). В другом иллюстративном примере вводимые пользователем данные могут изменить лексемы, которые могут использоваться в анализируемом тексте на естественном языке для ссылки на целевые сущности и (или) их аспекты (например, пользователь может определить «тормоза» как связанные с «тормозными колодками» и «тормозными цилиндрами»). В некоторых вариантах реализации в ответ на получение данных от пользователя способ может вернуться к блоку 730, как схематично показано пунктирной линией.[00083] At block 750, the computing system may receive user input that modifies a set of identified aspects. In one illustrative example, user input may delete individual aspect terms that are not of interest to the user, and / or individual incorrectly identified aspect terms. In one illustrative example, user input may add individual aspectual terms that have not been identified but are of interest to the user. In another illustrative example, user-entered data may combine some of the identified aspects, for the purpose of which various synonymous constructions are used in the source text in a natural language. In another illustrative example, user input can change the hierarchical relationship between the identified aspects (for example, the term “battery life” may be associated with the battery, and not with the smartphone itself). In another illustrative example, user input can change the tokens that can be used in the analyzed natural language text to refer to target entities and / or their aspects (for example, the user can define “brakes” as associated with “brake shoes” and “brake cylinders ”). In some embodiments, in response to receiving data from the user, the method may return to block 730, as shown schematically by a dashed line.
[00084] В блоке 760 вычислительная система может определять тональности выявленных аспектных терминов. В одном из иллюстрационных примеров тональность может определяться путем применения набора продукционных правил для интерпретации множества синтактико-семантических структур, полученных в результате синтактико-семантического анализа текста на естественном языке. Дополнительно или в качестве альтернативного варианта тональность может определяться путем вычисления одной или нескольких функций-классификаторов, возвращающих тональность каждого выявленного аспектного термина, как более подробно описано ниже в настоящем документе.[00084] At block 760, the computing system may determine the tonality of the identified aspect terms. In one illustrative example, tonality can be determined by applying a set of production rules to interpret many syntactic-semantic structures obtained as a result of syntactic-semantic analysis of text in a natural language. Additionally or alternatively, tonality can be determined by calculating one or more classifier functions that return the tonality of each identified aspect term, as described in more detail later in this document.
[00085] В блоке 770 вычислительная система может получать вводимые пользователем данные, изменяющие выявленные тональности аспектных терминов. В одном из иллюстрационных примеров пользовательский ввод может изменять иерархические отношения между выявленными аспектами и их тональностями (например, пользовательский ввод может связывать термин «слишком дорогой» с ценой целевого устройства, а не с самим целевым устройством). В другом иллюстрационном примере пользовательский ввод может изменять неправильно выявленную тональность (например, слово «непредсказуемый» может отражать положительный сентимент для кинокартины и в то же время отрицательный сентимент для автомобиля). В другом иллюстрационном примере пользовательский ввод может определять дополнительный аспектный термин и (или) соответствующие ему тональности (например, пользовательский ввод может связывать термин «плавный ход» с характеристикой «удобство вождения»). В некоторых вариантах реализации в ответ на получение данных от пользователя способ может вернуться к блоку 730, как схематично показано пунктирной линией.[00085] At block 770, the computing system may receive user input that modifies the identified tonality of aspect terms. In one illustrative example, user input can change the hierarchical relationship between the identified aspects and their keys (for example, user input can associate the term “too expensive” with the price of the target device, and not with the target device itself). In another illustrative example, user input may change a tonality that is incorrectly detected (for example, the word "unpredictable" may reflect a positive sentiment for a movie and at the same time a negative sentiment for a car). In another illustrative example, user input may define an additional aspect term and / or corresponding tonality (for example, user input may associate the term “smooth running” with the characteristic “driving comfort”). In some embodiments, in response to receiving data from the user, the method may return to block 730, as shown schematically by a dashed line.
[00086] В блоке 780 вычислительная система может агрегировать извлеченную информацию в форме, подходящей для вывода в графическом интерфейсе пользователя (GUI) и (или) для печати. В иллюстративном примере отчет, созданный системой, может содержать идентификатор целевой сущности (например, электронное устройство) и один или несколько иерархических списков, идентифицирующих компоненты, характеристики и (или) функции целевой сущности. Каждый иерархический список может содержать множество аспектных терминов и соответствующие им тональности. В некоторых вариантах реализации изобретения каждый иерархический список может также содержать количество экземпляров (например, количество отзывов в сети), в которых выявленный аспект характеризуется выявленным аспектным термином и выявленной тональностью.[00086] At block 780, the computing system may aggregate the extracted information in a form suitable for output in a graphical user interface (GUI) and / or for printing. In an illustrative example, a report created by the system may contain the identifier of the target entity (for example, an electronic device) and one or more hierarchical lists identifying the components, characteristics and (or) functions of the target entity. Each hierarchical list can contain many aspect terms and the corresponding key. In some embodiments of the invention, each hierarchical list may also contain the number of instances (for example, the number of reviews on the network) in which the identified aspect is characterized by the identified aspect term and the identified tonality.
[00087] В ответ на получение в блоке 790 пользовательского ввода с одобрением созданного отчета способ может прекратить работу в блоке 795. В противном случае вычислительная система может принимать пользовательский ввод, изменяющий пользовательский словарь, и способ может вернуться к блоку 720.[00087] In response to receiving user input at
[00088] В некоторых вариантах реализации один и тот же пользовательский словарь может использоваться для анализа текста на естественном языке, связанного с различными целевыми сущностями, которые имеют одни и те же характеристики (например, потребительские продукты или услуги, относящиеся к одной функциональной категории, такие как смартфоны, автомобили, банковские услуги и т.д.). В одном из иллюстративных примеров система может использовать один и тот же пользовательский словарь для оценки и сравнения двух различных марок/моделей определенного потребительского продукта (например, смартфона).[00088] In some embodiments, the same user dictionary can be used to analyze natural language text associated with different target entities that have the same characteristics (for example, consumer products or services belonging to the same functional category, such like smartphones, cars, banking, etc.). In one illustrative example, the system can use the same user dictionary to evaluate and compare two different brands / models of a particular consumer product (for example, a smartphone).
[00089] На Фиг. 8 приведен пример текста на естественном языке для использования в способе сентиментного анализа на уровне аспектов в соответствии с одним или несколькими аспектами настоящего изобретения. Текст на естественном языке представляет отзыв потребителя о недавно приобретенном автомобиле.[00089] In FIG. 8 is an example natural language text for use in a sentiment analysis method at the aspect level in accordance with one or more aspects of the present invention. The natural language text represents the consumer’s review of the recently purchased vehicle.
[00090] На Фиг. 9 приведены результаты примера разметки текста, приведенного на Фиг. 8 в соответствии с одним или более аспектами настоящего изобретения. Пример разметки представляет аспекты (например, общие, управляемость, удобство, цена и т.д.), соответствующие аспектные термины и их положение в тексте, выявленные тональности (например, негативную, нейтральную, положительную) и выявленные типы аспектов (например, эксплицитный, фактический, имплицитный).[00090] FIG. 9 shows the results of the text markup example shown in FIG. 8 in accordance with one or more aspects of the present invention. An example of markup presents aspects (e.g., general, manageability, convenience, price, etc.), relevant aspect terms and their position in the text, identified tonality (e.g., negative, neutral, positive) and identified types of aspects (e.g. explicit, actual, implicit).
[00091] На Фиг. 10 приведена блок-схема одного иллюстративного примера реализации способа 200 для выполнения семантико-синтаксического анализа предложения на естественном языке 212 в соответствии с одним или несколькими аспектами настоящего изобретения. Способ 200 может быть применен к одной или более синтаксическим единицам (например, предложениям), включенным в определенный текстовый корпус, для формирования множества семантико-синтаксических деревьев, соответствующих синтаксическим единицам. В различных иллюстративных примерах подлежащие обработке способом 200 предложения на естественном языке могут извлекаться из одного или нескольких электронных документов, которые могут создаваться путем сканирования (или другим способом получения изображений бумажных документов) и оптического распознавания символов (ОСR) для получения текстов, соответствующих этим документам. Предложения на естественном языке также могут извлекаться из других различных источников, включая сообщения, отправляемые по электронной почте, тексты из социальных сетей, файлы с цифровым содержимым, обработанные с использованием способов распознавания речи и т.д.[00091] In FIG. 10 is a flow chart of one illustrative example implementation of a
[00092] В блоке 214 вычислительное устройство, реализующее данный способ, может проводить лексико-морфологический анализ предложения 212 для установления морфологических значений слов, входящих в состав предложения. В настоящем документе "морфологическое значение" слова означает одну или несколько лемм (т.е. канонических или словарных форм), соответствующих слову, и соответствующий набор значений грамматических признаков, которые определяют грамматическое значение слова. В число таких грамматических признаков могут входить лексическая категория (часть речи) слова и один или более морфологических и грамматических признаков (например, падеж, род, число, спряжение и т.д.). Ввиду омонимии и (или) совпадающих грамматических форм, соответствующих разным лексико-морфологическим значениям определенного слова, для данного слова может быть установлено два или более морфологических значений. Более подробное описание иллюстративного примера проведения лексико-морфологического анализа предложения приведено ниже в настоящем документе со ссылкой на Фиг. 11.[00092] In
[00093] В блоке 215 вычислительное устройство может проводить грубый синтаксический анализ предложения 212. Грубый синтаксический анализ может включать применение одной или нескольких синтаксических моделей, которые могут быть соотнесены с элементами предложения 212, с последующим установлением поверхностных (т.е. синтаксических) связей в рамках предложения 212 для получения графа обобщенных составляющих. В настоящем документе "составляющая" означает группу соседних слов исходного предложения, функционирующую как одна грамматическая сущность. Составляющая включает в себя ядро в виде одного или более слов и может также включать одну или несколько дочерних составляющих на более низких уровнях. Дочерняя составляющая является зависимой составляющей, которая может быть соотнесена с одной или несколькими родительскими составляющими.[00093] In
[00094] В блоке 216 вычислительное устройство может проводить точный синтаксический анализ предложения 212 для формирования одного или более синтаксических деревьев предложения. Среди различных синтаксических деревьев на основе определенной функции оценки с учетом совместимости лексических значений слов исходного предложения, поверхностных отношений, глубинных отношений и т.д. может быть отобрано одно или несколько лучших синтаксических деревьев, соответствующих предложению 212.[00094] At
[00095] В блоке 217 вычислительное устройство может обрабатывать синтаксические деревья для формирования семантической структуры 218, соответствующей предложению 212. Семантическая структура 218 может включать множество узлов, соответствующих семантическим классам и также может включать множество дуг, соответствующих семантическим отношениям (более подробное описание см. ниже в настоящем документе).[00095] At
[00096] Фиг. 11 схематически иллюстрирует пример лексико-морфологической структуры предложения в соответствии с одним или более аспектами настоящего изобретения. Пример лексико-морфологической структуры 300 может включать множество пар "лексическое значение - грамматическое значение" для примера предложения. В качестве иллюстративного примера, "И" может быть соотнесено с лексическим значением "shall" 312 и "will" 314. Грамматическим значением, соотнесенным с лексическим значением 312, является <Verb, GTVerbModal, ZeroType, Present, Nonnegative, Composite II>. Грамматическим значением, соотнесенным с лексическим значением 314, является <Verb, GTVerbModal, ZeroType, Present, Nonnegative, Irregular, Composite II>.[00096] FIG. 11 schematically illustrates an example of the lexical-morphological structure of a sentence in accordance with one or more aspects of the present invention. An example of the lexical-morphological structure 300 may include many pairs of "lexical meaning - grammatical meaning" for an example sentence. As an illustrative example, “And” can be correlated with the lexical meaning “shall” 312 and “will” 314. The grammatical meaning correlated with the lexical meaning 312 is <Verb, GTVerbModal, ZeroType, Present, Nonnegative, Composite II>. The grammatical meaning associated with the lexical meaning 314 is <Verb, GTVerbModal, ZeroType, Present, Nonnegative, Irregular, Composite II>.
[00097] Фиг. 12 схематически иллюстрирует используемые языковые описания 210, в том числе морфологические описания 201, лексические описания 203, синтаксические описания 202 и семантические описания 204, а также отношения между ними. Среди них морфологические описания 201, лексические описания 203 и синтаксические описания 202 зависят от языка. Набор языковых описаний 210 представляет собой модель определенного естественного языка.[00097] FIG. 12 schematically illustrates
[00098] В качестве иллюстративного примера определенное лексическое значение в лексических описаниях 203 может быть соотнесено с одной или несколькими поверхностными моделями синтаксических описаний 202, соответствующих данному лексическому значению. Определенная поверхностная модель синтаксических описаний 202 может быть соотнесена с глубинной моделью семантических описаний 204.[00098] As an illustrative example, a specific lexical meaning in
[00099] На Фиг. 13 схематически иллюстрируются несколько примеров морфологических описаний. В число компонентов морфологических описаний 201 могут входить: описания словоизменения 310, грамматическая система 320, описания словообразования 330 и другие. Грамматическая система 320 включает набор грамматических категорий, таких как часть речи, падеж, род, число, лицо, возвратность, время, вид и их значения (так называемые "граммемы"), в том числе, например, прилагательное, существительное или глагол; именительный, винительный или родительный падеж; женский, мужской или средний род и т.д. Соответствующие граммемы могут использоваться для составления описания словоизменения 310 и описания словообразования 330.[00099] FIG. 13 schematically illustrates several examples of morphological descriptions. The components of
[000100] Описание словоизменения 310 определяет формы данного слова в зависимости от его грамматических категорий (например, падеж, род, число, время и т.д.) и в широком смысле включает в себя или описывает различные возможные формы слова. Описание словообразования 330 определяет, какие новые слова могут быть образованы от данного слова (например, сложные слова).[000100]
[000101] В соответствии с одним из аспектов настоящего изобретения при установлении синтаксических отношений между элементами исходного предложения могут использоваться модели составляющих. Составляющая представляет собой группу соседних слов в предложении, ведущих себя как единое целое. Ядром составляющей является слово, она также может содержать дочерние составляющие более низких уровней. Дочерняя составляющая является зависимой составляющей и может быть прикреплена к другим составляющим (родительским) для построения синтаксических описаний 202 исходного предложения.[000101] In accordance with one aspect of the present invention, component models may be used to establish syntactic relationships between elements of the original sentence. A component is a group of neighboring words in a sentence that behave as a whole. The core component is the word; it can also contain child components of lower levels. The child component is a dependent component and can be attached to other components (parent) to build
[000102] На Фиг. 14 приведены примеры синтаксических описаний. В число компонентов синтаксических описаний 202 могут входить, среди прочего, поверхностные модели 410, описания поверхностных позиций 420, описание референциального и структурного контроля 456, описание управления и согласования 440, описание недревесного синтаксиса 450 и правила анализа 460. Синтаксические описания 202 могут использоваться для построения возможных синтаксических структур исходного предложения на заданном естественном языке с учетом свободного линейного порядка слов, недревесных синтаксических явлений (например, согласование, эллипсис и т.д.), референциальных отношений и других факторов.[000102] In FIG. 14 are examples of syntactic descriptions. The components of
[000103] Поверхностные модели 410 могут быть представлены в виде совокупностей одной или нескольких синтаксических форм («синтформ» 412) для описания возможных синтаксических структур предложений, входящих в состав синтаксического описания 202. В целом, лексическое значение слова на естественном языке может быть связано с поверхностными (синтаксическими) моделями 410. Поверхностная модель может представлять собой составляющие, которые возможны, если лексическое значение выступает в роли "ядра". Поверхностная модель может включать набор поверхностных позиций дочерних элементов, описание линейного порядка и (или) диатезу. В настоящем документе "диатеза" означает определенное отношение между поверхностными и глубинными позициями и их семантическими ролями, выражаемыми посредством глубинных позиций. Например, диатеза может быть выражаться залогом глагола: если субъект является агентом действия, глагол в активном залоге, а когда субъект является направлением действия, это выражается пассивным залогом глагола.[000103]
[000104] В модели составляющих может использоваться множество поверхностных позиций 415 дочерних составляющих и описаний их линейного порядка 416 для описания грамматических значений 414 возможных заполнителей этих поверхностных позиций. Диатезы 417 представляют собой соответствия между поверхностными позициями 415 и глубинными позициями 514 (как показано на Фиг. 16). Коммуникативные описания 480 описывают коммуникативный порядок в предложении.[000104] A plurality of
[000105] Описание линейного порядка (416) может быть представлено в виде выражений линейного порядка, отражающих последовательность, в которой различные поверхностные позиции (415) могут встречаться в предложении. В число выражений линейного порядка могут входить наименования переменных, имена поверхностных позиций, круглые скобки, граммемы, оператор «оr» (или) и т.д. В качестве иллюстративного примера описание линейного порядка простого предложения "Boys play football" можно представить в виде "Subject Core Object_Direct" (Подлежащее - Ядро - Прямое дополнение), где Subject (Подлежащее), Core (Ядро) и Object_Direct (Прямое дополнение) представляют собой имена поверхностных позиций 415, соответствующих порядку слов.[000105] A description of the linear order (416) can be represented as linear order expressions reflecting the sequence in which various surface positions (415) can occur in the sentence. The expressions of linear order may include the names of variables, the names of surface positions, parentheses, grammes, the operator "or" (or), etc. As an illustrative example, the linear ordering description of the Boys play football simple sentence can be represented as Subject Core Object_Direct, where Subject, Core, Object_Direct are the direct complement names of
[000106] Коммуникативные описания 480 могут описывать порядок слов в синтформе 412 с точки зрения коммуникативных актов, представленных в виде коммуникативных выражений порядка, которые похожи на выражения линейного порядка. Описания управления и согласования 440 может включать правила и ограничения на грамматические значения присоединяемых составляющих, которые используются во время синтаксического анализа.[000106]
[000107] Описания недревесного синтаксиса 450 могут создаваться для отражения различных языковых явлений, таких как эллипсис и согласование, они используются при трансформациях синтаксических структур, которые создаются на различных этапах анализа в различных вариантах реализации изобретения. Описания недревесного синтаксиса 450 могут, среди прочего, включать описание эллипсиса 452, описания согласования 454, а также описания референциального и структурного контроля 430.[000107] Descriptions of
[000108] Правила анализа 460 могут описывать свойства конкретного языка и использоваться в рамках семантического анализа. Правила анализа 460 могут включать правила вычисления семантем 462 и правила нормализации 464. Правила нормализации 464 могут использоваться для описания трансформаций семантических структур, которые могут отличаться в разных языках.[000108]
[000109] На Фиг. 15 приведен пример семантических описаний. Компоненты семантических описаний 204 не зависят от языка и могут, среди прочего, включать семантическую иерархию 510, описания глубинных позиций 520, систему семантем 530 и прагматические описания 540.[000109] In FIG. 15 provides an example of semantic descriptions. The components of
[000110] Ядро семантических описаний может быть представлено семантической иерархией 510, в которую могут входить семантические понятия (семантические сущности), также называемые семантическими классами. Последние могут быть упорядочены в иерархическую структуру, отражающую отношения "родитель-потомок". В целом, дочерний семантический класс может унаследовать одно или более свойств своего прямого родителя и других семантических классов-предков. В качестве иллюстративного примера семантический класс SUBSTANCE (Вещество) является дочерним семантическим классом класса ENTITY (Сущность) и родительским семантическим классом для классов GAS, (Газ), LIQUID (Жидкость), METAL (Металл), WOOD_MATERIAL (Древесина) и т.д.[000110] The core of semantic descriptions can be represented by a
[000111] Каждый семантический класс в семантической иерархии 510 может сопровождаться глубинной моделью 512. Глубинная модель 512 семантического класса может включать множество глубинных позиций 514, которые могут отражать семантические роли дочерних составляющих в различных предложениях с объектами данного семантического класса в качестве ядра родительской составляющей. Глубинная модель 512 также может включать возможные семантические классы, выступающие в роли заполнителей глубинных позиций. Глубинные позиции (514) могут выражать семантические отношения, в том числе, например, "agent" (агенс), "addressee" (адресат), "instrument" (инструмент), "quantity" (количество) и т.д. Дочерний семантический класс может наследовать и уточнять глубинную модель своего непосредственного родительского семантического класса.[000111] Each semantic class in the
[000112] Описания глубинных позиций 520 отражают семантические роли дочерних составляющих в глубинных моделях 512 и могут использоваться для описания общих свойств глубинных позиций 514. Описания глубинных позиций 520 также могут содержать грамматические и семантические ограничения в отношении заполнителей глубинных позиций 514. Свойства и ограничения, связанные с глубинными позициями 514 и их возможными заполнителями в различных языках, могут быть в значительной степени подобными и зачастую идентичными. Таким образом, глубинные позиции 514 не зависят от языка.[000112] The descriptions of the
[000113] Система семантем 530 может представлять собой множество семантических категорий и семантем, которые представляют значения семантических категорий. В качестве иллюстративного примера семантическая категория "DegreeOfComparison" (Степень сравнения) может использоваться для описания степени сравнения прилагательных и включать следующие семантемы: "Positive" (Положительная), "ComparativeHigherDegree" (Сравнительная степень сравнения), "SuperlativeHighestDegree" (Превосходная степень сравнения) и другие. В качестве еще одного иллюстративного примера семантическая категория "RelationToReferencePoint" (Отношение к точке) может использоваться для описания порядка (пространственного или временного в широком смысле анализируемых слов), как, например, до или после точки или события, и включать семантемы "Previous" (Предыдущий) и "Subsequent" (Последующий). В качестве еще одного иллюстративного примера семантическая категория "EvaluationObjective" (Оценка) может использоваться для описания объективной оценки, как, например, "Bad" (Плохой), "Good" (Хороший) и т.д.[000113] The
[000114] Система семантем 530 может включать независимые от языка семантические признакы, которые могут выражать не только семантические характеристики, но и стилистические, прагматические и коммуникативные характеристики. Некоторые семантемы могут использоваться для выражения атомарного значения, которое находит регулярное грамматическое и (или) лексическое выражение в естественном языке. По своему целевому назначению и использованию системы семантем могут разделяться на категории, например, грамматические семантемы 532, лексические семантемы 534 и классифицирующие грамматические (дифференцирующие) семантемы 536.[000114] The
[000115] Грамматические семантемы 532 могут использоваться для описания грамматических свойств составляющих при преобразовании синтаксического дерева в семантическую структуру. Лексические семантемы 534 могут описывать конкретные свойства объектов (например, "being flat" (быть плоским) или "being liquid" (являться жидкостью)) и использоваться в описаниях глубинных позиций 520 как ограничение заполнителей глубинных позиций (например, для глаголов "face (with)" (облицовывать) и "flood" (заливать), соответственно). Классифицирующие грамматические (дифференцирующие) семантемы 536 могут выражать дифференциальные свойства объектов внутри одного семантического класса. В качестве иллюстративного примера в семантическом классе HAIRDRESSER (ПАРИКМАХЕР) семантема <<RelatedToMen>> (Относится к мужчинам) присваивается лексическому значению "barber" в отличие от других лексических значений, которые также относятся к этому классу, например, «hairdresser», «hairstylist» и т.д. Используя данные независимые от языка семантические свойства, которые могут быть выражены в виде элементов семантического описания, в том числе семантических классов, глубинных позиций и семантем, можно извлекать семантическую информацию в соответствии с одним или более аспектами настоящего изобретения.[000115]
[000116] Прагматические описания 540 позволяют назначать определенную тему, стиль или жанр текстам и объектам семантической иерархии 510 (например, «Экономическая политика», «Внешняя политика», «Юриспруденция», «Законодательство», «Торговля», «Финансы» и т.д.). Прагматические свойства также могут выражаться семантемами. В качестве иллюстративного примера прагматический контекст может приниматься во внимание при семантическом анализе.[000116] The pragmatic descriptions of 540 allow you to assign a specific theme, style or genre to the texts and objects of the semantic hierarchy 510 (for example, “Economic Policy”, “Foreign Policy”, “Law”, “Legislation”, “Trade”, “Finance”, etc. .d.). Pragmatic properties can also be expressed by semantems. As an illustrative example, pragmatic context can be taken into account in semantic analysis.
[000117] На Фиг. 16 приведен пример лексических описаний. Лексические описания (203) представляют собой множество лексических значений 612 конкретного естественного языка. Для каждого лексического значения 612 имеется связь 602 с его независимым от языка семантическим родителем для того, чтобы указать положение какого-либо заданного лексического значения в семантической иерархии 510.[000117] In FIG. 16 gives an example of lexical descriptions. Lexical descriptions (203) are the set of
[000118] Лексическое значение 612 в лексико-семантической иерархии 510 может быть соотнесено с поверхностной моделью 410, которая в свою очередь через одну или несколько диатез 417 может быть соотнесена с соответствующей глубинной моделью 512. Лексическое значение 612 может наследовать семантический класс своего родителя и уточнять свою глубинную модель 512.[000118] The
[000119] Поверхностная модель 410 лексического значения может включать одну или несколько синтаксических форм 412. Синтформа 412 поверхностной модели 410 может включать одну или несколько поверхностных позиций 415, в том числе соответствующие описания их линейного порядка 416, одно или несколько грамматических значений 414, выраженных в виде набора грамматических категорий (граммем), одно или несколько семантических ограничений, соотнесенных с заполнителями поверхностных позиций, и одну или несколько диатез 417. Семантические ограничения, соотнесенные с определенным заполнителем поверхностной позиции, могут быть представлены в виде одного или более семантических классов, объекты которых могут заполнить эту поверхностную позицию.[000119] The
[000120] На Фиг. 17 схематически иллюстрируются примеры структур данных, которые могут быть использованы в рамках одного или более методов настоящего изобретения. Снова ссылаясь на Фиг. 10, в блоке 214 вычислительное устройство, реализующее данный способ, может проводить лексико-морфологический анализ предложения 212 для построения лексико-морфологической структуры 722 согласно Фиг. 17. Лексико-морфологическая структура 722 может включать множество соответствий лексического и грамматического значений для каждой лексической единицы (например, слова) исходного предложения. Фиг. 11 схематически иллюстрирует пример лексико-морфологической структуры.[000120] In FIG. 17 schematically illustrates examples of data structures that can be used within the framework of one or more methods of the present invention. Referring again to FIG. 10, in
[000121] Снова возвращаясь к Фиг. 10, в блоке 215 вычислительное устройство может проводить грубый синтаксический анализ исходного предложения 212 для построения графа обобщенных составляющих 732 согласно Фиг. 17. Грубый синтаксический анализ предполагает применение одной или нескольких возможных синтаксических моделей возможных лексических значений к каждому элементу множества элементов лексико-морфологической структуры 722, с тем чтобы установить множество потенциальных синтаксических отношений в составе исходного предложения 212, представленных графом обобщенных составляющих 732.[000121] Returning again to FIG. 10, in
[000122] Граф обобщенных составляющих 732 может быть представлен ациклическим графом, включающим множество узлов, соответствующих обобщенным составляющим исходного предложения 212 и включающим множество дуг, соответствующих поверхностным (синтаксическим) позициям, которые могут выражать различные типы отношений между обобщенными лексическими значениями. В рамках данного способа может применяться множество потенциально применимых синтаксических моделей для каждого элемента множества элементов лексико-морфологических структур исходного предложения 212 для формирования набора составляющих исходного предложения 212. Затем в рамках способа может рассматриваться множество возможных составляющих исходного предложения 212 для построения графа обобщенных составляющих 732 на основе набора составляющих. Граф обобщенных составляющих 732 на уровне поверхностной модели может отражать множество потенциальных связей между словами исходного предложения 212. Поскольку количество возможных синтаксических структур может быть относительно большим, граф обобщенных составляющих 732 может, в общем случае, включать избыточную информацию, в том числе относительно большое число лексических значений по определенным узлам и (или) поверхностных позиций по определенным дугам графа.[000122] The graph of generalized components 732 can be represented by an acyclic graph that includes many nodes corresponding to the generalized components of the
[000123] Граф обобщенных составляющих 732 может изначально строиться в виде дерева, начиная с концевых узлов (листьев) и двигаясь далее к корню, путем добавления дочерних составляющих, заполняющих поверхностные позиции 415 множества родительских составляющих, с тем чтобы были охвачены все лексические единицы исходного предложения 212.[000123] The graph of generalized components 732 can initially be constructed in the form of a tree, starting from end nodes (leaves) and moving further to the root by adding child components filling the surface positions 415 of the set of parent components so that all lexical units of the original sentence are covered 212.
[000124] В некоторых вариантах осуществления корень графа обобщенных составляющих 732 представляет собой предикат. В ходе описанного выше процесса дерево может стать графом, так как определенные составляющие более низкого уровня могут быть включены в одну или несколько составляющих верхнего уровня. Множество составляющих, которые представляют определенные элементы лексико-морфологической структуры, затем может быть обобщено для получения обобщенных составляющих. Составляющие могут быть обобщены на основе их лексических значений или грамматических значений 414, например, на основе частей речи и отношений между ними. На Фиг. 18 схематически иллюстрируется пример графа обобщенных составляющих.[000124] In some embodiments, the root of the graph of generalized components 732 is a predicate. In the process described above, a tree can become a graph, as certain lower-level components can be included in one or more upper-level components. Many components that represent certain elements of the lexical-morphological structure can then be generalized to obtain generalized components. Components can be generalized based on their lexical meanings or
[000125] В блоке 216 вычислительное устройство может проводить точный синтаксический анализ предложения 212 для формирования одного или более синтаксических деревьев 742 согласно Фиг. 17 на основе графа обобщенных составляющих 732. Для каждого синтаксического дерева вычислительное устройство может определить интегральную оценку на основе априорных и вычисляемых оценок. Дерево с наилучшей оценкой может быть выбрано для построения наилучшей синтаксической структуры 746 исходного предложения 212.[000125] At
[000126] В ходе построения синтаксической структуры 746 на основе выбранного синтаксического дерева вычислительное устройство может установить одну или несколько недревесных связей (например, путем создания дополнительной связи среди, по крайней мере, двух узлов графа). Если этот процесс заканчивается неудачей, вычислительное устройство может выбрать синтаксическое дерево с условно оптимальной оценкой, наиболее близкой к оптимальной, и производится попытка установить одну или несколько недревесных связей в дереве. Наконец, в результате точного синтаксического анализа создается синтаксическая структура 746, которая представляет собой лучшую синтаксическую структуру, соответствующую исходному предложению 212. Фактически в результате отбора лучшей синтаксической структуры 746 определяются лучшие лексические значения 240 для элементов исходного предложения 212.[000126] During the construction of the syntax structure 746 based on the selected syntax tree, the computing device can establish one or more non-wood links (for example, by creating an additional link among at least two nodes of the graph). If this process fails, the computing device can select a syntax tree with a conditionally optimal estimate that is closest to the optimal one, and an attempt is made to establish one or more non-wood links in the tree. Finally, as a result of accurate parsing, a syntax structure 746 is created that represents the best syntax structure corresponding to the
[000127] В блоке 217 вычислительное устройство может обрабатывать синтаксические деревья для формирования семантической структуры 218, соответствующей предложению 212. Семантическая структура 218 может отражать передаваемую исходным предложением семантику в независимых от языка терминах. Семантическая структура 218 может быть представлена в виде ациклического графа (например, дерево, возможно, дополненное одной или более недревесной связью (дугой графа). Слова исходного предложения представлены узлами с соответствующими независимыми от языка семантическими классами семантической иерархии 510. Дуги графа представляют глубинные (семантические) отношения между элементами предложения. Переход к семантической структуре 218 может осуществляться с помощью правил анализа 460 и предполагает соотнесение одного или более признаков (отражающих лексические, синтаксические и (или) семантические свойства слов исходного предложения 212) с каждым семантическим классом.[000127] At
[000128] На Фиг. 19 приводится пример синтаксической структуры предложения, сгенерированной из графа обобщенных составляющих, показанного на Фиг. 18. Узел 901 соответствует лексическому элементу "life" (жизнь) 906. Применяя способ описанного в настоящем документе синтактико-семантического анализа, вычислительное устройство может установить, что лексический элемент "life" (жизнь) 906 представляет одну из форм лексического значения, соотнесенного с семантическим классом "LIFE" (ЖИТЬ) 904 и заполняет поверхностную позицию $Adjunct_Locative 905) в родительской составляющей, представленной управляющим узлом Verb:succeed:succeed:TO_SUCCEED (907).[000128] In FIG. 19 is an example of a syntactic structure of a sentence generated from a graph of generalized components shown in FIG. 18.
[000129] На Фиг. 20 приводится семантическая структура, соответствующая синтаксической структуре на Фиг. 19. В отношении вышеупомянутого лексического элемента "life" (жизнь) (906) на Фиг. 19 семантическая структура включает лексический класс 1010 и семантический класс 1030, соответствующие представленным на Фиг. 19, однако вместо поверхностной позиции (905) семантическая структура включает глубинную позицию "Sphere" (сфера_деятельности) 1020.[000129] In FIG. 20 shows a semantic structure corresponding to the syntax structure in FIG. 19. With respect to the aforementioned lexical element “life” (906) in FIG. 19, the semantic structure includes the
[000130] В соответствии с одним или несколькими аспектами настоящего изобретения вычислительное устройство, в котором реализованы описанные в настоящем описании способы, может индексировать один или несколько параметров, полученных в результате семантико-синтаксического анализа. Таким образом, способы настоящего изобретения позволяют рассматривать не только множество слов в составе исходного текстового корпуса, но и множество лексических значений этих слов, сохраняя и индексируя всю синтаксическую и семантическую информацию, полученную в ходе синтаксического и семантического анализа каждого предложения исходного текстового корпуса. Такая информация может дополнительно включать данные, полученные в ходе промежуточных этапов анализа, а также результаты лексического выбора, в том числе результаты, полученные в ходе разрешения неоднозначностей, вызванных омонимией и (или) совпадающими грамматическими формами, соответствующими различным лексико-морфологическим значениям некоторых слов исходного языка.[000130] In accordance with one or more aspects of the present invention, a computing device that implements the methods described herein may index one or more parameters resulting from semantic-syntactic analysis. Thus, the methods of the present invention allow us to consider not only many words in the composition of the original text corpus, but also many lexical meanings of these words, storing and indexing all the syntactic and semantic information obtained in the course of parsing and semantic analysis of each sentence of the original text corpus. Such information may additionally include data obtained during the intermediate stages of the analysis, as well as results of lexical selection, including results obtained during the resolution of ambiguities caused by homonymy and (or) matching grammatical forms corresponding to different lexical and morphological meanings of some words of the original language.
[000131] Для каждой семантической структуры можно создать один или несколько индексов. Индекс можно представить в виде структуры данных в памяти, например, в виде таблицы, состоящей из нескольких записей. Каждая запись может представлять собой установление соответствия между определенным элементом семантической структуры (например, одно слово или несколько слов, синтаксическое отношение, морфологическое, синтаксическое или семантическое свойство или синтаксическая или семантическая структура) и одним или несколькими идентификаторами (или адресами) случаев употребления данного элемента семантической структуры в исходном тексте.[000131] For each semantic structure, one or more indexes can be created. An index can be represented as a data structure in memory, for example, in the form of a table consisting of several records. Each record can be a correspondence between a particular element of the semantic structure (for example, one word or several words, syntactic relation, morphological, syntactic or semantic property or syntactic or semantic structure) and one or more identifiers (or addresses) of the use of this element of semantic structures in the source text.
[000132] В некоторых вариантах осуществления индекс может включать одно или несколько значений морфологических, синтаксических, лексических и (или) семантических параметров. Эти значения могут создаваться в процессе двухэтапного семантического анализа (более подробное описание см. в настоящем документе). Индекс можно использовать для выполнения различных задач обработки естественного языка, в том числе для выполнения семантического поиска.[000132] In some embodiments, the implementation of the index may include one or more values of morphological, syntactic, lexical and (or) semantic parameters. These values can be created during a two-stage semantic analysis (for a more detailed description, see this document). The index can be used to perform various natural language processing tasks, including semantic search.
[000133] Вычислительное устройство, реализующее данный способ, может извлекать широкий спектр лексических, грамматических, синтаксических, прагматических и (или) семантических характеристик в ходе проведения синтактико-семантического анализа и создания семантических структур. В иллюстративном примере система может извлекать и сохранять определенную лексическую информацию, данные о принадлежности определенных лексических единиц семантическим классам, информацию о грамматических формах и линейном порядке, информацию об использовании определенных форм, аспектов, тональности (например, положительной или отрицательной), глубинных позиций, недревесных связей, семантем и т.д.[000133] A computing device that implements this method can extract a wide range of lexical, grammatical, syntactic, pragmatic and (or) semantic characteristics during syntactic-semantic analysis and the creation of semantic structures. In an illustrative example, the system can extract and store certain lexical information, data on the membership of certain lexical units in semantic classes, information on grammatical forms and linear order, information on the use of certain forms, aspects, tonality (for example, positive or negative), deep positions, non-wood connections, semantems, etc.
[000134] Вычислительное устройство, в котором реализованы описанные здесь способы, может производить анализ, используя один или несколько описанных в этом документе способов анализа текста, и индексировать любой один или несколько параметров описаний языка, включая лексические значения, семантические классы, граммемы, семантемы и т.д. Индексацию семантического класса можно использовать в различных задачах обработки естественного языка, включая семантический поиск, классификацию, кластеризацию, фильтрацию текста и т.д. Индексация лексических значений (вместо индексации слов) позволяет искать не только слова и формы слов, но и лексические значения, т.е. слова, имеющие определенные лексические значения. Вычислительное устройство, реализующее способы настоящего изобретения, также может хранить и индексировать синтаксические и семантические структуры, созданные одним или несколькими описанными в настоящем документе способами анализа текста, для использования данных структур и (или) индексов при проведении семантического поиска, классификации, кластеризации и фильтрации документов.[000134] A computing device that implements the methods described herein can analyze using one or more of the text analysis methods described in this document and index any one or more parameters of language descriptions, including lexical values, semantic classes, grammes, semantems, and etc. Indexing a semantic class can be used in various natural language processing tasks, including semantic search, classification, clustering, text filtering, etc. Indexing lexical meanings (instead of indexing words) allows you to search not only words and word forms, but also lexical meanings, i.e. words with certain lexical meanings. A computing device that implements the methods of the present invention can also store and index syntactic and semantic structures created by one or more of the text analysis methods described herein to use these structures and (or) indices for semantic search, classification, clustering and filtering of documents .
[000135] На Фиг. 21 показан иллюстративный приме вычислительного устройства (1000), которое может исполнять набор команд, которые вызывают выполнение вычислительным устройством любого отдельно взятого или нескольких способов настоящего изобретения. Вычислительное устройство может подключаться к другому вычислительному устройству по локальной сети, корпоративной сети, сети экстранет или сети Интернет. Вычислительное устройство может работать в качестве сервера или клиентского вычислительного устройства в сетевой среде "клиент/сервер" либо в качестве однорангового вычислительного устройства в одноранговой (или распределенной) сетевой среде. Вычислительное устройство может быть представлено персональным компьютером (ПК), планшетным ПК, телевизионной приставкой (SТВ), карманным ПК (РDА), сотовым телефоном или любым вычислительным устройством, способным выполнять набор команд (последовательно или иным образом), определяющих операции, которые должны быть выполнены этим вычислительным устройством. Кроме того, в то время как показано только одно вычислительное устройство, следует принять, что термин «вычислительное устройство» также может включать любую совокупность вычислительных устройств, которые отдельно или совместно выполняют набор (или несколько наборов) команд для выполнения одной или нескольких методик, описанных в настоящем документе.[000135] In FIG. 21 shows an illustrative example of a computing device (1000) that can execute a set of instructions that cause the computing device to execute any one or more of the methods of the present invention. A computing device may connect to another computing device via a local area network, a corporate network, an extranet, or the Internet. A computing device can operate as a server or client computing device in a client / server network environment, or as a peer computing device in a peer-to-peer (or distributed) network environment. A computing device can be represented by a personal computer (PC), a tablet PC, a television set-top box (STB), a pocket PC (PDA), a cell phone, or any computing device capable of executing a set of commands (sequentially or otherwise) that define the operations that should be performed by this computing device. In addition, while only one computing device is shown, it should be accepted that the term “computing device” may also include any combination of computing devices that separately or jointly execute a set (or several sets) of instructions to perform one or more of the techniques described in this document.
[000136] Пример вычислительного устройства (1000) включает процессор (502), основную память (504) (например, постоянное запоминающее устройство (ПЗУ) или динамическую оперативную память (DRAM)) и устройство хранения данных (518), которые взаимодействуют друг с другом по шине (530).[000136] An example of a computing device (1000) includes a processor (502), main memory (504) (eg, read only memory (ROM) or dynamic random access memory (DRAM)) and a data storage device (518) that communicate with each other on the bus (530).
[000137] Процессор (502) может быть представлен одним или более универсальными вычислительными устройствами, например, микропроцессором, центральным процессором и т.д. В частности, процессор (502) может представлять собой микропроцессор с полным набором команд (CISC), микропроцессор с сокращенным набором команд (RISC), микропроцессор с командными словами сверхбольшой длины (VLIW), процессор, реализующий другой набор команд, или процессоры, реализующие комбинацию наборов команд. Процессор (502) также может представлять собой одно или несколько вычислительных устройств специального назначения, например, заказную интегральную микросхему (ASIC), программируемую пользователем вентильную матрицу (FPGA), процессор цифровых сигналов (DSP), сетевой процессор и т.п. Процессор (502) настроен на выполнение команд (526) для осуществления рассмотренных в настоящем документе операций и функций.[000137] The processor (502) may be represented by one or more universal computing devices, for example, a microprocessor, a central processor, etc. In particular, the processor (502) may be a full instruction set microprocessor (CISC), an reduced instruction set microprocessor (RISC), an extra long instruction microprocessor (VLIW), a processor implementing another instruction set, or processors implementing a combination command sets. The processor (502) may also be one or more special-purpose computing devices, for example, a custom integrated circuit (ASIC), field programmable gate array (FPGA), digital signal processor (DSP), network processor, and the like. The processor (502) is configured to execute instructions (526) to perform the operations and functions discussed herein.
[000138] Вычислительное устройство (1000) может дополнительно включать устройство сетевого интерфейса (522), устройство визуального отображения (510), устройство ввода символов (512) (например, клавиатуру), и устройство ввода - сенсорный экран (514).[000138] The computing device (1000) may further include a network interface device (522), a visual display device (510), a character input device (512) (eg, a keyboard), and an input device is a touch screen (514).
[000139] Устройство хранения данных (518) может содержать машиночитаемый носитель данных (524), в котором хранится один или более наборов команд (526), и в котором реализован один или более из методов или функций настоящего изобретения. Команды (526) также могут находиться полностью или по меньшей мере частично в основной памяти (504) и/или в процессоре (502) во время выполнения их в вычислительном устройстве (1000), при этом оперативная память (504) и процессор (502) также составляют машиночитаемый носитель данных. Команды (526) дополнительно могут передаваться или приниматься по сети (516) через устройство сетевого интерфейса (522).[000139] The data storage device (518) may comprise a computer-readable storage medium (524) that stores one or more sets of instructions (526) and that implements one or more of the methods or functions of the present invention. The instructions (526) can also be located completely or at least partially in the main memory (504) and / or in the processor (502) while they are being executed in the computing device (1000), with the main memory (504) and the processor (502) also constitute a computer-readable storage medium. Commands (526) can additionally be transmitted or received over the network (516) through a network interface device (522).
[000140] В некоторых вариантах осуществления команды (526) могут включать в себя команды способа (100) классификации текстов на естественном языке уf на основе семантических признаков и/или способа вычисления параметров модели классификации. В то время как машиночитаемый носитель данных (524), показанный на примере на Фиг. 21, является единым носителем, термин «машиночитаемый носитель» должен включать один носитель или несколько носителей (например, централизованную или распределенную базу данных, и/или соответствующие кэши и серверы), в которых хранится один или более наборов команд. Термин "машиночитаемый носитель данных" также следует рассматривать как термин, включающий любой носитель, который способен хранить, кодировать или переносить набор команд для выполнения машиной, который заставляет эту машину выполнять любую одну или несколько из методик, описанных в настоящем раскрытии изобретения. Таким образом, термин «машиночитаемый носитель данных», помимо прочего, также относится к твердотельной памяти и оптическим и магнитным носителям.[000140] In some embodiments, instructions (526) may include instructions of a method (100) for classifying natural language texts уf based on semantic features and / or a method for calculating classification model parameters. While the computer-readable storage medium (524) shown in the example of FIG. 21 is a single medium, the term “machine-readable medium” should include one medium or several mediums (for example, a centralized or distributed database, and / or corresponding caches and servers) that store one or more sets of instructions. The term “computer-readable storage medium” should also be construed as a term that includes any medium that is capable of storing, encoding or transferring a set of instructions for execution by a machine that causes this machine to execute any one or more of the techniques described in this disclosure. Thus, the term “computer-readable storage medium”, among other things, also refers to solid-state memory and optical and magnetic media.
[000141] Описанные в документе способы, компоненты и функции могут быть реализованы дискретными аппаратными компонентами, либо они могут быть интегрированы в функции других аппаратных компонентов, таких как ASICS, FPGA, DSP или подобных устройств. Кроме того, способы, компоненты и функции могут быть реализованы с помощью модулей встроенного программного обеспечения или функциональных схем аппаратных устройств. Способы, компоненты и функции также могут быть реализованы с помощью любой комбинации вычислительных средств и программных компонентов, либо исключительно с помощью программного обеспечения.[000141] The methods, components, and functions described herein may be implemented by discrete hardware components, or they may be integrated into functions of other hardware components, such as ASICS, FPGA, DSP, or similar devices. In addition, methods, components, and functions may be implemented using firmware modules or functional diagrams of hardware devices. The methods, components and functions can also be implemented using any combination of computing tools and software components, or exclusively using software.
[000142] В приведенном выше описании изложены многочисленные детали. Однако специалисту в этой области техники благодаря этому описанию очевидно, что настоящее изобретение может быть реализовано на практике без этих конкретных деталей. В некоторых случаях хорошо известные структуры и устройства показаны в виде блок-схемы, а не детально, чтобы не усложнять описание настоящего изобретения.[000142] In the above description, numerous details are set forth. However, it will be apparent to those skilled in the art from this description that the present invention can be practiced without these specific details. In some cases, well-known structures and devices are shown in block diagram form, and not in detail, so as not to complicate the description of the present invention.
[000143] Некоторые части описания предпочтительных вариантов реализации представлены в виде алгоритмов и символического представления операций с битами данных в памяти компьютера. Такие описания и представления алгоритмов представляют собой средства, используемые специалистами в области обработки данных, чтобы наиболее эффективно передавать сущность своей работы другим специалистам в данной области. В настоящем документе и в целом алгоритмом называется самосогласованная последовательность операций, приводящих к требуемому результату. Операции требуют физических манипуляций с физическими величинами. Обычно, хотя и не обязательно, эти величины принимают форму электрических или магнитных сигналов, которые можно хранить, передавать, комбинировать, сравнивать и подвергать другим манипуляциям. Оказалось, что прежде всего для обычного использования удобно описывать эти сигналы в виде битов, значений, элементов, символов, членов, цифр и т.д.[000143] Some parts of the description of preferred embodiments are presented in the form of algorithms and a symbolic representation of operations with data bits in computer memory. Such descriptions and representations of algorithms represent the means used by specialists in the field of data processing in order to most effectively transfer the essence of their work to other specialists in this field. In this document and in general, an algorithm is a self-consistent sequence of operations leading to the desired result. Operations require physical manipulations with physical quantities. Usually, although not necessarily, these quantities take the form of electrical or magnetic signals that can be stored, transmitted, combined, compared and subjected to other manipulations. It turned out that, first of all, for normal use, it is convenient to describe these signals in the form of bits, values, elements, symbols, members, numbers, etc.
[000144] Однако следует иметь в виду, что все эти и подобные термины должны быть связаны с соответствующими физическими величинами, и что они представляют собой просто удобные метки, применяемые к этим величинам. Если иное специально и недвусмысленно не указано в нижеследующем обсуждении, следует принимать, что везде по тексту такие термины как "определение", "вычисление", "расчет", "вычисление", "получение", "установление", "изменение" и т.п., относятся к действиям и процессам вычислительного устройства или аналогичного электронного вычислительного устройства, которое работает с данными и преобразует данные, представленные в виде физических (например, электронных) величин в регистрах и памяти вычислительного устройства, в другие данные, аналогичным образом представленные в виде физических величин в памяти или регистрах вычислительного устройства, либо других подобных устройствах хранения, передачи или отображения информации.[000144] However, it should be borne in mind that all of these and similar terms should be associated with the corresponding physical quantities, and that they are simply convenient labels that apply to these quantities. Unless otherwise specifically and explicitly indicated in the following discussion, it should be assumed that throughout the text such terms as “definition”, “calculation”, “calculation”, “calculation”, “receipt”, “establishment”, “change”, etc. .p., relate to the actions and processes of a computing device or similar electronic computing device that works with data and converts data represented in the form of physical (e.g. electronic) quantities in the registers and memory of the computing device into other data similar to immediately presented in the form of physical quantities in the memory or registers of a computing device, or other similar devices for storing, transmitting or displaying information.
[000145] Настоящее изобретение также относится к устройству для выполнения операций, описанных в настоящем документе. Такое устройство может быть специально сконструировано для требуемых целей или оно может содержать универсальный компьютер, который избирательно активируется или реконфигурируется с помощью компьютерной программы, хранящейся в компьютере. Такая компьютерная программа может храниться на машиночитаемом носителе данных, таком как, в числе прочих, диск любого рода, в том числе дискеты, оптические диски, компакт-диски, магнитно-оптические диски, постоянные запоминающие устройства (ПЗУ), оперативные запоминающие устройства (ОЗУ), СППЗУ, ЭППЗУ, магнитные или оптические карты и другие виды носителей данных, подходящие для хранения электронных команд.[000145] The present invention also relates to a device for performing the operations described herein. Such a device may be specially designed for the required purposes or it may contain a universal computer that is selectively activated or reconfigured using a computer program stored in the computer. Such a computer program may be stored on a computer-readable storage medium, such as, among others, a disk of any kind, including floppy disks, optical disks, compact disks, magneto-optical disks, read-only memory (ROM), random access memory (RAM) ), EPROM, EEPROM, magnetic or optical cards and other types of storage media suitable for storing electronic commands.
[000146] Следует понимать, что вышеприведенное описание носит иллюстративный, а не ограничительный характер. Различные другие варианты осуществления станут очевидны специалистам в данной области техники после прочтения и понимания приведенного выше описания. Поэтому объем раскрытия должен определяться со ссылкой на прилагаемую формулу изобретения наряду с полным объемом эквивалентов, на которые такие требования предоставляют право.[000146] It should be understood that the above description is illustrative and not restrictive. Various other embodiments will become apparent to those skilled in the art after reading and understanding the above description. Therefore, the scope of disclosure should be determined with reference to the appended claims along with the full scope of equivalents to which such claims are entitled.
Claims (31)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016131180A RU2657173C2 (en) | 2016-07-28 | 2016-07-28 | Sentiment analysis at the level of aspects using methods of machine learning |
US15/238,398 US20180032508A1 (en) | 2016-07-28 | 2016-08-16 | Aspect-based sentiment analysis using machine learning methods |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016131180A RU2657173C2 (en) | 2016-07-28 | 2016-07-28 | Sentiment analysis at the level of aspects using methods of machine learning |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2016131180A RU2016131180A (en) | 2018-02-01 |
RU2657173C2 true RU2657173C2 (en) | 2018-06-08 |
Family
ID=61011605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2016131180A RU2657173C2 (en) | 2016-07-28 | 2016-07-28 | Sentiment analysis at the level of aspects using methods of machine learning |
Country Status (2)
Country | Link |
---|---|
US (1) | US20180032508A1 (en) |
RU (1) | RU2657173C2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2769427C1 (en) * | 2021-04-05 | 2022-03-31 | Анатолий Владимирович Буров | Method for automated analysis of text and selection of relevant recommendations to improve readability thereof |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107330023B (en) * | 2017-06-21 | 2021-02-12 | 北京百度网讯科技有限公司 | Text content recommendation method and device based on attention points |
CN108513175B (en) * | 2018-03-29 | 2020-05-22 | 网宿科技股份有限公司 | Bullet screen information processing method and system |
CN108804512B (en) * | 2018-04-20 | 2020-11-24 | 平安科技(深圳)有限公司 | Text classification model generation device and method and computer readable storage medium |
CN109614460B (en) * | 2018-12-17 | 2023-03-10 | 北京北大软件工程股份有限公司 | Method and device for processing legal data, storage medium and electronic equipment |
CN109918508A (en) * | 2019-03-08 | 2019-06-21 | 成都场量科技有限公司 | User's portrait generation method based on web crawlers acquisition technique |
CN110059192A (en) * | 2019-05-15 | 2019-07-26 | 北京信息科技大学 | Character level file classification method based on five codes |
CN110210024B (en) | 2019-05-28 | 2024-04-02 | 腾讯科技(深圳)有限公司 | Information processing method, device and storage medium |
CN110377915B (en) * | 2019-07-25 | 2022-11-29 | 腾讯科技(深圳)有限公司 | Text emotion analysis method and device, storage medium and equipment |
CN110738057B (en) * | 2019-09-05 | 2023-10-24 | 中山大学 | Text style migration method based on grammar constraint and language model |
CN111160037B (en) * | 2019-12-02 | 2021-10-26 | 广州大学 | Fine-grained emotion analysis method supporting cross-language migration |
CN111046185B (en) * | 2019-12-16 | 2023-02-24 | 重庆邮电大学 | Method, device and terminal for extracting knowledge graph relation of text information |
CN111191463A (en) * | 2019-12-30 | 2020-05-22 | 杭州远传新业科技有限公司 | Emotion analysis method and device, electronic equipment and storage medium |
US11194971B1 (en) | 2020-03-05 | 2021-12-07 | Alexander Dobranic | Vision-based text sentiment analysis and recommendation system |
CN112800184B (en) * | 2021-01-13 | 2021-08-06 | 华东师范大学 | Short text comment emotion analysis method based on Target-Aspect-Opinion joint extraction |
CN112989797B (en) * | 2021-03-10 | 2023-11-14 | 北京百度网讯科技有限公司 | Model training and text expansion methods, devices, equipment and storage medium |
US11886825B2 (en) * | 2021-03-31 | 2024-01-30 | Adobe, Inc. | Aspect-based sentiment analysis |
CN113076490B (en) * | 2021-04-25 | 2023-03-24 | 昆明理工大学 | Case-related microblog object-level emotion classification method based on mixed node graph |
US11853706B2 (en) * | 2021-05-17 | 2023-12-26 | Salesforce.Com, Inc. | Generative language model for few-shot aspect-based sentiment analysis |
US11675823B2 (en) * | 2021-10-13 | 2023-06-13 | Dell Products L.P. | Sentiment analysis for aspect terms extracted from documents having unstructured text data |
US20230230403A1 (en) * | 2021-12-06 | 2023-07-20 | Hanzifinder Llc | Systems and methods for representing and searching characters |
ES2933625A1 (en) * | 2022-10-29 | 2023-02-10 | Kallisto Ai Sl | METHOD AND SYSTEM USING GENERAL ARTIFICIAL INTELLIGENCE TECHNIQUES FOR USER SEGMENTATION (Machine-translation by Google Translate, not legally binding) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090193328A1 (en) * | 2008-01-25 | 2009-07-30 | George Reis | Aspect-Based Sentiment Summarization |
US20100280985A1 (en) * | 2008-01-14 | 2010-11-04 | Aptima, Inc. | Method and system to predict the likelihood of topics |
US20110137851A1 (en) * | 2009-10-15 | 2011-06-09 | Crescendo Bioscience | Biomarkers and methods for measuring and monitoring inflammatory disease activity |
US20130018824A1 (en) * | 2011-07-11 | 2013-01-17 | Accenture Global Services Limited | Sentiment classifiers based on feature extraction |
US20150057992A1 (en) * | 2006-10-10 | 2015-02-26 | Abbyy Infopoisk Llc | Exhaustive automatic processing of textual information |
RU2571373C2 (en) * | 2014-03-31 | 2015-12-20 | Общество с ограниченной ответственностью "Аби ИнфоПоиск" | Method of analysing text data tonality |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7885952B2 (en) * | 2006-12-20 | 2011-02-08 | Microsoft Corporation | Cloaking detection utilizing popularity and market value |
US10275454B2 (en) * | 2014-10-13 | 2019-04-30 | International Business Machines Corporation | Identifying salient terms for passage justification in a question answering system |
US9690772B2 (en) * | 2014-12-15 | 2017-06-27 | Xerox Corporation | Category and term polarity mutual annotation for aspect-based sentiment analysis |
US20160260108A1 (en) * | 2015-03-05 | 2016-09-08 | David Brian Bracewell | Occasion-based consumer analytics |
US9633007B1 (en) * | 2016-03-24 | 2017-04-25 | Xerox Corporation | Loose term-centric representation for term classification in aspect-based sentiment analysis |
-
2016
- 2016-07-28 RU RU2016131180A patent/RU2657173C2/en active
- 2016-08-16 US US15/238,398 patent/US20180032508A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150057992A1 (en) * | 2006-10-10 | 2015-02-26 | Abbyy Infopoisk Llc | Exhaustive automatic processing of textual information |
US20100280985A1 (en) * | 2008-01-14 | 2010-11-04 | Aptima, Inc. | Method and system to predict the likelihood of topics |
US20090193328A1 (en) * | 2008-01-25 | 2009-07-30 | George Reis | Aspect-Based Sentiment Summarization |
US20110137851A1 (en) * | 2009-10-15 | 2011-06-09 | Crescendo Bioscience | Biomarkers and methods for measuring and monitoring inflammatory disease activity |
US20130018824A1 (en) * | 2011-07-11 | 2013-01-17 | Accenture Global Services Limited | Sentiment classifiers based on feature extraction |
RU2571373C2 (en) * | 2014-03-31 | 2015-12-20 | Общество с ограниченной ответственностью "Аби ИнфоПоиск" | Method of analysing text data tonality |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2769427C1 (en) * | 2021-04-05 | 2022-03-31 | Анатолий Владимирович Буров | Method for automated analysis of text and selection of relevant recommendations to improve readability thereof |
Also Published As
Publication number | Publication date |
---|---|
US20180032508A1 (en) | 2018-02-01 |
RU2016131180A (en) | 2018-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2657173C2 (en) | Sentiment analysis at the level of aspects using methods of machine learning | |
RU2635257C1 (en) | Sentiment analysis at level of aspects and creation of reports using machine learning methods | |
RU2619193C1 (en) | Multi stage recognition of the represent essentials in texts on the natural language on the basis of morphological and semantic signs | |
RU2628431C1 (en) | Selection of text classifier parameter based on semantic characteristics | |
RU2662688C1 (en) | Extraction of information from sanitary blocks of documents using micromodels on basis of ontology | |
RU2628436C1 (en) | Classification of texts on natural language based on semantic signs | |
RU2637992C1 (en) | Method of extracting facts from texts on natural language | |
RU2626555C2 (en) | Extraction of entities from texts in natural language | |
RU2646386C1 (en) | Extraction of information using alternative variants of semantic-syntactic analysis | |
US10691891B2 (en) | Information extraction from natural language texts | |
RU2636098C1 (en) | Use of depth semantic analysis of texts on natural language for creation of training samples in methods of machine training | |
RU2607976C1 (en) | Extracting information from structured documents containing text in natural language | |
RU2679988C1 (en) | Extracting information objects with the help of a classifier combination | |
RU2686000C1 (en) | Retrieval of information objects using a combination of classifiers analyzing local and non-local signs | |
RU2640297C2 (en) | Definition of confidence degrees related to attribute values of information objects | |
RU2697647C1 (en) | System and method for automatic creation of templates | |
RU2618374C1 (en) | Identifying collocations in the texts in natural language | |
US20200342059A1 (en) | Document classification by confidentiality levels | |
RU2639655C1 (en) | System for creating documents based on text analysis on natural language | |
RU2646380C1 (en) | Using verified by user data for training models of confidence | |
Ajitha et al. | Design of text sentiment analysis tool using feature extraction based on fusing machine learning algorithms | |
RU2665261C1 (en) | Recovery of text annotations related to information objects | |
RU2681356C1 (en) | Classifier training used for extracting information from texts in natural language | |
RU2640718C1 (en) | Verification of information object attributes | |
RU2691855C1 (en) | Training classifiers used to extract information from natural language texts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
HE9A | Changing address for correspondence with an applicant | ||
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 |