Сентиментный анализ на уровне аспектов и создание отчетов с использованием методов машинного обучения

Иллюстрации

Показать все

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

Реферат

ОБЛАСТЬ ИЗОБРЕТЕНИЯ

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

УРОВЕНЬ ТЕХНИКИ

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

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

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

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

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

Техническим результатом данного изобретения является расширение результатов технических средств сентиментного анализа на уровне аспектов.

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

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

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

[0008] На Фиг. 2 приведен пример текста на естественном языке для использования в примере способа сентиментного анализа на уровне аспектов в соответствии с одним или несколькими аспектами настоящего изобретения.

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

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

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

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

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

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

[00015] На Фиг. 9 приведены результаты примера разметки текста, приведенного на Фиг. 8 в соответствии с одним или более аспектами настоящего изобретения.

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

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

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

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

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

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

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

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

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

[00025] На Фиг. 19 показан пример синтаксической структуры, соответствующей предложению, приведенному на Фиг. 18.

[00026] На Фиг. 20 показана семантическая структура, соответствующая синтаксической структуре на Фиг. 19.

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

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

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

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

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

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

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

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

[00034] На втором этапе процесса определяется тональность, связанная с каждым выявленным аспектным термином. В некоторых реализациях изобретения второй этап может включать вычисление одной или нескольких функций-классификаторов, возвращающих тональность, связанную с данным аспектным термином. Функция-классификатор может реализовывать различные методы машинного обучения, такие как линейные классификаторы, классификаторы на основе дерева прямых потомков, классификаторы на основе случайного леса, классификаторы на основе условных случайных полей (CRF), классификаторы на основе латентного размещения Дирихле (LDA), классификаторы на основе метода опорных векторов (SVM) и (или) классификаторы на основе нейронных сетей (например, Word2Vec), как более подробно описано ниже в этом документе.

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

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

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

[00038] В блоке 110 вычислительная система, реализующая способ 100, может выполнять синтактико-семантический анализ исходного текста 101 на естественном языке, который может быть представлен, например, одним или несколькими отзывами потребителей об одной или нескольких целевых сущностях (например, потребительских товарах или услугах). На Фиг. 2 приведен пример текста 211 на естественном языке, представляющий отзыв потребителя о смартфоне. В различных иллюстративных примерах отзыв потребителя необязательно включает идентификатор целевой сущности (например, марку и модель определенного устройства), тем не менее, соответствующую связь можно вывести из метаданных, связанных с отзывом потребителя (например, отзыв может быть связан с категорией, имеющей заголовок, который определяет целевую сущность).

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

[00040] Синтактико-семантический анализ может давать для каждого предложения в тексте на естественном языке по крайней мере одну не зависящую от языка синтактико-семантическую структуру 102, как описано более подробно ниже со ссылками на Фиг. 5-15. В некоторых вариантах реализации изобретения синтактико-семантический анализ может использовать пользовательский словарь, который может содержать список лексем, которые могут использоваться в анализируемом тексте на естественном языке для ссылки на целевые сущности (например, потребительские товары или услуги). В иллюстративном примере пользовательский словарь может содержать список марок автомобилей, включая возможные разговорные вариации, такие как «Шевроле» и «Шеви».

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

[00042] Для облегчения идентификации аспектных терминов в анализируемом тексте на естественном языке семантическая иерархия, которая используется при синтактико-семантическом анализе текста на естественном языке, может быть дополнена путем ассоциирования некоторых лексических классов 315 с пользовательскими прагматическими классами 317, указывающими на то, что лексемы, представленные экземплярами этих лексических классов, могут использоваться в качестве аспектных терминов, указывающих на определенный аспект. В некоторых вариантах реализации изобретения пользовательский прагматический класс может иметь несколько подклассов для дополнительного указания на тип аспекта, с которым связаны экземпляры соответствующего лексического класса. В различных иллюстративных примерах подклассы пользовательского прагматического класса могут указывать на то, что лексема, представленная экземпляром соответствующего лексического класса, представляет характеристику, компонент или функцию соответствующей сущности. В другом иллюстративном примере подкласс пользовательского прагматического класса может указывать на то, что лексема, представленная экземпляром соответствующего лексического класса, представляет характеристику, компонент или функцию соответствующей сущности имплицитно, при этом тональность может подразумеваться самим аспектным термином (например, «высокие обороты (RPM)»). В противном случае, если тональность не определяется аспектным термином и может быть определена только путем анализа контекста аспектного термина, аспектный термин может называться «эксплицитным».

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

[00044] В блоке 130 вычислительная система может определять тональности выявленных аспектных терминов. В иллюстративном примере тональность может быть отрицательной (-1), нейтральной (0) или положительной (+1). В различных других иллюстративных примерах могут использоваться другие числовые шкалы и/или вербальные обозначения тональностей.

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

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

[00047] На Фиг. 4 схематично показан пример способа интерпретации семантических структур с использованием набора продукционных правил в соответствии с одним или несколькими аспектами настоящего изобретения. Способ 400 и (или) каждая из его отдельных функций, процедур, подпрограмм или операций может быть реализована с помощью одного или более процессоров вычислительной системы (например, вычислительной системы 400 на Фиг. 4), в которой реализован этот способ. В некоторых вариантах реализации способ 400 может выполняться в одном потоке обработки. При альтернативном подходе способ 400 может быть реализован с помощью двух или более потоков обработки, при этом каждый поток выполняет одну или более отдельных функций, стандартных программ, подпрограмм или операций данного способа. В иллюстративном примере потоки обработки, реализующие способ 400, могут быть синхронизированы (например, с помощью семафоров, критических секций и/или других механизмов синхронизации потоков). В качестве альтернативы, потоки обработки, реализующие способ 400, могут выполняться асинхронно по отношению друг к другу. Поэтому, хотя Фиг. 4 и соответствующее описание содержат операции способа 400 в определенном порядке, различные варианты реализации способа могут выполнять по крайней мере некоторые из перечисленных операций, параллельно и (или) в произвольно выбранном порядке.

