Анализ настроений (также известный как анализ мнений или ИИ эмоций ) — это использование обработки естественного языка , анализа текста , вычислительной лингвистики и биометрии для систематического выявления, извлечения, количественной оценки и изучения аффективных состояний и субъективной информации. Анализ настроений широко применяется к материалам, выражающим мнение клиента, таким как обзоры и ответы на опросы, онлайн- и социальные сети, а также к материалам здравоохранения для приложений, которые варьируются от маркетинга до обслуживания клиентов и клинической медицины. С появлением глубоких языковых моделей, таких как RoBERTa , также можно анализировать более сложные домены данных, например, новостные тексты, где авторы обычно выражают свое мнение/настроения менее явно. [1]
Основная задача анализа настроений — классификация полярности данного текста на уровне документа, предложения или признака/аспекта — независимо от того, является ли выраженное мнение в документе, предложении или признаке/аспекте сущности положительным, отрицательным или нейтральным. Расширенная, «внеполярная» классификация настроений рассматривает, например, такие эмоциональные состояния, как удовольствие, гнев, отвращение, печаль, страх и удивление. [2]
Предшественниками сентиментального анализа являются General Inquirer [3] , который дал подсказки относительно количественной оценки закономерностей в тексте, и, отдельно, психологические исследования, которые изучали психологическое состояние человека на основе анализа его вербального поведения. [4]
Впоследствии метод, описанный в патенте Волкани и Фогеля, [5] рассматривал конкретно сентимент и идентифицировал отдельные слова и фразы в тексте относительно различных эмоциональных шкал. Текущая система, основанная на их работе, называемая EffectCheck, представляет синонимы, которые могут быть использованы для увеличения или уменьшения уровня вызванных эмоций в каждой шкале.
Многие другие последующие попытки были менее сложными, используя простое полярное представление настроений, от положительного до отрицательного, например, работа Терни [6] и Панга [7], которые применили различные методы для определения полярности обзоров продуктов и обзоров фильмов соответственно. Эта работа находится на уровне документа. Можно также классифицировать полярность документа по многофакторной шкале, что было предпринято Пангом [8] и Снайдером [9] среди прочих: Панг и Ли [8] расширили базовую задачу классификации обзора фильма как положительного или отрицательного, чтобы предсказать рейтинги по 3- или 4-звездочной шкале, в то время как Снайдер [9] провел углубленный анализ обзоров ресторанов, предсказав рейтинги для различных аспектов данного ресторана, таких как еда и атмосфера (по пятизвездочной шкале).
Первые шаги к объединению различных подходов — обучающего, лексического, основанного на знаниях и т. д. — были сделаны на весеннем симпозиуме AAAI 2004 года , где лингвисты, специалисты по информатике и другие заинтересованные исследователи впервые объединили свои интересы и предложили общие задачи и контрольные наборы данных для систематического вычислительного исследования аффекта, привлекательности, субъективности и настроений в тексте. [10]
Несмотря на то, что в большинстве статистических методов классификации нейтральный класс игнорируется в предположении, что нейтральные тексты лежат вблизи границы бинарного классификатора, некоторые исследователи предполагают, что, как и в каждой проблеме полярности, необходимо выделить три категории. Более того, можно доказать, что определенные классификаторы, такие как Max Entropy [11] и SVM [12], могут выиграть от введения нейтрального класса и повысить общую точность классификации. В принципе, существует два способа работы с нейтральным классом. Либо алгоритм сначала идентифицирует нейтральный язык, отфильтровывает его, а затем оценивает остальное с точки зрения положительных и отрицательных настроений, либо он строит трехфакторную классификацию за один шаг. [13] Этот второй подход часто включает оценку распределения вероятностей по всем категориям (например, наивные байесовские классификаторы, реализованные NLTK ). Использование нейтрального класса и то, как его использовать, зависит от характера данных: если данные четко сгруппированы в нейтральный, негативный и позитивный язык, имеет смысл отфильтровать нейтральный язык и сосредоточиться на полярности между позитивными и негативными чувствами. Если же, напротив, данные в основном нейтральны с небольшими отклонениями в сторону позитивного и негативного аффекта, эта стратегия затруднит четкое различие между двумя полюсами.
Другой метод определения настроения заключается в использовании системы шкалы, при которой словам, обычно связанным с наличием негативного, нейтрального или позитивного настроения, присваивается соответствующее число по шкале от −10 до +10 (от самого негативного до самого позитивного) или просто от 0 до положительного верхнего предела, такого как +4. Это позволяет корректировать настроение данного термина относительно его окружения (обычно на уровне предложения). Когда фрагмент неструктурированного текста анализируется с использованием обработки естественного языка , каждому понятию в указанной среде присваивается оценка, основанная на том, как слова настроения соотносятся с понятием и его ассоциированной оценкой. [14] [15] Это позволяет перейти к более сложному пониманию настроения, поскольку теперь можно корректировать значение настроения понятия относительно модификаций, которые могут его окружать. Например, слова, которые усиливают, ослабляют или отрицают настроение, выраженное понятием, могут влиять на его оценку. В качестве альтернативы текстам можно присвоить положительную и отрицательную оценку силы настроения, если целью является определение настроения в тексте, а не общая полярность и сила текста. [16]
Существуют и другие типы анализа настроений, такие как анализ настроений на основе аспектов, градационный анализ настроений (положительный, отрицательный, нейтральный), многоязычный анализ настроений и выявление эмоций.
Эта задача обычно определяется как классификация заданного текста (обычно предложения) в один из двух классов: объективный или субъективный. [17] Эта проблема иногда может быть сложнее, чем классификация полярности. [18] Субъективность слов и фраз может зависеть от их контекста, а объективный документ может содержать субъективные предложения (например, новостная статья, цитирующая мнения людей). Более того, как упоминал Су, [19] результаты во многом зависят от определения субъективности, используемого при аннотировании текстов. Однако Панг [20] показал, что удаление объективных предложений из документа перед классификацией его полярности помогло улучшить производительность.
Субъективная и объективная идентификация, возникающие подзадачи анализа настроений для использования синтаксических, семантических признаков и знаний машинного обучения для определения того, содержит ли предложение или документ факты или мнения. Осознание распознавания фактов и мнений не является новым, возможно, впервые представленным Карбонеллом в Йельском университете в 1979 году. [ уточнить ]
Термин «объективный» относится к инциденту, несущему фактическую информацию. [21]
Термин «субъективный» описывает инцидент, содержащий нефактическую информацию в различных формах, таких как личные мнения, суждения и прогнозы, также известные как «частные состояния». [22] В примере ниже он отражает частное состояние «Мы, американцы». Более того, целевая сущность, комментируемая мнениями, может принимать различные формы от материального продукта до нематериальных тем, изложенных в Лю (2010). [23] Кроме того, Лю (2010) наблюдал три типа отношения: 1) положительные мнения, 2) нейтральные мнения и 3) отрицательные мнения. [23]
Этот анализ представляет собой проблему классификации. [24]
Определены коллекции слов или фразовых индикаторов каждого класса для поиска желаемых шаблонов в неаннотированном тексте. Для субъективного выражения был создан другой список слов. Списки субъективных индикаторов в словах или фразах были разработаны несколькими исследователями в области лингвистики и обработки естественного языка в Riloff et al. (2003). [25] Для измерения заданных выражений необходимо создать словарь правил извлечения. За эти годы в субъективном обнаружении извлечение признаков прогрессировало от ручного отбора признаков до автоматизированного обучения признакам. В настоящее время автоматизированные методы обучения могут далее разделяться на контролируемое и неконтролируемое машинное обучение . Извлечение шаблонов с помощью процесса машинного обучения аннотированного и неаннотированного текста широко изучалось академическими исследователями.
Однако исследователи признали несколько проблем в разработке фиксированных наборов правил для выражений, которые будут приличными. Большая часть проблем в разработке правил проистекает из природы текстовой информации. Несколько исследователей признали шесть проблем: 1) метафорические выражения, 2) несоответствия в письменных текстах, 3) контекстно-зависимые, 4) представленные слова с меньшим количеством употреблений, 5) временные, и 6) постоянно растущий объем.
Ранее исследования в основном фокусировались на классификации на уровне документа. Однако классификация на уровне документа страдает меньшей точностью, поскольку статья может содержать различные типы выражений. Исследование доказательств предполагает набор новостных статей, которые, как ожидается, будут доминировать по объективному выражению, тогда как результаты показывают, что он состоял из более чем 40% субъективного выражения. [21]
Чтобы преодолеть эти проблемы, исследователи пришли к выводу, что эффективность классификатора зависит от точности обучающегося шаблона. А обучающийся, получающий большие объемы аннотированных обучающих данных, превзошел тех, кто обучался на менее полных субъективных признаках. Однако одним из главных препятствий для выполнения этого типа работы является ручная генерация большого набора данных аннотированных предложений. Метод ручного аннотирования был менее популярен, чем автоматическое обучение по трем причинам:
Все эти упомянутые причины могут влиять на эффективность и результативность субъективной и объективной классификации. Соответственно, были разработаны два метода бутстраппинга для изучения лингвистических моделей из неаннотированных текстовых данных. Оба метода начинаются с нескольких исходных слов и неаннотированных текстовых данных.
В целом эти алгоритмы подчеркивают необходимость автоматического распознавания и извлечения образов в субъективных и объективных задачах.
Субъективный и объектный классификатор может улучшить несколько приложений обработки естественного языка. Одним из основных преимуществ классификатора является то, что он популяризировал практику принятия решений на основе данных в различных отраслях. По словам Лю, приложения субъективной и объективной идентификации были реализованы в бизнесе, рекламе, спорте и социальных науках. [30]
Это относится к определению мнений или настроений, выраженных по различным функциям или аспектам сущностей, например, мобильного телефона, цифровой камеры или банка. [35] Функция или аспект — это атрибут или компонент сущности, например, экран мобильного телефона, обслуживание в ресторане или качество изображения камеры. Преимущество анализа настроений на основе функций заключается в возможности улавливать нюансы относительно интересующих объектов. Различные функции могут генерировать различные ответы настроений, например, отель может иметь удобное расположение, но посредственную еду. [36] Эта проблема включает в себя несколько подзадач, например, идентификацию соответствующих сущностей, извлечение их функций/аспектов и определение того, является ли мнение, выраженное по каждой функции/аспекту, положительным, отрицательным или нейтральным. [37] Автоматическая идентификация функций может быть выполнена с помощью синтаксических методов, с помощью моделирования тем , [38] [39] или с помощью глубокого обучения . [40] [41] Более подробное обсуждение этого уровня анализа настроений можно найти в работе Лю. [23]
Эмоции и настроения субъективны по своей природе. Степень эмоций/настроений, выраженных в данном тексте на уровне документа, предложения или признака/аспекта — то, в какой степени интенсивность выражена в мнении о документе, предложении или сущности, отличается в каждом конкретном случае. [42] Однако прогнозирование только эмоций и настроений не всегда передает полную информацию. Степень или уровень эмоций и настроений часто играет решающую роль в понимании точного чувства в пределах одного класса (например, «хорошо» или «потрясающе»). Некоторые методы используют метод сложенного ансамбля [43] для прогнозирования интенсивности эмоций и настроений путем объединения полученных выходных данных и использования моделей глубокого обучения на основе сверточных нейронных сетей , [44] сетей с долговременной краткосрочной памятью и рекуррентных единиц с гейтом . [45]
Существующие подходы к анализу настроений можно сгруппировать в три основные категории: методы, основанные на знаниях, статистические методы и гибридные подходы. [46] Методы, основанные на знаниях, классифицируют текст по категориям аффекта на основе наличия однозначных слов аффекта, таких как счастливый, грустный, испуганный и скучающий. [47] Некоторые базы знаний не только перечисляют очевидные слова аффекта, но и назначают произвольным словам вероятное «сродство» к определенным эмоциям. [48] Статистические методы используют элементы машинного обучения , такие как латентный семантический анализ , машины опорных векторов , « мешок слов », « точечная взаимная информация » для семантической ориентации, [6] модели семантического пространства или модели встраивания слов , [49] и глубокое обучение . Более сложные методы пытаются обнаружить держателя тональности (т. е. человека, который поддерживает это аффективное состояние) и цель (т. е. сущность, в отношении которой ощущается аффект). [50] Чтобы добыть мнение в контексте и получить характеристику, о которой высказал мнение говорящий, используются грамматические связи слов. Грамматические зависимости отношений получаются путем глубокого анализа текста. [51] Гибридные подходы используют как машинное обучение, так и элементы из представления знаний, такие как онтологии и семантические сети , чтобы обнаружить семантику, которая выражена тонким образом, например, посредством анализа концепций, которые явно не передают релевантную информацию, но которые неявно связаны с другими концепциями, которые это делают. [52]
Инструменты программного обеспечения с открытым исходным кодом, а также ряд бесплатных и платных инструментов анализа настроений используют машинное обучение , статистику и методы обработки естественного языка для автоматизации анализа настроений в больших коллекциях текстов, включая веб-страницы, онлайн-новости, интернет-дискуссионные группы, онлайн-обзоры, веб-блоги и социальные сети. [53] Системы, основанные на знаниях, с другой стороны, используют общедоступные ресурсы для извлечения семантической и аффективной информации, связанной с концепциями естественного языка. Система может помочь выполнить аффективное рассуждение здравого смысла . [54] Анализ настроений также может быть выполнен на визуальном контенте, т. е. изображениях и видео (см. Мультимодальный анализ настроений ). Одним из первых подходов в этом направлении является SentiBank [55], использующий представление визуального контента в виде пары прилагательное-существительное. Кроме того, подавляющее большинство подходов к классификации настроений основано на модели «мешок слов», которая игнорирует контекст, грамматику и даже порядок слов . Подходы, анализирующие настроение на основе того, как слова составляют значение более длинных фраз, показали лучшие результаты [56] , но они влекут за собой дополнительные накладные расходы на аннотацию.
Для анализа настроений необходим компонент человеческого анализа, поскольку автоматизированные системы не способны анализировать исторические тенденции отдельного комментатора или платформы и часто неправильно классифицируются в выраженном ими настроении. Автоматизация влияет примерно на 23% комментариев, которые правильно классифицируются людьми. [57] Однако люди часто не соглашаются, и утверждается, что межчеловеческое соглашение обеспечивает верхнюю границу, которую автоматизированные классификаторы настроений могут в конечном итоге достичь. [58]
Точность системы анализа настроений, в принципе, определяется тем, насколько хорошо она согласуется с человеческими суждениями. Обычно это измеряется с помощью вариативных мер, основанных на точности и отзыве по двум целевым категориям негативных и позитивных текстов. Однако, согласно исследованиям, оценщики-люди обычно соглашаются только примерно в 80% [59] случаев (см. Надежность между оценщиками ). Таким образом, программа, которая достигает 70% точности в классификации настроений, работает почти так же хорошо, как люди, хотя такая точность может показаться не впечатляющей. Если бы программа была «правильной» в 100% случаев, люди все равно не согласились бы с ней примерно в 20% случаев, поскольку они так сильно не согласны с любым ответом. [ необходима цитата ]
С другой стороны, компьютерные системы будут делать совсем другие ошибки, чем люди-оценщики, и поэтому цифры не полностью сопоставимы. Например, компьютерная система будет иметь проблемы с отрицаниями, преувеличениями, шутками или сарказмом, с которыми обычно легко справиться человеку-читателю: некоторые ошибки, которые делает компьютерная система, покажутся человеку слишком наивными. В целом, полезность для практических коммерческих задач анализа настроений, как это определено в академических исследованиях, была поставлена под сомнение, в основном потому, что простая одномерная модель настроений от негативных до позитивных дает довольно мало полезной информации для клиента, беспокоящегося о влиянии публичного дискурса, например, на репутацию бренда или корпорации. [60] [61] [62]
Чтобы лучше соответствовать потребностям рынка, оценка анализа настроений перешла к более ориентированным на задачи мерам, сформулированным совместно с представителями PR-агентств и специалистами по исследованию рынка. Например, в наборе данных оценки RepLab внимание уделяется не столько содержанию рассматриваемого текста, сколько влиянию рассматриваемого текста на репутацию бренда . [63] [64] [65]
Поскольку оценка анализа настроений становится все более ориентированной на выполнение задач, для каждой реализации требуется отдельная обучающая модель, чтобы получить более точное представление настроений для заданного набора данных.
Рост социальных медиа, таких как блоги и социальные сети, подогрел интерес к анализу настроений. С распространением обзоров, рейтингов, рекомендаций и других форм онлайн-выражения, онлайн-мнение превратилось в своего рода виртуальную валюту для компаний, стремящихся продвигать свою продукцию, выявлять новые возможности и управлять своей репутацией. Поскольку компании стремятся автоматизировать процесс фильтрации шума, понимания разговоров, выявления соответствующего контента и принятия соответствующих мер, многие теперь обращаются к области анализа настроений. [66] Еще больше усложняет ситуацию рост анонимных платформ социальных медиа, таких как 4chan и Reddit . [67] Если веб 2.0 был посвящен демократизации публикации, то следующий этап веба вполне может быть основан на демократизации добычи данных всего публикуемого контента. [68]
Один шаг к этой цели сделан в исследовании. Несколько исследовательских групп в университетах по всему миру в настоящее время сосредоточены на понимании динамики настроений в электронных сообществах посредством анализа настроений. [69]
Проблема в том, что большинство алгоритмов анализа настроений используют простые термины для выражения настроений по поводу продукта или услуги. Однако культурные факторы, языковые нюансы и различные контексты делают чрезвычайно сложным превращение строки письменного текста в простое выражение «за» или «против». [66] Тот факт, что люди часто не соглашаются с настроением текста, иллюстрирует, насколько сложной задачей для компьютеров является правильное понимание этого. Чем короче строка текста, тем сложнее она становится.
Несмотря на то, что короткие текстовые строки могут быть проблемой, анализ настроений в микроблогах показал, что Twitter можно рассматривать как надежный онлайн-индикатор политических настроений. Политические настроения в твитах демонстрируют близкое соответствие политическим позициям партий и политиков, указывая на то, что содержание сообщений в Twitter правдоподобно отражает политический ландшафт в офлайне. [70] Кроме того, было показано, что анализ настроений в Twitter также отражает общественное настроение, стоящее за циклами воспроизводства человека во всем мире, [71] а также другие проблемы, имеющие отношение к общественному здравоохранению, такие как побочные реакции на лекарства. [72]
Хотя анализ настроений был популярен в областях, где авторы выражают свое мнение довольно явно («фильм потрясающий»), таких как социальные сети и обзоры продуктов, только недавно были разработаны надежные методы для других областей, где настроения в значительной степени неявные или косвенные. Например, в новостных статьях — в основном из-за ожидаемой журналистской объективности — журналисты часто описывают действия или события, а не прямо указывают полярность части информации. Более ранние подходы, использующие словари или поверхностные функции машинного обучения, не могли уловить «смысл между строк», но недавно исследователи предложили подход на основе глубокого обучения и набор данных, который способен анализировать настроения в новостных статьях. [1]
Ученые использовали анализ настроений для анализа твитов о безопасности и охране труда в строительстве (сейчас он называется X). Исследование показало, что существует положительная корреляция между избранными и ретвитами с точки зрения валентности настроений. Другие исследовали влияние YouTube на распространение знаний о безопасности и охране труда в строительстве. Они исследовали, как эмоции влияют на поведение пользователей с точки зрения просмотра и комментирования с помощью семантического анализа. В другом исследовании положительные настроения составили подавляющее число в 85% при обмене знаниями о безопасности и охране труда в строительстве через Instagram. [73]
Для рекомендательной системы анализ настроений оказался ценным методом. Рекомендательная система нацелена на прогнозирование предпочтений целевого пользователя в отношении элемента. Основные рекомендательные системы работают с явным набором данных. Например, совместная фильтрация работает с матрицей рейтинга, а фильтрация на основе контента работает с метаданными элементов.
Во многих социальных сетях или на сайтах электронной коммерции пользователи могут предоставлять текстовые обзоры, комментарии или отзывы к элементам. Эти тексты, созданные пользователями, являются богатым источником мнений пользователей о многочисленных продуктах и элементах. Потенциально для элемента такой текст может раскрывать как связанные характеристики/аспекты элемента, так и настроения пользователей по каждой характеристике. [74] Характеристики/аспекты элемента, описанные в тексте, играют ту же роль, что и метаданные в фильтрации на основе контента , но первые более ценны для рекомендательной системы. Поскольку эти характеристики широко упоминаются пользователями в своих обзорах, их можно рассматривать как наиболее важные характеристики, которые могут существенно повлиять на пользовательский опыт в отношении элемента, в то время как метаданные элемента (обычно предоставляемые производителями, а не потребителями) могут игнорировать характеристики, которые интересуют пользователей. Для разных элементов с общими характеристиками пользователь может давать разные оценки. Кроме того, характеристика одного и того же элемента может получать разные оценки от разных пользователей. Мнение пользователей относительно функций можно рассматривать как многомерную рейтинговую оценку, отражающую их предпочтения в отношении элементов.
На основе характеристик/аспектов и настроений, извлеченных из текста, сгенерированного пользователем, может быть построена гибридная система рекомендаций. [75] Существует два типа мотивации рекомендовать элемент-кандидат пользователю. Первая мотивация заключается в том, что элемент-кандидат имеет многочисленные общие характеристики с предпочтительными элементами пользователя, [76] в то время как вторая мотивация заключается в том, что элемент-кандидат получает высокую оценку своих характеристик. Для предпочтительного элемента разумно полагать, что элементы с такими же характеристиками будут иметь схожую функцию или полезность. Таким образом, эти элементы также, вероятно, будут предпочитаемы пользователем. С другой стороны, для общей характеристики двух элементов-кандидатов другие пользователи могут дать положительную оценку одному из них, давая отрицательную оценку другому. Очевидно, что элемент с высокой оценкой должен быть рекомендован пользователю. На основе этих двух мотиваций можно построить комбинированную оценку ранжирования сходства и рейтинга настроений для каждого элемента-кандидата. [75]
Помимо сложности самого анализа настроений, применение анализа настроений к отзывам или рецензиям также сталкивается с проблемой спама и предвзятых отзывов. Одно из направлений работы сосредоточено на оценке полезности каждого отзыва. [77] Отзыв или рецензия, плохо написанные, вряд ли будут полезны для рекомендательной системы. Кроме того, отзыв может быть разработан так, чтобы препятствовать продажам целевого продукта, и, таким образом, быть вредным для рекомендательной системы, даже если он хорошо написан.
Исследователи также обнаружили, что длинные и короткие формы пользовательского текста следует обрабатывать по-разному. Интересный результат показывает, что короткие обзоры иногда более полезны, чем длинные, [78], потому что в коротком тексте легче отфильтровать шум. Для длинного текста увеличение длины текста не всегда приводит к пропорциональному увеличению количества функций или настроений в тексте.
Ламба и Мадхусудхан [79] представляют зарождающийся способ удовлетворения информационных потребностей современных пользователей библиотек, переупаковывая результаты анализа настроений социальных медиа-платформ, таких как Twitter, и предоставляя их в качестве консолидированной временной услуги в различных форматах. Кроме того, они предлагают новый способ проведения маркетинга в библиотеках с использованием анализа настроений в социальных медиа и анализа настроений.