[00048] В некоторых реализациях изобретения объекты данных, представляющие выявленные аспекты целевых сущностей, могут быть представлены графом RDF-графом (Resource Definition Framework). RDF присваивает уникальный идентификатор каждому информационному объекту и сохраняет информацию о таком объекте в виде триплетов SPO, где S обозначает «субъект» и содержит идентификатор объекта, Р обозначает «предикат» и определяет некоторое свойство этого объекта, а О обозначает «объект» и сохраняет значение этого свойства данного объекта. Это значение может быть как примитивным типом данных (строкой, числом, булевым значением), так и идентификатором другого объекта. В одном из иллюстративных примеров триплет SPO может ассоциировать токен из текста на естественном языке с аспектом целевой сущности.

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

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

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

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

[00053] На Фиг. 4 в блоке 410 вычислительная система, реализующая способ 400, может получать множество синтактико-семантических структур, представляющих анализируемые предложения из текста на естественном языке.

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

[00055] В блоках 430-450 вычислительная система может выполнять итерации над выявленными совпадающими экземплярами, которые могут быть организованы в очередь и связаны с классом приоритета (например, на основе класса приоритета, ассоциированного с правилами интерпретации, которые запускают соответствующие совпадающие экземпляры). В блоке 430 вычислительная система может проверить предположение о том, что очередь совпадающих экземпляров пуста, если это так, способ может перейти к блоку 470, в противном случае в блоке 440, вычислительная система может возвратить из очереди совпадающий экземпляр с самым высоким рейтингом.

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

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

[00058] После определения в блоке 470 неудачи попытки добавления в «мешок утверждений», связанных с анализируемым текстом на естественном языке, логического выражения, полученного в блоке 450, способ может вернуться к блоку 430; в противном случае способ может вернуться к блоку 420.

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

[00060] На Фиг. 5 приведены примеры продукционных правил, которые могут использоваться для выявления аспектных терминов в соответствии с одним или несколькими аспектами настоящего изобретения. Правило 510 может использоваться для выявления имплицитного аспекта. Правило 520 может использоваться для выявления имплицитного аспекта. Правило 530 может использоваться для слияния эксплицитных аспектов. Правило 540 может использоваться для выявления имплицитного аспекта, отражающего указание потребителя на то, что использование продукта вызывает боль в спине. Правило 550 может использоваться для выявления имплицитного аспекта, отражающего указание потребителя на то, что необходимо заменить часть продукта.

[00061] На Фиг. 6 приведены некоторые примеры продукционных правил, которые могут использоваться для определения тональности аспектного термина в соответствии с одним или несколькими аспектами настоящего изобретения. Правило 610 может использоваться для выявления тональностей, связанных с некоторыми аспектами, относящимися к пассажирским автомобилям.

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

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

[00064] - семантический класс, связанный с выявленной базовой составляющей, представляющей аспектный термин (например, HUMAN, BE, EMOTINOS_AND_THEMOTIONAL_ATTITUDE, INSIDE_PART);

[00065] - прагматический класс, связанный с выявленной базовой составляющей, представляющей аспектный термин (например, DigitalNumbers, Person, Positive, NormalPolarityDependence);

[00066] - не зависящую от языка глубинную позицию, связанную с выявленной базовой составляющей, представляющей аспектный термин;

[00067] - зависимую от языка поверхностную позицию, связанную с выявленной базовой составляющей, представляющей аспектный термин;

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

[00069] - семантема, связанная с аспектным термином (например, PolarityPlus, NonPolarityMinus);

[00070] - шаблон капитализации, определяющий использование прописных букв в аспектном термине (например, АаАаА, АААА); и (или)

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

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

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

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

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

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

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

[00078] На Фиг. 7 показана блок-схема примера способа 700 интерактивного сентиментного анализа на уровне аспектов в тексте на естественном языке в соответствии с одним или более аспектами настоящего изобретения. Способ 700 и (или) каждая из его отдельных функций, стандартных программ, подпрограмм или операций могут выполняться одним или несколькими процессорами вычислительной системы (например, вычислительная система 700 на Фиг. 7), реализующей этот способ. В некоторых реализациях способ 700 может быть реализован в одном потоке обработки. При альтернативном подходе способ 700 может быть реализован двумя или более потоками обработки, при этом в каждом потоке реализована одна или несколько отдельных функций, процедур, подпрограмм или операций этого способа. В иллюстративном примере потоки обработки, реализующие способ 700, могут быть синхронизированы (например, с помощью семафоров, критических секций и/или других механизмов синхронизации потоков). Кроме того, потоки обработки, реализующие способ 700, могут выполняться асинхронно друг относительно друга. Таким образом, несмотря на то что Фиг. 7 и соответствующее описание содержат список операций для способа 700 в определенном порядке, в различных вариантах осуществления способа по крайней мере некоторые из описанных операций могут выполняться параллельно и (или) в случайно выбранном порядке.

[00079] В блоке 710 вычислительная система, реализующая способ 700, может получать исходные данные, определяющие одну или несколько лексем, которые могут использоваться в анализируемом тексте на естественном языке по отношению к целевым сущностям (например, потребительским товарам или услугам). В одном из иллюстративных примеров пользовательский словарь может включать список терминов, которые могут использоваться по отношению к конкретной марке или модели определенного устройства (например, «iPhone 6», «iPhone шестого поколения», «iPhone последней модели» и т.д.). Дополнительно или в качестве альтернативного варианта вводимые пол